diff --git a/src/plugins/coreplugin/editormanager/documentmodel.cpp b/src/plugins/coreplugin/editormanager/documentmodel.cpp index f4eb1fef3ad..5de2ef54f71 100644 --- a/src/plugins/coreplugin/editormanager/documentmodel.cpp +++ b/src/plugins/coreplugin/editormanager/documentmodel.cpp @@ -291,6 +291,22 @@ QList DocumentModel::openedDocuments() const return d->m_editors.keys(); } +IDocument *DocumentModel::documentForFilePath(const QString &filePath) const +{ + int index = indexOfFilePath(filePath); + if (index < 0) + return 0; + return d->m_documents.at(index)->document; +} + +QList DocumentModel::editorsForFilePath(const QString &filePath) const +{ + IDocument *document = documentForFilePath(filePath); + if (document) + return editorsForDocument(document); + return QList(); +} + QModelIndex DocumentModel::index(int row, int column, const QModelIndex &parent) const { Q_UNUSED(parent) diff --git a/src/plugins/coreplugin/editormanager/documentmodel.h b/src/plugins/coreplugin/editormanager/documentmodel.h index 929298d16fb..2ec74ff4013 100644 --- a/src/plugins/coreplugin/editormanager/documentmodel.h +++ b/src/plugins/coreplugin/editormanager/documentmodel.h @@ -81,6 +81,8 @@ public: Entry *entryForDocument(IDocument *document) const; QList openedDocuments() const; + IDocument *documentForFilePath(const QString &filePath) const; + QList editorsForFilePath(const QString &filePath) const; QList editorsForDocument(IDocument *document) const; QList editorsForDocuments(const QList &documents) const; QList oneEditorForEachOpenedDocument() const;