diff --git a/src/plugins/coreplugin/idocument.cpp b/src/plugins/coreplugin/idocument.cpp index 1ed0804b1df430be9650d0e957d408bdbc63b8f2..4764802d74c6728efe11630528f9e5112ee912a6 100644 --- a/src/plugins/coreplugin/idocument.cpp +++ b/src/plugins/coreplugin/idocument.cpp @@ -150,6 +150,15 @@ IDocument::OpenResult IDocument::open(QString *errorString, const QString &fileN return OpenResult::CannotHandle; } +/*! + * Returns the current contents of the document. The base implementation returns an empty + * QByteArray. + */ +QByteArray IDocument::contents() const +{ + return QByteArray(); +} + /*! Used for example by EditorManager::openEditorWithContents() to set the contents of this document. diff --git a/src/plugins/coreplugin/idocument.h b/src/plugins/coreplugin/idocument.h index d173a6b0bb2c4717e739ae136e84afe063d1c77c..a2d250250fdb7b6aa2c64704debfd3472996abcf 100644 --- a/src/plugins/coreplugin/idocument.h +++ b/src/plugins/coreplugin/idocument.h @@ -95,6 +95,8 @@ public: virtual OpenResult open(QString *errorString, const QString &fileName, const QString &realFileName); virtual bool save(QString *errorString, const QString &fileName = QString(), bool autoSave = false) = 0; + + virtual QByteArray contents() const; virtual bool setContents(const QByteArray &contents); const Utils::FileName &filePath() const; @@ -133,7 +135,12 @@ public: InfoBar *infoBar(); signals: + // For meta data changes: file name, modified state, ... void changed(); + + // For changes in the contents of the document + void contentsChanged(); + void mimeTypeChanged(); void aboutToReload();