Exemplo n.º 1
0
bool TextEditor::closeDocument()
{
    if (document()->isModified()) {
        if (Filename.isEmpty()) {
            int Return;
            setDocumentTitle(Shared::Untitled + QString::number(documentNumber));

            QMessageBox MessageBox;
            MessageBox.setText(Shared::SaveChangesToDocument.arg(documentTitle()));
            MessageBox.setInformativeText(Shared::YourChangesWillBeLost);
            MessageBox.setWindowTitle(" ");
            MessageBox.setIconPixmap(QPixmap(":/Icons/Resources/Icons/48x48/TextpadEditor.png"));
            MessageBox.setStandardButtons(QMessageBox::Discard | QMessageBox::Cancel | QMessageBox::Save);
            Return = MessageBox.exec();

            if (Return == QMessageBox::Cancel) {
                return false;
            } else if (Return == QMessageBox::Save) {
                return Save();
            } else {
                return true;
            }
        } else {
            int Return;
            setDocumentTitle(Shared::Untitled + QString::number(documentNumber));

            QMessageBox MessageBox;
            MessageBox.setText(Shared::SaveChangesToDocument.arg(documentTitle()));
            MessageBox.setInformativeText(Shared::YourChangesWillBeLost);
            MessageBox.setWindowTitle(" ");
            MessageBox.setIconPixmap(QPixmap(":/Icons/Resources/Icons/48x48/TextpadEditor.png"));
            MessageBox.setStandardButtons(QMessageBox::Discard | QMessageBox::Cancel | QMessageBox::Save);
            Return = MessageBox.exec();

            if (Return == QMessageBox::Cancel) {
                return false;
            } else if (Return == QMessageBox::Save) {
                return Save();
            } else {
                return true;
            }
        }
    } else {
        return true;
    }
}
Exemplo n.º 2
0
bool TextEditor::MaybeSave() {
    if (document()->isModified()) {
        if (Filename.isEmpty()) {
            int Return;
            setDocumentTitle(Shared::Untitled + QString::number(documentNumber));

            QMessageBox MessageBox;
            MessageBox.setText(Shared::SaveChangesToDocument.arg(documentTitle()));
            MessageBox.setInformativeText(Shared::YourChangesWillBeLost);
            MessageBox.setWindowTitle(" ");
            MessageBox.setIconPixmap(QPixmap(":/Icons/Resources/Icons/48x48/TextpadEditor.png"));
            MessageBox.setStandardButtons(QMessageBox::Discard | QMessageBox::Cancel | QMessageBox::Save);
            Return = MessageBox.exec();

            if      (Return == QMessageBox::Cancel)  return false;
            else if (Return == QMessageBox::Save)    return Save();
        }

        else
            if (toPlainText().isEmpty()) {
                int Return;

                QMessageBox MessageBox;
                MessageBox.setText(Shared::AreYouSure);
                MessageBox.setInformativeText(Shared::YouErasedAllContent);
                MessageBox.setWindowTitle(" ");
                MessageBox.setIconPixmap(QPixmap(":/Icons/Resources/Icons/48x48/TextpadEditor.png"));
                MessageBox.setStandardButtons(QMessageBox::Discard | QMessageBox::Cancel | QMessageBox::Save);
                MessageBox.setWindowFlags(Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint);
                Return = MessageBox.exec();

                if (Return == QMessageBox::Cancel)
                    return false;
                if (Return == QMessageBox::Discard)
                    return true;
            }

            else
                return Save();
    }
    return true;
}
int QPlainTextEdit::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QAbstractScrollArea::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 25)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 25;
    }
#ifndef QT_NO_PROPERTIES
    else if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0:
            *reinterpret_cast< bool*>(_v) = tabChangesFocus();
            break;
        case 1:
            *reinterpret_cast< QString*>(_v) = documentTitle();
            break;
        case 2:
            *reinterpret_cast< bool*>(_v) = isUndoRedoEnabled();
            break;
        case 3:
            *reinterpret_cast< LineWrapMode*>(_v) = lineWrapMode();
            break;
        case 4:
            *reinterpret_cast< bool*>(_v) = isReadOnly();
            break;
        case 5:
            *reinterpret_cast< QString*>(_v) = toPlainText();
            break;
        case 6:
            *reinterpret_cast< bool*>(_v) = overwriteMode();
            break;
        case 7:
            *reinterpret_cast< int*>(_v) = tabStopWidth();
            break;
        case 8:
            *reinterpret_cast< int*>(_v) = cursorWidth();
            break;
        case 9:
            *reinterpret_cast< Qt::TextInteractionFlags*>(_v) = textInteractionFlags();
            break;
        case 10:
            *reinterpret_cast< int*>(_v) = blockCount();
            break;
        case 11:
            *reinterpret_cast< int*>(_v) = maximumBlockCount();
            break;
        case 12:
            *reinterpret_cast< bool*>(_v) = backgroundVisible();
            break;
        case 13:
            *reinterpret_cast< bool*>(_v) = centerOnScroll();
            break;
        }
        _id -= 14;
    } else if (_c == QMetaObject::WriteProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0:
            setTabChangesFocus(*reinterpret_cast< bool*>(_v));
            break;
        case 1:
            setDocumentTitle(*reinterpret_cast< QString*>(_v));
            break;
        case 2:
            setUndoRedoEnabled(*reinterpret_cast< bool*>(_v));
            break;
        case 3:
            setLineWrapMode(*reinterpret_cast< LineWrapMode*>(_v));
            break;
        case 4:
            setReadOnly(*reinterpret_cast< bool*>(_v));
            break;
        case 5:
            setPlainText(*reinterpret_cast< QString*>(_v));
            break;
        case 6:
            setOverwriteMode(*reinterpret_cast< bool*>(_v));
            break;
        case 7:
            setTabStopWidth(*reinterpret_cast< int*>(_v));
            break;
        case 8:
            setCursorWidth(*reinterpret_cast< int*>(_v));
            break;
        case 9:
            setTextInteractionFlags(*reinterpret_cast< Qt::TextInteractionFlags*>(_v));
            break;
        case 11:
            setMaximumBlockCount(*reinterpret_cast< int*>(_v));
            break;
        case 12:
            setBackgroundVisible(*reinterpret_cast< bool*>(_v));
            break;
        case 13:
            setCenterOnScroll(*reinterpret_cast< bool*>(_v));
            break;
        }
        _id -= 14;
    } else if (_c == QMetaObject::ResetProperty) {
        _id -= 14;
    } else if (_c == QMetaObject::QueryPropertyDesignable) {
        _id -= 14;
    } else if (_c == QMetaObject::QueryPropertyScriptable) {
        _id -= 14;
    } else if (_c == QMetaObject::QueryPropertyStored) {
        _id -= 14;
    } else if (_c == QMetaObject::QueryPropertyEditable) {
        _id -= 14;
    } else if (_c == QMetaObject::QueryPropertyUser) {
        _id -= 14;
    }
#endif // QT_NO_PROPERTIES
    return _id;
}