summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@digia.com>2013-07-09 11:52:44 +0200
committerEike Ziller <eike.ziller@digia.com>2013-07-12 11:55:59 +0200
commit354cd410b09091c1fe63b96388d49c60639b035f (patch)
tree60e6c89777e6171c025c20b605cd7a605270edec /src/plugins
parent7b1941c792ca67a4760e461baaddb804d5d3993c (diff)
downloadqt-creator-354cd410b09091c1fe63b96388d49c60639b035f.tar.gz
Make document model static and add some document related methods
Change-Id: Ibcb863e67a2433529c9d2b6dec237f9d8b1d8d50 Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/coreplugin/editormanager/documentmodel.cpp5
-rw-r--r--src/plugins/coreplugin/editormanager/documentmodel.h1
-rw-r--r--src/plugins/coreplugin/editormanager/editormanager.cpp83
-rw-r--r--src/plugins/coreplugin/editormanager/editormanager.h5
-rw-r--r--src/plugins/coreplugin/editormanager/editorview.cpp6
-rw-r--r--src/plugins/coreplugin/editormanager/openeditorsview.cpp18
-rw-r--r--src/plugins/coreplugin/editormanager/openeditorswindow.cpp2
-rw-r--r--src/plugins/coreplugin/editortoolbar.cpp10
-rw-r--r--src/plugins/coreplugin/externaltool.cpp6
-rw-r--r--src/plugins/coreplugin/vcsmanager.cpp4
-rw-r--r--src/plugins/cpptools/cpptoolsplugin.cpp4
-rw-r--r--src/plugins/designer/formeditorw.cpp11
-rw-r--r--src/plugins/fakevim/fakevimplugin.cpp9
-rw-r--r--src/plugins/git/gitclient.cpp4
-rw-r--r--src/plugins/git/gitplugin.cpp5
-rw-r--r--src/plugins/locator/filesystemfilter.cpp6
-rw-r--r--src/plugins/locator/opendocumentsfilter.cpp2
-rw-r--r--src/plugins/projectexplorer/projectexplorer.cpp14
-rw-r--r--src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp12
-rw-r--r--src/plugins/qmldesigner/shortcutmanager.cpp2
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp8
-rw-r--r--src/plugins/qt4projectmanager/qt4projectmanager.cpp4
-rw-r--r--src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp4
-rw-r--r--src/plugins/texteditor/findinopenfiles.cpp2
-rw-r--r--src/plugins/vcsbase/vcsbaseplugin.cpp6
25 files changed, 121 insertions, 112 deletions
diff --git a/src/plugins/coreplugin/editormanager/documentmodel.cpp b/src/plugins/coreplugin/editormanager/documentmodel.cpp
index 857d916446..bd911f9737 100644
--- a/src/plugins/coreplugin/editormanager/documentmodel.cpp
+++ b/src/plugins/coreplugin/editormanager/documentmodel.cpp
@@ -278,6 +278,11 @@ int DocumentModel::indexOfDocument(IDocument *document) const
return -1;
}
+QList<IDocument *> DocumentModel::openedDocuments() const
+{
+ return d->m_editors.keys();
+}
+
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 5a8ccb3ab4..6f6789558d 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;
+ QList<IDocument *> openedDocuments() const;
QList<IEditor *> editorsForDocument(IDocument *document) const;
QList<IEditor *> editorsForDocuments(const QList<IDocument *> &documents) const;
diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 5100d7b620..b6742b39cb 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -648,6 +648,11 @@ QList<IEditor *> EditorManager::editorsForDocument(IDocument *document) const
return found;
}
+IDocument *EditorManager::currentDocument()
+{
+ return d->m_currentEditor ? d->m_currentEditor->document() : 0;
+}
+
IEditor *EditorManager::currentEditor()
{
return d->m_currentEditor;
@@ -761,9 +766,9 @@ void EditorManager::closeOtherEditors(IDocument *document)
void EditorManager::closeOtherEditors()
{
- IEditor *current = currentEditor();
+ IDocument *current = currentDocument();
QTC_ASSERT(current, return);
- closeOtherEditors(current->document());
+ closeOtherEditors(current);
}
// SLOT connected to action
@@ -1286,6 +1291,11 @@ Core::IEditor *EditorManager::activateEditor(Core::Internal::EditorView *view, C
return editor;
}
+IEditor *EditorManager::activateEditorForDocument(IDocument *document, OpenEditorFlags flags)
+{
+ return activateEditorForDocument(currentEditorView(), document, flags);
+}
+
Core::IEditor *EditorManager::activateEditorForDocument(Core::Internal::EditorView *view, Core::IDocument *document, OpenEditorFlags flags)
{
Q_ASSERT(view);
@@ -1705,8 +1715,8 @@ bool EditorManager::saveEditor(IEditor *editor)
bool EditorManager::saveDocument(IDocument *documentParam)
{
IDocument *document = documentParam;
- if (!document && currentEditor())
- document = currentEditor()->document();
+ if (!document && currentDocument())
+ document = currentDocument();
if (!document)
return false;
@@ -1784,8 +1794,8 @@ MakeWritableResult EditorManager::makeFileWritable(IDocument *document)
bool EditorManager::saveDocumentAs(IDocument *documentParam)
{
IDocument *document = documentParam;
- if (!document && currentEditor())
- document = currentEditor()->document();
+ if (!document && currentDocument())
+ document = currentDocument();
if (!document)
return false;
@@ -1866,22 +1876,22 @@ void EditorManager::gotoPreviousDocHistory()
void EditorManager::makeCurrentEditorWritable()
{
- if (IEditor* curEditor = currentEditor())
- makeFileWritable(curEditor->document());
+ if (IDocument* doc = currentDocument())
+ makeFileWritable(doc);
}
void EditorManager::vcsOpenCurrentEditor()
{
- IEditor *curEditor = currentEditor();
- if (!curEditor)
+ IDocument *document = currentDocument();
+ if (!document)
return;
- const QString directory = QFileInfo(curEditor->document()->filePath()).absolutePath();
+ const QString directory = QFileInfo(document->filePath()).absolutePath();
IVersionControl *versionControl = ICore::vcsManager()->findVersionControlForDirectory(directory);
if (!versionControl || versionControl->openSupportMode() == IVersionControl::NoOpen)
return;
- if (!versionControl->vcsOpen(curEditor->document()->filePath())) {
+ if (!versionControl->vcsOpen(document->filePath())) {
QMessageBox::warning(ICore::mainWindow(), tr("Cannot Open File"),
tr("Cannot open the file for editing with VCS."));
}
@@ -1895,12 +1905,12 @@ void EditorManager::updateWindowTitle()
windowTitle.prepend(d->m_titleVcsTopic + dashSep);
if (!d->m_titleAddition.isEmpty())
windowTitle.prepend(d->m_titleAddition + dashSep);
- IEditor *curEditor = currentEditor();
- if (curEditor) {
- QString editorName = curEditor->document()->displayName();
+ IDocument *document = currentDocument();
+ if (document) {
+ QString editorName = document->displayName();
if (!editorName.isEmpty())
windowTitle.prepend(editorName + dashSep);
- QString filePath = QFileInfo(curEditor->document()->filePath()).absoluteFilePath();
+ QString filePath = QFileInfo(document->filePath()).absoluteFilePath();
if (!filePath.isEmpty())
ICore::mainWindow()->setWindowFilePath(filePath);
} else {
@@ -1912,11 +1922,10 @@ void EditorManager::updateWindowTitle()
void EditorManager::handleDocumentStateChange()
{
updateActions();
- IDocument *document= qobject_cast<IDocument *>(sender());
+ IDocument *document = qobject_cast<IDocument *>(sender());
if (!document->isModified())
document->removeAutoSaveFile();
- IEditor *currEditor = currentEditor();
- if (currEditor && currEditor->document() == document) {
+ if (currentDocument() == document) {
updateWindowTitle();
emit currentDocumentStateChanged();
}
@@ -1924,15 +1933,16 @@ void EditorManager::handleDocumentStateChange()
void EditorManager::updateMakeWritableWarning()
{
- IEditor *curEditor = currentEditor();
- bool ww = curEditor->document()->isModified() && curEditor->document()->isFileReadOnly();
- if (ww != curEditor->document()->hasWriteWarning()) {
- curEditor->document()->setWriteWarning(ww);
+ IDocument *document = currentDocument();
+ QTC_ASSERT(document, return);
+ bool ww = document->isModified() && document->isFileReadOnly();
+ if (ww != document->hasWriteWarning()) {
+ document->setWriteWarning(ww);
// Do this after setWriteWarning so we don't re-evaluate this part even
// if we do not really show a warning.
bool promptVCS = false;
- const QString directory = QFileInfo(curEditor->document()->filePath()).absolutePath();
+ const QString directory = QFileInfo(document->filePath()).absolutePath();
IVersionControl *versionControl = ICore::vcsManager()->findVersionControlForDirectory(directory);
if (versionControl && versionControl->openSupportMode() != IVersionControl::NoOpen) {
if (versionControl->settingsFlags() & IVersionControl::AutoOpen) {
@@ -1950,15 +1960,15 @@ void EditorManager::updateMakeWritableWarning()
tr("<b>Warning:</b> This file was not opened in %1 yet.")
.arg(versionControl->displayName()));
info.setCustomButtonInfo(tr("Open"), this, SLOT(vcsOpenCurrentEditor()));
- curEditor->document()->infoBar()->addInfo(info);
+ document->infoBar()->addInfo(info);
} else {
InfoBarEntry info(Id(kMakeWritableWarning),
tr("<b>Warning:</b> You are changing a read-only file."));
info.setCustomButtonInfo(tr("Make Writable"), this, SLOT(makeCurrentEditorWritable()));
- curEditor->document()->infoBar()->addInfo(info);
+ document->infoBar()->addInfo(info);
}
} else {
- curEditor->document()->infoBar()->removeInfo(Id(kMakeWritableWarning));
+ document->infoBar()->removeInfo(Id(kMakeWritableWarning));
}
}
}
@@ -1983,8 +1993,7 @@ void EditorManager::setupSaveActions(IDocument *document, QAction *saveAction, Q
void EditorManager::updateActions()
{
- IEditor *curEditor = currentEditor();
- IDocument *curDocument = curEditor ? curEditor->document() : 0;
+ IDocument *curDocument = currentDocument();
int openedCount = d->m_documentModel->documentCount();
if (curDocument) {
@@ -2074,11 +2083,16 @@ QList<IEditor*> EditorManager::openedEditors() const
return d->m_documentModel->oneEditorForEachOpenedDocument();
}
-DocumentModel *EditorManager::documentModel() const
+DocumentModel *EditorManager::documentModel()
{
return d->m_documentModel;
}
+void EditorManager::closeDocuments(const QList<IDocument *> &document, bool askAboutModifiedEditors)
+{
+ m_instance->closeEditors(d->m_documentModel->editorsForDocuments(document), askAboutModifiedEditors);
+}
+
void EditorManager::addCurrentPositionToNavigationHistory(IEditor *editor, const QByteArray &saveState)
{
currentEditorView()->addCurrentPositionToNavigationHistory(editor, saveState);
@@ -2289,8 +2303,7 @@ void EditorManager::readSettings()
void EditorManager::revertToSaved()
{
- IEditor *editor = currentEditor();
- revertToSaved(editor ? editor->document() : 0);
+ revertToSaved(currentDocument());
}
void EditorManager::revertToSaved(Core::IDocument *document)
@@ -2535,9 +2548,9 @@ void EditorManager::updateVariable(const QByteArray &variable)
{
if (VariableManager::instance()->isFileVariable(variable, kCurrentDocumentPrefix)) {
QString value;
- IEditor *curEditor = currentEditor();
- if (curEditor) {
- QString fileName = curEditor->document()->filePath();
+ IDocument *document = currentDocument();
+ if (document) {
+ QString fileName = document->filePath();
if (!fileName.isEmpty())
value = VariableManager::fileVariableValue(variable, kCurrentDocumentPrefix,
fileName);
diff --git a/src/plugins/coreplugin/editormanager/editormanager.h b/src/plugins/coreplugin/editormanager/editormanager.h
index b8a99ae149..4a7f057b38 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.h
+++ b/src/plugins/coreplugin/editormanager/editormanager.h
@@ -126,15 +126,18 @@ public:
QList<IEditor *> editorsForFileName(const QString &filename) const;
QList<IEditor *> editorsForDocument(IDocument *document) const;
+ static IDocument *currentDocument();
static IEditor *currentEditor();
QList<IEditor *> visibleEditors() const;
QList<IEditor*> openedEditors() const;
static void activateEditor(IEditor *editor, OpenEditorFlags flags = 0);
void activateEditorForEntry(DocumentModel::Entry *entry, OpenEditorFlags flags = 0);
+ IEditor *activateEditorForDocument(IDocument *document, OpenEditorFlags flags = 0);
IEditor *activateEditorForDocument(Internal::EditorView *view, IDocument *document, OpenEditorFlags flags = 0);
- DocumentModel *documentModel() const;
+ static DocumentModel *documentModel();
+ static void closeDocuments(const QList<IDocument *> &documents, bool askAboutModifiedEditors = true);
void closeEditor(DocumentModel::Entry *entry);
void closeOtherEditors(IDocument *document);
diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp
index 575cff41c5..7ce07f322d 100644
--- a/src/plugins/coreplugin/editormanager/editorview.cpp
+++ b/src/plugins/coreplugin/editormanager/editorview.cpp
@@ -303,8 +303,8 @@ IEditor *EditorView::currentEditor() const
void EditorView::listSelectionActivated(int index)
{
- DocumentModel *model = EditorManager::instance()->documentModel();
- EditorManager::instance()->activateEditorForEntry(this, model->documentAtRow(index));
+ EditorManager::instance()->activateEditorForEntry(
+ this, EditorManager::documentModel()->documentAtRow(index));
}
void EditorView::splitHorizontally()
@@ -786,7 +786,7 @@ void SplitterOrView::restoreState(const QByteArray &state)
| Core::EditorManager::DoNotChangeCurrentEditor);
if (!e) {
- DocumentModel::Entry *entry = em->documentModel()->firstRestoredDocument();
+ DocumentModel::Entry *entry = EditorManager::documentModel()->firstRestoredDocument();
if (entry)
em->activateEditorForEntry(view(), entry, Core::EditorManager::IgnoreNavigationHistory
| Core::EditorManager::DoNotChangeCurrentEditor);
diff --git a/src/plugins/coreplugin/editormanager/openeditorsview.cpp b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
index b010aa25cd..086ba6d855 100644
--- a/src/plugins/coreplugin/editormanager/openeditorsview.cpp
+++ b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
@@ -96,9 +96,8 @@ OpenEditorsWidget::OpenEditorsWidget()
setTextElideMode(Qt::ElideMiddle);
setFrameStyle(QFrame::NoFrame);
setAttribute(Qt::WA_MacShowFocusRect, false);
- EditorManager *em = EditorManager::instance();
m_model = new ProxyModel(this);
- m_model->setSourceModel(em->documentModel());
+ m_model->setSourceModel(EditorManager::documentModel());
setModel(m_model);
setSelectionMode(QAbstractItemView::SingleSelection);
setSelectionBehavior(QAbstractItemView::SelectRows);
@@ -110,7 +109,7 @@ OpenEditorsWidget::OpenEditorsWidget()
installEventFilter(this);
viewport()->installEventFilter(this);
- connect(em, SIGNAL(currentEditorChanged(Core::IEditor*)),
+ connect(EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
this, SLOT(updateCurrentItem(Core::IEditor*)));
connect(this, SIGNAL(clicked(QModelIndex)),
this, SLOT(handleClicked(QModelIndex)));
@@ -128,8 +127,7 @@ OpenEditorsWidget::~OpenEditorsWidget()
void OpenEditorsWidget::updateCurrentItem(Core::IEditor *editor)
{
IDocument *document = editor ? editor->document() : 0;
- EditorManager *em = EditorManager::instance();
- QModelIndex index = m_model->index(em->documentModel()->indexOfDocument(document), 0);
+ QModelIndex index = m_model->index(EditorManager::documentModel()->indexOfDocument(document), 0);
if (!index.isValid()) {
clearSelection();
return;
@@ -194,14 +192,14 @@ void OpenEditorsWidget::handleClicked(const QModelIndex &index)
void OpenEditorsWidget::activateEditor(const QModelIndex &index)
{
selectionModel()->select(index, QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows);
- EditorManager *em = EditorManager::instance();
- em->activateEditorForEntry(em->documentModel()->documentAtRow(m_model->mapToSource(index).row()));
+ EditorManager::instance()->activateEditorForEntry(
+ EditorManager::documentModel()->documentAtRow(m_model->mapToSource(index).row()));
}
void OpenEditorsWidget::closeEditor(const QModelIndex &index)
{
- EditorManager *em = EditorManager::instance();
- em->closeEditor(em->documentModel()->documentAtRow(m_model->mapToSource(index).row()));
+ EditorManager::instance()->closeEditor(
+ EditorManager::documentModel()->documentAtRow(m_model->mapToSource(index).row()));
// work around selection changes
updateCurrentItem(EditorManager::currentEditor());
}
@@ -210,7 +208,7 @@ void OpenEditorsWidget::contextMenuRequested(QPoint pos)
{
QMenu contextMenu;
QModelIndex editorIndex = indexAt(pos);
- DocumentModel::Entry *entry = EditorManager::instance()->documentModel()->documentAtRow(
+ DocumentModel::Entry *entry = EditorManager::documentModel()->documentAtRow(
m_model->mapToSource(editorIndex).row());
EditorManager::instance()->addSaveAndCloseEditorActions(&contextMenu, entry);
contextMenu.addSeparator();
diff --git a/src/plugins/coreplugin/editormanager/openeditorswindow.cpp b/src/plugins/coreplugin/editormanager/openeditorswindow.cpp
index eb361925c9..cdd88cc29d 100644
--- a/src/plugins/coreplugin/editormanager/openeditorswindow.cpp
+++ b/src/plugins/coreplugin/editormanager/openeditorswindow.cpp
@@ -229,7 +229,7 @@ void OpenEditorsWindow::selectEditor(QTreeWidgetItem *item)
} else {
if (!EditorManager::openEditor(
item->toolTip(0), item->data(0, Qt::UserRole+2).value<Core::Id>())) {
- EditorManager::instance()->documentModel()->removeDocument(item->toolTip(0));
+ EditorManager::documentModel()->removeDocument(item->toolTip(0));
delete item;
}
}
diff --git a/src/plugins/coreplugin/editortoolbar.cpp b/src/plugins/coreplugin/editortoolbar.cpp
index 601023fdf2..b7e0e9b8ab 100644
--- a/src/plugins/coreplugin/editortoolbar.cpp
+++ b/src/plugins/coreplugin/editortoolbar.cpp
@@ -115,7 +115,7 @@ EditorToolBar::EditorToolBar(QWidget *parent) :
d->m_lockButton->setAutoRaise(true);
d->m_lockButton->setEnabled(false);
- d->m_editorsListModel = EditorManager::instance()->documentModel();
+ d->m_editorsListModel = EditorManager::documentModel();
connect(d->m_goBackAction, SIGNAL(triggered()), this, SIGNAL(goBackClicked()));
connect(d->m_goForwardAction, SIGNAL(triggered()), this, SIGNAL(goForwardClicked()));
@@ -315,8 +315,8 @@ void EditorToolBar::changeActiveEditor(int row)
void EditorToolBar::listContextMenu(QPoint pos)
{
- DocumentModel::Entry *entry = EditorManager::instance()
- ->documentModel()->documentAtRow(d->m_editorList->currentIndex());
+ DocumentModel::Entry *entry = EditorManager::documentModel()->documentAtRow(
+ d->m_editorList->currentIndex());
QString fileName = entry ? entry->fileName() : QString();
if (fileName.isEmpty())
return;
@@ -333,8 +333,8 @@ void EditorToolBar::listContextMenu(QPoint pos)
void EditorToolBar::makeEditorWritable()
{
- if (IEditor *current = EditorManager::currentEditor())
- EditorManager::instance()->makeFileWritable(current->document());
+ if (IDocument *current = EditorManager::currentDocument())
+ EditorManager::instance()->makeFileWritable(current);
}
void EditorToolBar::setCanGoBack(bool canGoBack)
diff --git a/src/plugins/coreplugin/externaltool.cpp b/src/plugins/coreplugin/externaltool.cpp
index 3a7643be5c..1128326755 100644
--- a/src/plugins/coreplugin/externaltool.cpp
+++ b/src/plugins/coreplugin/externaltool.cpp
@@ -590,10 +590,10 @@ void ExternalToolRunner::run()
return;
}
if (m_tool->modifiesCurrentDocument()) {
- if (IEditor *editor = EditorManager::currentEditor()) {
- m_expectedFileName = editor->document()->filePath();
+ if (IDocument *document = EditorManager::currentDocument()) {
+ m_expectedFileName = document->filePath();
bool cancelled = false;
- DocumentManager::saveModifiedDocuments(QList<IDocument *>() << editor->document(), &cancelled);
+ DocumentManager::saveModifiedDocuments(QList<IDocument *>() << document, &cancelled);
if (cancelled) {
deleteLater();
return;
diff --git a/src/plugins/coreplugin/vcsmanager.cpp b/src/plugins/coreplugin/vcsmanager.cpp
index 734100c95c..00a5334d8a 100644
--- a/src/plugins/coreplugin/vcsmanager.cpp
+++ b/src/plugins/coreplugin/vcsmanager.cpp
@@ -279,9 +279,7 @@ IVersionControl* VcsManager::findVersionControlForDirectory(const QString &input
const bool isVcsConfigured = versionControl->isConfigured();
if (!isVcsConfigured || d->m_unconfiguredVcs) {
Id vcsWarning("VcsNotConfiguredWarning");
- IDocument *curDocument = 0;
- if (IEditor *curEditor = EditorManager::currentEditor())
- curDocument = curEditor->document();
+ IDocument *curDocument = EditorManager::currentDocument();
if (isVcsConfigured) {
if (curDocument && d->m_unconfiguredVcs == versionControl) {
curDocument->infoBar()->removeInfo(vcsWarning);
diff --git a/src/plugins/cpptools/cpptoolsplugin.cpp b/src/plugins/cpptools/cpptoolsplugin.cpp
index 87f170c675..343ff6c95f 100644
--- a/src/plugins/cpptools/cpptoolsplugin.cpp
+++ b/src/plugins/cpptools/cpptoolsplugin.cpp
@@ -154,7 +154,7 @@ ExtensionSystem::IPlugin::ShutdownFlag CppToolsPlugin::aboutToShutdown()
void CppToolsPlugin::switchHeaderSource()
{
QString otherFile = correspondingHeaderOrSource(
- Core::EditorManager::currentEditor()->document()->filePath());
+ Core::EditorManager::currentDocument()->filePath());
if (!otherFile.isEmpty())
Core::EditorManager::openEditor(otherFile);
}
@@ -162,7 +162,7 @@ void CppToolsPlugin::switchHeaderSource()
void CppToolsPlugin::switchHeaderSourceInNextSplit()
{
QString otherFile = correspondingHeaderOrSource(
- Core::EditorManager::currentEditor()->document()->filePath());
+ Core::EditorManager::currentDocument()->filePath());
if (!otherFile.isEmpty())
Core::EditorManager::openEditor(otherFile, Core::Id(), Core::EditorManager::OpenInOtherSplit);
}
diff --git a/src/plugins/designer/formeditorw.cpp b/src/plugins/designer/formeditorw.cpp
index 4feb623576..27c90a10b1 100644
--- a/src/plugins/designer/formeditorw.cpp
+++ b/src/plugins/designer/formeditorw.cpp
@@ -864,12 +864,11 @@ void FormEditorW::print()
// Find out current existing editor file
static QString currentFile()
{
- if (Core::IEditor *editor = Core::EditorManager::currentEditor())
- if (const Core::IDocument *document = editor->document()) {
- const QString fileName = document->filePath();
- if (!fileName.isEmpty() && QFileInfo(fileName).isFile())
- return fileName;
- }
+ if (const Core::IDocument *document = Core::EditorManager::currentDocument()) {
+ const QString fileName = document->filePath();
+ if (!fileName.isEmpty() && QFileInfo(fileName).isFile())
+ return fileName;
+ }
return QString();
}
diff --git a/src/plugins/fakevim/fakevimplugin.cpp b/src/plugins/fakevim/fakevimplugin.cpp
index f3187d03ac..445f5a170a 100644
--- a/src/plugins/fakevim/fakevimplugin.cpp
+++ b/src/plugins/fakevim/fakevimplugin.cpp
@@ -1997,23 +1997,20 @@ void FakeVimPluginPrivate::highlightMatches(const QString &needle)
int FakeVimPluginPrivate::currentFile() const
{
- DocumentModel *model = EditorManager::instance()->documentModel();
IEditor *editor = EditorManager::currentEditor();
if (!editor)
return -1;
- return model->indexOfDocument(editor->document());
+ return EditorManager::documentModel()->indexOfDocument(editor->document());
}
void FakeVimPluginPrivate::switchToFile(int n)
{
- EditorManager *editorManager = ICore::editorManager();
- DocumentModel *model = editorManager->documentModel();
- int size = model->documentCount();
+ int size = EditorManager::documentModel()->documentCount();
QTC_ASSERT(size, return);
n = n % size;
if (n < 0)
n += size;
- editorManager->activateEditorForEntry(model->documents().at(n));
+ EditorManager::instance()->activateEditorForEntry(EditorManager::documentModel()->documents().at(n));
}
ExCommandMap &FakeVimExCommandsPage::exCommandMap()
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp
index f92397bbb3..ce0f851226 100644
--- a/src/plugins/git/gitclient.cpp
+++ b/src/plugins/git/gitclient.cpp
@@ -782,8 +782,8 @@ static inline QString msgParseFilesFailed()
static inline QString currentDocumentPath()
{
- if (Core::IEditor *editor = Core::EditorManager::currentEditor())
- return QFileInfo(editor->document()->filePath()).path();
+ if (Core::IDocument *document= Core::EditorManager::currentDocument())
+ return QFileInfo(document->filePath()).path();
return QString();
}
diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp
index 4828566a2e..3166313ca8 100644
--- a/src/plugins/git/gitplugin.cpp
+++ b/src/plugins/git/gitplugin.cpp
@@ -993,10 +993,7 @@ void GitPlugin::updateVersionWarning()
unsigned version = m_gitClient->gitVersion();
if (!version || version >= minimumRequiredVersion)
return;
- Core::IEditor *curEditor = Core::EditorManager::currentEditor();
- if (!curEditor)
- return;
- Core::IDocument *curDocument = curEditor->document();
+ Core::IDocument *curDocument = Core::EditorManager::currentDocument();
if (!curDocument)
return;
Core::InfoBar *infoBar = curDocument->infoBar();
diff --git a/src/plugins/locator/filesystemfilter.cpp b/src/plugins/locator/filesystemfilter.cpp
index 7e34602abb..88cbf36719 100644
--- a/src/plugins/locator/filesystemfilter.cpp
+++ b/src/plugins/locator/filesystemfilter.cpp
@@ -58,9 +58,9 @@ QList<FilterEntry> FileSystemFilter::matchesFor(QFutureInterface<Locator::Filter
if (filePath.startsWith(QLatin1String("~/"))) {
directory.replace(0, 1, QDir::homePath());
} else {
- IEditor *editor = EditorManager::currentEditor();
- if (editor && !editor->document()->filePath().isEmpty()) {
- QFileInfo info(editor->document()->filePath());
+ IDocument *document= EditorManager::currentDocument();
+ if (document && !document->filePath().isEmpty()) {
+ QFileInfo info(document->filePath());
directory.prepend(info.absolutePath() + QLatin1Char('/'));
}
}
diff --git a/src/plugins/locator/opendocumentsfilter.cpp b/src/plugins/locator/opendocumentsfilter.cpp
index b5429bcf7f..c7d78b912e 100644
--- a/src/plugins/locator/opendocumentsfilter.cpp
+++ b/src/plugins/locator/opendocumentsfilter.cpp
@@ -87,7 +87,7 @@ QList<FilterEntry> OpenDocumentsFilter::matchesFor(QFutureInterface<Locator::Fil
void OpenDocumentsFilter::refreshInternally()
{
m_editors.clear();
- foreach (DocumentModel::Entry *e, EditorManager::instance()->documentModel()->documents()) {
+ foreach (DocumentModel::Entry *e, EditorManager::documentModel()->documents()) {
DocumentModel::Entry entry;
// create copy with only the information relevant to use
// to avoid model deleting entries behind our back
diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index 3719651508..0199c20c11 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -1020,12 +1020,10 @@ void ProjectExplorerPlugin::loadAction()
// for your special convenience, we preselect a pro file if it is
// the current file
- if (Core::IEditor *editor = Core::EditorManager::currentEditor()) {
- if (const Core::IDocument *document= editor->document()) {
- const QString fn = document->filePath();
- const bool isProject = d->m_profileMimeTypes.contains(document->mimeType());
- dir = isProject ? fn : QFileInfo(fn).absolutePath();
- }
+ if (const Core::IDocument *document = Core::EditorManager::currentDocument()) {
+ const QString fn = document->filePath();
+ const bool isProject = d->m_profileMimeTypes.contains(document->mimeType());
+ dir = isProject ? fn : QFileInfo(fn).absolutePath();
}
QString filename = QFileDialog::getOpenFileName(0, tr("Load Project"),
@@ -1827,8 +1825,8 @@ void ProjectExplorerPlugin::setCurrent(Project *project, QString filePath, Node
}
d->m_currentProject = project;
- if (!node && Core::EditorManager::currentEditor()) {
- connect(Core::EditorManager::currentEditor()->document(), SIGNAL(changed()),
+ if (!node && Core::EditorManager::currentDocument()) {
+ connect(Core::EditorManager::currentDocument(), SIGNAL(changed()),
this, SLOT(updateExternalFileWarning()), Qt::UniqueConnection);
}
if (projectChanged || d->m_currentNode != node) {
diff --git a/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp b/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp
index f6ceb1fde4..87fe72b6a7 100644
--- a/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp
+++ b/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp
@@ -225,8 +225,8 @@ void QbsProjectManagerPlugin::updateBuildActions()
QString file;
- if (Core::IEditor *currentEditor = Core::EditorManager::currentEditor()) {
- file = currentEditor->document()->filePath();
+ if (Core::IDocument *currentDocument= Core::EditorManager::currentDocument()) {
+ file = currentDocument->filePath();
ProjectExplorer::SessionManager *session = m_projectExplorer->session();
ProjectExplorer::Node *node = session->nodeForFile(file);
ProjectExplorer::Project *project
@@ -296,8 +296,8 @@ void QbsProjectManagerPlugin::buildFile()
{
QString file;
QbsProject *project = 0;
- if (Core::IEditor *currentEditor = Core::EditorManager::currentEditor()) {
- file = currentEditor->document()->filePath();
+ if (Core::IDocument *currentDocument= Core::EditorManager::currentDocument()) {
+ file = currentDocument->filePath();
project = qobject_cast<QbsProject *>(m_projectExplorer->session()->projectForFile(file));
}
@@ -319,8 +319,8 @@ void QbsProjectManagerPlugin::buildProduct()
{
QbsProject *project = 0;
QbsProductNode *product = 0;
- if (Core::IEditor *currentEditor = Core::EditorManager::currentEditor()) {
- const QString file = currentEditor->document()->filePath();
+ if (Core::IDocument *currentDocument= Core::EditorManager::currentDocument()) {
+ const QString file = currentDocument->filePath();
ProjectExplorer::SessionManager *session = m_projectExplorer->session();
project = qobject_cast<QbsProject *>(session->projectForFile(file));
diff --git a/src/plugins/qmldesigner/shortcutmanager.cpp b/src/plugins/qmldesigner/shortcutmanager.cpp
index 518eba261c..9d5650f43b 100644
--- a/src/plugins/qmldesigner/shortcutmanager.cpp
+++ b/src/plugins/qmldesigner/shortcutmanager.cpp
@@ -172,7 +172,7 @@ void ShortCutManager::registerActions(const Core::Context &qmlDesignerMainContex
void ShortCutManager::updateActions(Core::IEditor* currentEditor)
{
- int openedCount = Core::ICore::editorManager()->documentModel()->documentCount();
+ int openedCount = Core::EditorManager::documentModel()->documentCount();
m_saveAction.setEnabled(currentEditor != 0 && currentEditor->document()->isModified());
m_saveAsAction.setEnabled(currentEditor != 0 && currentEditor->document()->isSaveAsAllowed());
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
index 10b5a2e1e9..6f93cdd79d 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
@@ -281,14 +281,14 @@ void QmlProjectRunConfiguration::updateEnabled()
{
bool qmlFileFound = false;
if (mainScriptSource() == FileInEditor) {
- Core::IEditor *editor = Core::EditorManager::currentEditor();
+ Core::IDocument *document= Core::EditorManager::currentDocument();
Core::MimeDatabase *db = ICore::mimeDatabase();
- if (editor) {
- m_currentFileFilename = editor->document()->filePath();
+ if (document) {
+ m_currentFileFilename = document->filePath();
if (db->findByFile(mainScript()).type() == QLatin1String("application/x-qml"))
qmlFileFound = true;
}
- if (!editor
+ if (!document
|| db->findByFile(mainScript()).type() == QLatin1String("application/x-qmlproject")) {
// find a qml file with lowercase filename. This is slow, but only done
// in initialization/other border cases.
diff --git a/src/plugins/qt4projectmanager/qt4projectmanager.cpp b/src/plugins/qt4projectmanager/qt4projectmanager.cpp
index 012db055df..f0f7d2620c 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanager.cpp
+++ b/src/plugins/qt4projectmanager/qt4projectmanager.cpp
@@ -326,8 +326,8 @@ void Qt4Manager::buildFileContextMenu()
void Qt4Manager::buildFile()
{
- if (Core::IEditor *currentEditor = Core::EditorManager::currentEditor()) {
- QString file = currentEditor->document()->filePath();
+ if (Core::IDocument *currentDocument= Core::EditorManager::currentDocument()) {
+ QString file = currentDocument->filePath();
ProjectExplorer::SessionManager *session = projectExplorer()->session();
ProjectExplorer::FileNode *node = qobject_cast<FileNode *>(session->nodeForFile(file));
ProjectExplorer::Project *project = session->projectForFile(file);
diff --git a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp
index de08c39edc..1a52c99677 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp
+++ b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp
@@ -416,8 +416,8 @@ void Qt4ProjectManagerPlugin::updateBuildFileAction()
bool enabled = false;
QString file;
- if (Core::IEditor *currentEditor = Core::EditorManager::currentEditor()) {
- file = currentEditor->document()->filePath();
+ if (Core::IDocument *currentDocument= Core::EditorManager::currentDocument()) {
+ file = currentDocument->filePath();
ProjectExplorer::SessionManager *session = m_projectExplorer->session();
ProjectExplorer::Node *node = session->nodeForFile(file);
ProjectExplorer::Project *project = session->projectForFile(file);
diff --git a/src/plugins/texteditor/findinopenfiles.cpp b/src/plugins/texteditor/findinopenfiles.cpp
index 3e3a7f7952..cf5b318ec9 100644
--- a/src/plugins/texteditor/findinopenfiles.cpp
+++ b/src/plugins/texteditor/findinopenfiles.cpp
@@ -68,7 +68,7 @@ Utils::FileIterator *FindInOpenFiles::files(const QStringList &nameFilters,
QStringList fileNames;
QList<QTextCodec *> codecs;
foreach (Core::DocumentModel::Entry *entry,
- Core::EditorManager::instance()->documentModel()->documents()) {
+ Core::EditorManager::documentModel()->documents()) {
QString fileName = entry->fileName();
if (!fileName.isEmpty()) {
fileNames.append(fileName);
diff --git a/src/plugins/vcsbase/vcsbaseplugin.cpp b/src/plugins/vcsbase/vcsbaseplugin.cpp
index 409a9941c4..442df7946b 100644
--- a/src/plugins/vcsbase/vcsbaseplugin.cpp
+++ b/src/plugins/vcsbase/vcsbaseplugin.cpp
@@ -233,11 +233,11 @@ void StateListener::slotStateChanged()
// temporary path prefix or does the file contains a hash, indicating a project
// folder?
State state;
- Core::IEditor *currentEditor = Core::EditorManager::currentEditor();
- if (!currentEditor || !currentEditor->document())
+ Core::IDocument *currentDocument = Core::EditorManager::currentDocument();
+ if (!currentDocument)
state.currentFile.clear();
else
- state.currentFile = currentEditor->document()->filePath();
+ state.currentFile = currentDocument->filePath();
QScopedPointer<QFileInfo> currentFileInfo; // Instantiate QFileInfo only once if required.
if (!state.currentFile.isEmpty()) {
const bool isTempFile = state.currentFile.startsWith(QDir::tempPath());