diff --git a/src/plugins/android/androidmanifesteditor.cpp b/src/plugins/android/androidmanifesteditor.cpp index 4b5b340bb19052f60600d5f6aa218328cc5313c7..5f1bc1e8a3993beae4473735e562edeff72378e4 100644 --- a/src/plugins/android/androidmanifesteditor.cpp +++ b/src/plugins/android/androidmanifesteditor.cpp @@ -73,11 +73,6 @@ Core::Id AndroidManifestEditor::id() const return Constants::ANDROID_MANIFEST_EDITOR_ID; } -bool AndroidManifestEditor::isTemporary() const -{ - return false; -} - void AndroidManifestEditor::changeEditorPage(QAction *action) { AndroidManifestEditorWidget *editorWidget = static_cast<AndroidManifestEditorWidget *>(widget()); diff --git a/src/plugins/android/androidmanifesteditor.h b/src/plugins/android/androidmanifesteditor.h index b6073d9005b2c37a2b27f86809d4efbf6b263272..a51acefe1bef7d0fc95da613e2cb869c3074e41d 100644 --- a/src/plugins/android/androidmanifesteditor.h +++ b/src/plugins/android/androidmanifesteditor.h @@ -51,7 +51,6 @@ public: explicit AndroidManifestEditor(AndroidManifestEditorWidget *editorWidget); Core::Id id() const; - bool isTemporary() const; private slots: void changeEditorPage(QAction *action); diff --git a/src/plugins/bineditor/bineditor.cpp b/src/plugins/bineditor/bineditor.cpp index 25b12f0cc6e99e35ebe968e6efa7ae964aafedb2..516c9db178be13860d70fb7a9a60564b4f2de473 100644 --- a/src/plugins/bineditor/bineditor.cpp +++ b/src/plugins/bineditor/bineditor.cpp @@ -1623,11 +1623,6 @@ void BinEditorWidget::asIntegers(int offset, int count, quint64 &bigEndianValue, } } -bool BinEditorWidget::isMemoryView() const -{ - return editor()->property("MemoryView").toBool(); -} - void BinEditorWidget::setMarkup(const QList<Markup> &markup) { m_markup = markup; diff --git a/src/plugins/bineditor/bineditor.h b/src/plugins/bineditor/bineditor.h index 81b4b330453f435cafbad7209351dd910c9ab5a6..d02402da612b1adf92c96c71eec1372b8016497f 100644 --- a/src/plugins/bineditor/bineditor.h +++ b/src/plugins/bineditor/bineditor.h @@ -119,8 +119,6 @@ public: QString addressString(quint64 address); - bool isMemoryView() const; // Is a debugger memory view without file? - static const int SearchStride = 1024 * 1024; QList<Markup> markup() const { return m_markup; } diff --git a/src/plugins/bineditor/bineditorplugin.cpp b/src/plugins/bineditor/bineditorplugin.cpp index 7308c99c709094507fc1b1833e5f3c2383f54a14..251655ba7a1b6cb3f2bc6024a9a190dc641941cf 100644 --- a/src/plugins/bineditor/bineditorplugin.cpp +++ b/src/plugins/bineditor/bineditorplugin.cpp @@ -270,11 +270,12 @@ public: QString suggestedFileName() const { return QString(); } - bool isModified() const { return m_widget->isMemoryView() ? false : m_widget->isModified(); } + bool isModified() const { return isTemporary()/*e.g. memory view*/ ? false + : m_widget->isModified(); } bool isFileReadOnly() const { const QString fn = filePath(); - if (m_widget->isMemoryView() || fn.isEmpty()) + if (fn.isEmpty()) return false; const QFileInfo fi(fn); return !fi.isWritable(); @@ -355,8 +356,6 @@ public: QWidget *toolBar() { return m_toolBar; } - bool isTemporary() const { return m_widget->isMemoryView(); } - private slots: void updateCursorPosition(int position) { m_addressEdit->setText(QString::number(m_widget->baseAddress() + position, 16)); diff --git a/src/plugins/cmakeprojectmanager/cmakeeditor.h b/src/plugins/cmakeprojectmanager/cmakeeditor.h index 3a27b9b1cd094dd0f6f4ca8781e78c3c213e1eab..529251645846a73fef2aa70e7a8650d88968c824 100644 --- a/src/plugins/cmakeprojectmanager/cmakeeditor.h +++ b/src/plugins/cmakeprojectmanager/cmakeeditor.h @@ -58,7 +58,6 @@ public: bool duplicateSupported() const { return true; } Core::IEditor *duplicate(QWidget *parent); Core::Id id() const; - bool isTemporary() const { return false; } private slots: void markAsChanged(); diff --git a/src/plugins/coreplugin/documentmanager.cpp b/src/plugins/coreplugin/documentmanager.cpp index 1c1a6a859c0930464c805810df34d9d67ebf8b54..a90ab6c250c2a81545fb0b69a7409757ba8651c2 100644 --- a/src/plugins/coreplugin/documentmanager.cpp +++ b/src/plugins/coreplugin/documentmanager.cpp @@ -1035,7 +1035,7 @@ void DocumentManager::syncWithEditor(const QList<Core::IContext *> &context) return; Core::IEditor *editor = Core::EditorManager::currentEditor(); - if (!editor || editor->isTemporary()) + if (!editor || editor->document()->isTemporary()) return; foreach (IContext *c, context) { if (editor->widget() == c->widget()) { diff --git a/src/plugins/coreplugin/editormanager/documentmodel.cpp b/src/plugins/coreplugin/editormanager/documentmodel.cpp index bd911f973722cfc2b3faae4f3e1e01b69b95e68f..f4191105fd0039fdd13038e69f871b03c5a5529e 100644 --- a/src/plugins/coreplugin/editormanager/documentmodel.cpp +++ b/src/plugins/coreplugin/editormanager/documentmodel.cpp @@ -278,6 +278,14 @@ int DocumentModel::indexOfDocument(IDocument *document) const return -1; } +DocumentModel::Entry *DocumentModel::entryForDocument(IDocument *document) const +{ + int index = indexOfDocument(document); + if (index < 0) + return 0; + return d->m_documents.at(index); +} + QList<IDocument *> DocumentModel::openedDocuments() const { return d->m_editors.keys(); diff --git a/src/plugins/coreplugin/editormanager/documentmodel.h b/src/plugins/coreplugin/editormanager/documentmodel.h index 6f6789558d776d701c407b57d1cbc4451d6ae001..e2e5c309c63171d3317119b5ed8149e354eca7bd 100644 --- a/src/plugins/coreplugin/editormanager/documentmodel.h +++ b/src/plugins/coreplugin/editormanager/documentmodel.h @@ -77,6 +77,7 @@ public: int documentCount() const; QList<Entry *> documents() const; int indexOfDocument(IDocument *document) const; + Entry *entryForDocument(IDocument *document) const; QList<IDocument *> openedDocuments() const; QList<IEditor *> editorsForDocument(IDocument *document) const; diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp index b6742b39cb1aac8662ebf350cb87f154d6ce696a..3db507faf2388942cb6171945e168e9ff5feeae7 100644 --- a/src/plugins/coreplugin/editormanager/editormanager.cpp +++ b/src/plugins/coreplugin/editormanager/editormanager.cpp @@ -1104,7 +1104,7 @@ bool EditorManager::closeEditors(const QList<IEditor*> &editorsToClose, bool ask foreach (IEditor *editor, acceptedEditors) { emit editorAboutToClose(editor); if (!editor->document()->filePath().isEmpty() - && !editor->isTemporary()) { + && !editor->document()->isTemporary()) { QByteArray state = editor->saveState(); if (!state.isEmpty()) d->m_editorStates.insert(editor->document()->filePath(), QVariant(state)); @@ -1421,7 +1421,7 @@ void EditorManager::addEditor(IEditor *editor) bool isNewDocument = false; d->m_documentModel->addEditor(editor, &isNewDocument); if (isNewDocument) { - const bool isTemporary = editor->isTemporary(); + const bool isTemporary = editor->document()->isTemporary(); const bool addWatcher = !isTemporary; DocumentManager::addDocument(editor->document(), addWatcher); if (!isTemporary) @@ -1834,18 +1834,12 @@ bool EditorManager::saveDocumentAs(IDocument *documentParam) /* Adds the file name to the recent files if there is at least one non-temporary editor for it */ void EditorManager::addDocumentToRecentFiles(IDocument *document) { - bool isTemporary = true; - Id editorId; - QList<IEditor *> editors = editorsForDocument(document); - foreach (IEditor *editor, editors) { - if (!editor->isTemporary()) { - editorId = editor->id(); - isTemporary = false; - break; - } - } - if (!isTemporary) - DocumentManager::addToRecentFiles(document->filePath(), editorId); + if (document->isTemporary()) + return; + DocumentModel::Entry *entry = d->m_documentModel->entryForDocument(document); + if (!entry) + return; + DocumentManager::addToRecentFiles(document->filePath(), entry->id()); } void EditorManager::gotoNextDocHistory() @@ -2164,7 +2158,7 @@ QByteArray EditorManager::saveState() const QList<IEditor *> editors = openedEditors(); foreach (IEditor *editor, editors) { if (!editor->document()->filePath().isEmpty() - && !editor->isTemporary()) { + && !editor->document()->isTemporary()) { QByteArray state = editor->saveState(); if (!state.isEmpty()) d->m_editorStates.insert(editor->document()->filePath(), QVariant(state)); @@ -2176,22 +2170,15 @@ QByteArray EditorManager::saveState() const QList<DocumentModel::Entry *> entries = d->m_documentModel->documents(); int entriesCount = 0; foreach (DocumentModel::Entry *entry, entries) { - // TODO: isTemporary should move to IDocument - IEditor *editor = entry->document - ? d->m_documentModel->editorsForDocument(entry->document).first() - : 0; // The editor may be 0 if it was not loaded yet: In that case it is not temporary - if (!editor || !editor->isTemporary()) + if (!entry->document || !entry->document->isTemporary()) ++entriesCount; } stream << entriesCount; foreach (DocumentModel::Entry *entry, entries) { - IEditor *editor = entry->document - ? d->m_documentModel->editorsForDocument(entry->document).first() - : 0; - if (!editor || !editor->isTemporary()) + if (!entry->document || !entry->document->isTemporary()) stream << entry->fileName() << entry->displayName() << entry->id(); } diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp index 7ce07f322d562293933b4a426aa8a4a249e98512..f7d6f7c22e24b0db34651c7398b633f1c6d6c669 100644 --- a/src/plugins/coreplugin/editormanager/editorview.cpp +++ b/src/plugins/coreplugin/editormanager/editorview.cpp @@ -737,11 +737,11 @@ QByteArray SplitterOrView::saveState() const IEditor* e = editor(); // don't save state of temporary or ad-hoc editors - if (e && (e->isTemporary() || e->document()->filePath().isEmpty())) { + if (e && (e->document()->isTemporary() || e->document()->filePath().isEmpty())) { // look for another editor that is more suited e = 0; foreach (IEditor *otherEditor, editors()) { - if (!otherEditor->isTemporary() && !otherEditor->document()->filePath().isEmpty()) { + if (!otherEditor->document()->isTemporary() && !otherEditor->document()->filePath().isEmpty()) { e = otherEditor; break; } diff --git a/src/plugins/coreplugin/editormanager/ieditor.h b/src/plugins/coreplugin/editormanager/ieditor.h index 529a141f27a29111e4e4cb25715e949b6ee7bc15..ca36b092ba1b6b47b2b4a907a69d06e471c4b577 100644 --- a/src/plugins/coreplugin/editormanager/ieditor.h +++ b/src/plugins/coreplugin/editormanager/ieditor.h @@ -62,8 +62,6 @@ public: virtual int currentColumn() const { return 0; } virtual void gotoLine(int line, int column = 0) { Q_UNUSED(line) Q_UNUSED(column) } - virtual bool isTemporary() const = 0; - virtual QWidget *toolBar() = 0; virtual bool isDesignModePreferred() const { return false; } diff --git a/src/plugins/coreplugin/idocument.cpp b/src/plugins/coreplugin/idocument.cpp index 8bb8f26c08006d96782bafafc4de1ac000faa3c4..9b4ce965b71446bd978be4f5a6b3cc3d65acc445 100644 --- a/src/plugins/coreplugin/idocument.cpp +++ b/src/plugins/coreplugin/idocument.cpp @@ -43,7 +43,11 @@ namespace Core { -IDocument::IDocument(QObject *parent) : QObject(parent), m_infoBar(0), m_hasWriteWarning(false), m_restored(false) +IDocument::IDocument(QObject *parent) : QObject(parent), + m_temporary(false), + m_infoBar(0), + m_hasWriteWarning(false), + m_restored(false) { } @@ -78,6 +82,25 @@ bool IDocument::isFileReadOnly() const return !QFileInfo(filePath()).isWritable(); } +/*! + Returns if the document is a temporary that should for example not be considered + when saving/restoring the session state, recent files, etc. Defaults to false. + \sa setTemporary() +*/ +bool IDocument::isTemporary() const +{ + return m_temporary; +} + +/*! + Sets if the document is \a temporary. + \sa isTemporary() +*/ +void IDocument::setTemporary(bool temporary) +{ + m_temporary = temporary; +} + bool IDocument::autoSave(QString *errorString, const QString &fileName) { if (!save(errorString, fileName, true)) diff --git a/src/plugins/coreplugin/idocument.h b/src/plugins/coreplugin/idocument.h index 76f095a60db2221d2c1cbe5b5d8f62106f838baa..d257626a17c1e69028f636cb03601c768fd3092c 100644 --- a/src/plugins/coreplugin/idocument.h +++ b/src/plugins/coreplugin/idocument.h @@ -88,6 +88,8 @@ public: void setDisplayName(const QString &name); virtual bool isFileReadOnly() const; + bool isTemporary() const; + void setTemporary(bool temporary); virtual QString defaultPath() const = 0; virtual QString suggestedFileName() const = 0; @@ -122,6 +124,7 @@ signals: private: QString m_filePath; QString m_displayName; + bool m_temporary; QString m_autoSaveName; InfoBar *m_infoBar; bool m_hasWriteWarning; diff --git a/src/plugins/cppeditor/cppeditor.h b/src/plugins/cppeditor/cppeditor.h index 341d4fc87252ab645dd59c6ab836f4e0ec4af8de..0a91678e09bc6c4d67566aab68b885b1fe498e64 100644 --- a/src/plugins/cppeditor/cppeditor.h +++ b/src/plugins/cppeditor/cppeditor.h @@ -79,7 +79,6 @@ public: Core::IEditor *duplicate(QWidget *parent); Core::Id id() const; - bool isTemporary() const { return false; } bool open(QString *errorString, const QString &fileName, const QString &realFileName); const Utils::CommentDefinition *commentDefinition() const; diff --git a/src/plugins/debugger/debuggerinternalconstants.h b/src/plugins/debugger/debuggerinternalconstants.h index 98118808b787788fc4728185dfccaf85225df0f5..b5ed7da1b758912b6ba740ad59e760b26ec5ab09 100644 --- a/src/plugins/debugger/debuggerinternalconstants.h +++ b/src/plugins/debugger/debuggerinternalconstants.h @@ -46,7 +46,6 @@ namespace Internal { const char OPENED_BY_DEBUGGER[] = "OpenedByDebugger"; const char OPENED_WITH_DISASSEMBLY[] = "DisassemblerView"; -const char OPENED_WITH_MEMORY[] = "MemoryView"; // Debug action const char DEBUG[] = "Debugger.Debug"; diff --git a/src/plugins/debugger/memoryagent.cpp b/src/plugins/debugger/memoryagent.cpp index 735e9bc29f9372125a388e33271cba8f3535e26b..84f952d3ae61efbb172d6225d49079cd5edca0cc 100644 --- a/src/plugins/debugger/memoryagent.cpp +++ b/src/plugins/debugger/memoryagent.cpp @@ -182,7 +182,7 @@ bool MemoryAgent::doCreateBinEditor(quint64 addr, unsigned flags, if (!editor) return false; editor->document()->setProperty(Constants::OPENED_BY_DEBUGGER, QVariant(true)); - editor->document()->setProperty(Constants::OPENED_WITH_MEMORY, QVariant(true)); + editor->document()->setTemporary(true); QWidget *editorBinEditor = editor->widget(); connectBinEditorWidget(editorBinEditor); MemoryView::setBinEditorReadOnly(editorBinEditor, readOnly); diff --git a/src/plugins/designer/formwindoweditor.cpp b/src/plugins/designer/formwindoweditor.cpp index b7de0a3c06cc1ea98dac8b0cfae9eb680561ef46..834c7a2a801e65d86025b35a8e17e9ea3284ef67 100644 --- a/src/plugins/designer/formwindoweditor.cpp +++ b/src/plugins/designer/formwindoweditor.cpp @@ -206,11 +206,6 @@ bool FormWindowEditor::restoreState(const QByteArray &state) return d->m_textEditor.restoreState(state); } -bool FormWindowEditor::isTemporary() const -{ - return false; -} - QWidget *FormWindowEditor::toolBar() { return 0; diff --git a/src/plugins/designer/formwindoweditor.h b/src/plugins/designer/formwindoweditor.h index 94eef91280d2f7d2af820b39d3f7fa715d732398..3cba63b2c33b834da9c5d6356a2cb052ddcc9c39 100644 --- a/src/plugins/designer/formwindoweditor.h +++ b/src/plugins/designer/formwindoweditor.h @@ -75,8 +75,6 @@ public: virtual QByteArray saveState() const; virtual bool restoreState(const QByteArray &state); - virtual bool isTemporary() const; - virtual QWidget *toolBar(); virtual bool isDesignModePreferred() const; diff --git a/src/plugins/diffeditor/diffeditor.h b/src/plugins/diffeditor/diffeditor.h index 5a33e151fe111aaabcbe09867e9e6ba5ce71341f..c8f49444077b803dafacaab8713dee9fc355d316 100644 --- a/src/plugins/diffeditor/diffeditor.h +++ b/src/plugins/diffeditor/diffeditor.h @@ -64,7 +64,6 @@ public: bool open(QString *errorString, const QString &fileName, const QString &realFileName); Core::IDocument *document(); Core::Id id() const; - bool isTemporary() const { return true; } DiffEditorWidget *editorWidget() const { return m_editorWidget; } QWidget *toolBar(); diff --git a/src/plugins/diffeditor/diffeditorfile.cpp b/src/plugins/diffeditor/diffeditorfile.cpp index deeb4cd81e569d0547e88b28c2150882d23b8603..7a52f708426eb79a595dba892f55cafffa29386b 100644 --- a/src/plugins/diffeditor/diffeditorfile.cpp +++ b/src/plugins/diffeditor/diffeditorfile.cpp @@ -43,6 +43,7 @@ DiffEditorFile::DiffEditorFile(const QString &mimeType, QObject *parent) : m_modified(false) { setDisplayName(QCoreApplication::translate("DiffEditor", Constants::DIFF_EDITOR_DISPLAY_NAME)); + setTemporary(true); } void DiffEditorFile::setModified(bool modified) diff --git a/src/plugins/diffeditor/diffeditorwidget.cpp b/src/plugins/diffeditor/diffeditorwidget.cpp index 1c80c97881623824e35e182d2844564e8a4c298d..8b3b098dcbe2dfaf4393960bd9d82f90afe7acea 100644 --- a/src/plugins/diffeditor/diffeditorwidget.cpp +++ b/src/plugins/diffeditor/diffeditorwidget.cpp @@ -113,7 +113,6 @@ public: } Core::Id id() const { return "DiffViewEditor"; } - bool isTemporary() const { return false; } private slots: void slotTooltipRequested(TextEditor::ITextEditor *editor, const QPoint &globalPoint, int position); diff --git a/src/plugins/diffeditor/diffshoweditor.cpp b/src/plugins/diffeditor/diffshoweditor.cpp index 310acf03b7d0f623eb2970055421a0e5127529b9..2198874daac4a25fa08a61f2351e61cd4160e503 100644 --- a/src/plugins/diffeditor/diffshoweditor.cpp +++ b/src/plugins/diffeditor/diffshoweditor.cpp @@ -54,7 +54,6 @@ public: DiffShowEditorWidgetEditable(BaseTextEditorWidget *editorWidget) : BaseTextEditor(editorWidget) {} Core::Id id() const { return "DiffShowViewEditor"; } - bool isTemporary() const { return false; } }; class DiffShowEditorWidget : public BaseTextEditorWidget diff --git a/src/plugins/genericprojectmanager/genericprojectfileseditor.h b/src/plugins/genericprojectmanager/genericprojectfileseditor.h index a2fa73a4d7afc5038ea54fb3eda0e5f183605104..e5fedd2b16a06f582d8c6bfa8deb32524b7b7a7c 100644 --- a/src/plugins/genericprojectmanager/genericprojectfileseditor.h +++ b/src/plugins/genericprojectmanager/genericprojectfileseditor.h @@ -75,7 +75,6 @@ public: Core::Id id() const; bool duplicateSupported() const; Core::IEditor *duplicate(QWidget *parent); - bool isTemporary() const { return false; } }; class ProjectFilesEditorWidget : public TextEditor::BaseTextEditorWidget diff --git a/src/plugins/glsleditor/glsleditoreditable.h b/src/plugins/glsleditor/glsleditoreditable.h index 3e6ce0a5292cc04efe0c94b1b7a9172fb3a06634..9b8ecd64546a2fe510e89d93f292dff89abdfb1f 100644 --- a/src/plugins/glsleditor/glsleditoreditable.h +++ b/src/plugins/glsleditor/glsleditoreditable.h @@ -47,7 +47,6 @@ public: bool duplicateSupported() const { return true; } Core::IEditor *duplicate(QWidget *parent); Core::Id id() const; - bool isTemporary() const { return false; } bool open(QString *errorString, const QString &fileName, const QString &realFileName); }; diff --git a/src/plugins/imageviewer/imageviewer.cpp b/src/plugins/imageviewer/imageviewer.cpp index 0bc59e5b1ed2cda47baab2f9943fc9a35d9d7cc9..3604c1195a686268ab8b491dcf337ead22445857 100644 --- a/src/plugins/imageviewer/imageviewer.cpp +++ b/src/plugins/imageviewer/imageviewer.cpp @@ -148,11 +148,6 @@ Core::Id ImageViewer::id() const return Core::Id(Constants::IMAGEVIEWER_ID); } -bool ImageViewer::isTemporary() const -{ - return false; -} - QWidget *ImageViewer::toolBar() { return d->toolbar; diff --git a/src/plugins/imageviewer/imageviewer.h b/src/plugins/imageviewer/imageviewer.h index 1ae2e4c4e6244d923200249f778a4056c127aa3c..4ad5cbc853596bc1d74354ce91a2966315027ec9 100644 --- a/src/plugins/imageviewer/imageviewer.h +++ b/src/plugins/imageviewer/imageviewer.h @@ -58,7 +58,6 @@ public: bool open(QString *errorString, const QString &fileName, const QString &realFileName); Core::IDocument *document(); Core::Id id() const; - bool isTemporary() const; QWidget *toolBar(); public slots: diff --git a/src/plugins/pythoneditor/pythoneditor.h b/src/plugins/pythoneditor/pythoneditor.h index 435fb08560d0ea7cd60f8510f48baaa73095fd0b..f7bf8e33b4c3f354429769d9dbd7948cad0e0403 100644 --- a/src/plugins/pythoneditor/pythoneditor.h +++ b/src/plugins/pythoneditor/pythoneditor.h @@ -49,7 +49,6 @@ public: Core::IEditor *duplicate(QWidget *parent); Core::Id id() const; - bool isTemporary() const { return false; } /** Opens file for editing, actual work performed by base class diff --git a/src/plugins/qmljseditor/qmljseditoreditable.h b/src/plugins/qmljseditor/qmljseditoreditable.h index 7490e871778d4457bacfc8f28b18467ad1f43f45..4ba470319ff14945aa679d24596600abf22a7d7e 100644 --- a/src/plugins/qmljseditor/qmljseditoreditable.h +++ b/src/plugins/qmljseditor/qmljseditoreditable.h @@ -47,7 +47,6 @@ public: bool duplicateSupported() const { return true; } Core::IEditor *duplicate(QWidget *parent); Core::Id id() const; - bool isTemporary() const { return false; } bool open(QString *errorString, const QString &fileName, const QString &realFileName); bool isDesignModePreferred() const; void setTextCodec(QTextCodec *codec, TextCodecReason = TextCodecOtherReason); diff --git a/src/plugins/qnx/bardescriptoreditor.cpp b/src/plugins/qnx/bardescriptoreditor.cpp index 524ebd051a42a42253b506241adff671fa0233cc..df9d195d28337f907bf3e96ef88b1133f02f13b2 100644 --- a/src/plugins/qnx/bardescriptoreditor.cpp +++ b/src/plugins/qnx/bardescriptoreditor.cpp @@ -104,11 +104,6 @@ Core::Id BarDescriptorEditor::id() const return Constants::QNX_BAR_DESCRIPTOR_EDITOR_ID; } -bool BarDescriptorEditor::isTemporary() const -{ - return false; -} - QWidget *BarDescriptorEditor::toolBar() { return m_toolBar; diff --git a/src/plugins/qnx/bardescriptoreditor.h b/src/plugins/qnx/bardescriptoreditor.h index 6da0419c5fe5e43e959f6e1c00c5f2b79ce41670..707cf5540cf23aab62fb1288001d20074d4c9cb1 100644 --- a/src/plugins/qnx/bardescriptoreditor.h +++ b/src/plugins/qnx/bardescriptoreditor.h @@ -67,7 +67,6 @@ public: bool open(QString *errorString, const QString &fileName, const QString &realFileName); Core::IDocument *document(); Core::Id id() const; - bool isTemporary() const; QWidget *toolBar(); EditorPage activePage() const; diff --git a/src/plugins/qt4projectmanager/profileeditor.h b/src/plugins/qt4projectmanager/profileeditor.h index d9e4b7b839cf49d840a9218ddba92289d0308bcc..fc0a15f564ca6f52fea74508217243d4b4f57e90 100644 --- a/src/plugins/qt4projectmanager/profileeditor.h +++ b/src/plugins/qt4projectmanager/profileeditor.h @@ -55,7 +55,6 @@ public: bool duplicateSupported() const { return true; } Core::IEditor *duplicate(QWidget *parent); Core::Id id() const; - bool isTemporary() const { return false; } }; class ProFileEditorWidget : public TextEditor::BaseTextEditorWidget diff --git a/src/plugins/resourceeditor/resourceeditorw.h b/src/plugins/resourceeditor/resourceeditorw.h index e76f1d938abb275b8a48905896b8f654d1063bbc..5a3e222005950eec34d4c26a0c04b18b24d45ea7 100644 --- a/src/plugins/resourceeditor/resourceeditorw.h +++ b/src/plugins/resourceeditor/resourceeditorw.h @@ -92,7 +92,6 @@ public: QWidget *toolBar(); void setSuggestedFileName(const QString &fileName); - bool isTemporary() const { return false; } private slots: void onUndoStackChanged(bool canUndo, bool canRedo); diff --git a/src/plugins/texteditor/plaintexteditor.h b/src/plugins/texteditor/plaintexteditor.h index 624708f878e9840df88ac45821dc63b1bcf4beb2..05f2be6fcb06a97d01cb12adb4a3efd75ab9f6f1 100644 --- a/src/plugins/texteditor/plaintexteditor.h +++ b/src/plugins/texteditor/plaintexteditor.h @@ -51,7 +51,6 @@ public: bool duplicateSupported() const { return true; } Core::IEditor *duplicate(QWidget *parent); - bool isTemporary() const { return false; } Core::Id id() const; }; diff --git a/src/plugins/texteditor/snippets/snippeteditor.h b/src/plugins/texteditor/snippets/snippeteditor.h index 043e81ba698ee0a8b31418ce96f28861c794098e..6e4e49f1ceae702ffdeedce2aafc885e1a9740ba 100644 --- a/src/plugins/texteditor/snippets/snippeteditor.h +++ b/src/plugins/texteditor/snippets/snippeteditor.h @@ -50,7 +50,6 @@ public: bool duplicateSupported() const { return false; } Core::IEditor *duplicate(QWidget * /* parent */ ) { return 0; } - bool isTemporary() const { return false; } Core::Id id() const; }; diff --git a/src/plugins/vcsbase/submiteditorfile.cpp b/src/plugins/vcsbase/submiteditorfile.cpp index f4f43966d0ef2899aeaf5e8b585db4d7fcbae3db..1b45212b71345999d1e2ac303a4621042dee4b43 100644 --- a/src/plugins/vcsbase/submiteditorfile.cpp +++ b/src/plugins/vcsbase/submiteditorfile.cpp @@ -44,6 +44,7 @@ SubmitEditorFile::SubmitEditorFile(const QString &mimeType, QObject *parent) : m_mimeType(mimeType), m_modified(false) { + setTemporary(true); } void SubmitEditorFile::setModified(bool modified) diff --git a/src/plugins/vcsbase/vcsbaseeditor.cpp b/src/plugins/vcsbase/vcsbaseeditor.cpp index 680eb485c6ff28b91b41e54d5bda0a5155e29b90..0d3f2d28290b46ac33eca8ba62095ac531ddc2ee 100644 --- a/src/plugins/vcsbase/vcsbaseeditor.cpp +++ b/src/plugins/vcsbase/vcsbaseeditor.cpp @@ -151,23 +151,18 @@ public: Core::Id id() const { return m_id; } - bool isTemporary() const { return m_temporary; } - void setTemporary(bool t) { m_temporary = t; } - signals: void describeRequested(const QString &source, const QString &change); void annotateRevisionRequested(const QString &source, const QString &change, int line); private: Core::Id m_id; - bool m_temporary; }; VcsBaseEditor::VcsBaseEditor(VcsBaseEditorWidget *widget, const VcsBaseEditorParameters *type) : BaseTextEditor(widget), - m_id(type->id), - m_temporary(false) + m_id(type->id) { setContext(Core::Context(type->context, TextEditor::Constants::C_TEXTEDITOR)); } @@ -725,7 +720,7 @@ void VcsBaseEditorWidget::setForceReadOnly(bool b) VcsBaseEditor *eda = qobject_cast<VcsBaseEditor *>(editor()); QTC_ASSERT(eda != 0, return); setReadOnly(b); - eda->setTemporary(b); + eda->document()->setTemporary(b); } QString VcsBaseEditorWidget::source() const diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.h b/src/plugins/vcsbase/vcsbasesubmiteditor.h index 0752bc0cbcf16ea21188c5aa330b71527061f50a..273586ad1c20e0dcb70fe03700d7364aa29759c8 100644 --- a/src/plugins/vcsbase/vcsbasesubmiteditor.h +++ b/src/plugins/vcsbase/vcsbasesubmiteditor.h @@ -115,7 +115,6 @@ public: bool open(QString *errorString, const QString &fileName, const QString &realFileName); Core::IDocument *document(); Core::Id id() const; - bool isTemporary() const { return true; } QWidget *toolBar();