diff options
author | hjk <hjk@qt.io> | 2024-01-26 15:43:08 +0100 |
---|---|---|
committer | hjk <hjk@qt.io> | 2024-01-29 13:01:39 +0000 |
commit | 524167a9362960e2a535a56b38876c5165b7e96b (patch) | |
tree | 759f75a377c06c5f225a653c8d0a3cca78f57177 /src/plugins/texteditor/findinfiles.cpp | |
parent | 66b50438d8a450518be9bd517bbdf15c8443fffa (diff) |
TextEditor: Use new setup pattern for the finders
The FindInFiles definition cannot go yet to the .cpp yet as there
are some exported functions.
Change-Id: I2d2f02ae80b560e3147f461fcbee0fa62b8085a3
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Diffstat (limited to 'src/plugins/texteditor/findinfiles.cpp')
-rw-r--r-- | src/plugins/texteditor/findinfiles.cpp | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/src/plugins/texteditor/findinfiles.cpp b/src/plugins/texteditor/findinfiles.cpp index 440ae069a7..955316954b 100644 --- a/src/plugins/texteditor/findinfiles.cpp +++ b/src/plugins/texteditor/findinfiles.cpp @@ -23,12 +23,10 @@ using namespace Utils; namespace TextEditor { -static FindInFiles *m_instance = nullptr; static const char HistoryKey[] = "FindInFiles.Directories.History"; FindInFiles::FindInFiles() { - m_instance = this; connect(EditorManager::instance(), &EditorManager::findOnFileSystemRequest, this, &FindInFiles::findOnFileSystem); } @@ -209,18 +207,30 @@ void FindInFiles::setBaseDirectory(const FilePath &directory) m_directory->setBaseDirectory(directory); } +static FindInFiles *s_instance; + +FindInFiles &findInFiles() +{ + return *s_instance; +} + void FindInFiles::findOnFileSystem(const QString &path) { - QTC_ASSERT(m_instance, return); const QFileInfo fi(path); const QString folder = fi.isDir() ? fi.absoluteFilePath() : fi.absolutePath(); - m_instance->setSearchDir(FilePath::fromString(folder)); - Find::openFindDialog(m_instance); + findInFiles().setSearchDir(FilePath::fromString(folder)); + Find::openFindDialog(&findInFiles()); } FindInFiles *FindInFiles::instance() { - return m_instance; + return s_instance; +} + +void Internal::setupFindInFiles(QObject *guard) +{ + s_instance = new FindInFiles; + s_instance->setParent(guard); } } // TextEditor |