From 214e0bf35b4bb7b55ce7691a397df2878c8ec45d Mon Sep 17 00:00:00 2001 From: con <qtc-committer@nokia.com> Date: Mon, 12 Jul 2010 12:46:50 +0200 Subject: [PATCH] Add a instance() method to the search result window singleton. --- src/plugins/cpptools/cppfindreferences.cpp | 2 +- src/plugins/find/searchresultwindow.cpp | 8 ++++++++ src/plugins/find/searchresultwindow.h | 2 ++ src/plugins/projectexplorer/projectexplorer.cpp | 4 ++-- src/plugins/texteditor/texteditorplugin.cpp | 2 +- 5 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/plugins/cpptools/cppfindreferences.cpp b/src/plugins/cpptools/cppfindreferences.cpp index 194b4ed7909..d785bf1097b 100644 --- a/src/plugins/cpptools/cppfindreferences.cpp +++ b/src/plugins/cpptools/cppfindreferences.cpp @@ -148,7 +148,7 @@ public: CppFindReferences::CppFindReferences(CppTools::CppModelManagerInterface *modelManager) : QObject(modelManager), _modelManager(modelManager), - _resultWindow(ExtensionSystem::PluginManager::instance()->getObject<Find::SearchResultWindow>()) + _resultWindow(Find::SearchResultWindow::instance()) { m_watcher.setPendingResultsLimit(1); connect(&m_watcher, SIGNAL(resultsReadyAt(int,int)), this, SLOT(displayResults(int,int))); diff --git a/src/plugins/find/searchresultwindow.cpp b/src/plugins/find/searchresultwindow.cpp index 45b69f4d753..4ee0eea4bc1 100644 --- a/src/plugins/find/searchresultwindow.cpp +++ b/src/plugins/find/searchresultwindow.cpp @@ -211,8 +211,11 @@ namespace Internal { using namespace Find::Internal; +SearchResultWindow *SearchResultWindow::m_instance = 0; + SearchResultWindow::SearchResultWindow() : d(new SearchResultWindowPrivate) { + m_instance = this; d->m_widget = new QStackedWidget; d->m_widget->setWindowTitle(displayName()); @@ -271,6 +274,11 @@ SearchResultWindow::~SearchResultWindow() delete d; } +SearchResultWindow *SearchResultWindow::instance() +{ + return m_instance; +} + void SearchResultWindow::setTextToReplace(const QString &textToReplace) { d->m_replaceTextEdit->setText(textToReplace); diff --git a/src/plugins/find/searchresultwindow.h b/src/plugins/find/searchresultwindow.h index 47a80c24682..92e58cebbb5 100644 --- a/src/plugins/find/searchresultwindow.h +++ b/src/plugins/find/searchresultwindow.h @@ -82,6 +82,7 @@ public: SearchResultWindow(); virtual ~SearchResultWindow(); + static SearchResultWindow *instance(); QWidget *outputWidget(QWidget *); QList<QWidget*> toolBarWidgets() const; @@ -129,6 +130,7 @@ private: QList<SearchResultItem> checkedItems() const; Internal::SearchResultWindowPrivate *d; + static SearchResultWindow *m_instance; }; } // namespace Find diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index f9142768820..a1f6f8aa8c4 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -318,11 +318,11 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance(); AllProjectsFind *allProjectsFind = new AllProjectsFind(this, - pm->getObject<Find::SearchResultWindow>()); + Find::SearchResultWindow::instance()); addAutoReleasedObject(allProjectsFind); CurrentProjectFind *currentProjectFind = new CurrentProjectFind(this, - pm->getObject<Find::SearchResultWindow>()); + Find::SearchResultWindow::instance()); addAutoReleasedObject(currentProjectFind); addAutoReleasedObject(new LocalApplicationRunControlFactory); diff --git a/src/plugins/texteditor/texteditorplugin.cpp b/src/plugins/texteditor/texteditorplugin.cpp index e314ae3de35..3c68486cac9 100644 --- a/src/plugins/texteditor/texteditorplugin.cpp +++ b/src/plugins/texteditor/texteditorplugin.cpp @@ -157,7 +157,7 @@ void TextEditorPlugin::extensionsInitialized() ExtensionSystem::PluginManager *pluginManager = ExtensionSystem::PluginManager::instance(); - m_searchResultWindow = pluginManager->getObject<Find::SearchResultWindow>(); + m_searchResultWindow = Find::SearchResultWindow::instance(); m_outlineFactory->setWidgetFactories(pluginManager->getObjects<TextEditor::IOutlineWidgetFactory>()); -- GitLab