CompilationDataBase: Hide plugin class definition in .cpp

Change-Id: Ib6c5f1a10479f8c27cc448c38fb5e3546f1e2239
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
hjk
2024-01-12 13:15:55 +01:00
parent b2bed13655
commit 39fc082472
4 changed files with 53 additions and 61 deletions

View File

@@ -3,15 +3,20 @@ add_qtc_plugin(CompilationDatabaseProjectManager
PLUGIN_DEPENDS Core CppEditor ProjectExplorer TextEditor PLUGIN_DEPENDS Core CppEditor ProjectExplorer TextEditor
SOURCES SOURCES
compilationdatabaseconstants.h compilationdatabaseconstants.h
compilationdatabaseproject.cpp compilationdatabaseproject.h compilationdatabaseproject.cpp
compilationdatabaseprojectmanagerplugin.cpp compilationdatabaseprojectmanagerplugin.h compilationdatabaseproject.h
compilationdatabaseprojectmanagerplugin.cpp
compilationdatabaseprojectmanagertr.h compilationdatabaseprojectmanagertr.h
compilationdatabaseutils.cpp compilationdatabaseutils.h compilationdatabaseutils.cpp
compilationdbparser.cpp compilationdbparser.h compilationdatabaseutils.h
compilationdbparser.cpp
compilationdbparser.h
) )
extend_qtc_plugin(CompilationDatabaseProjectManager extend_qtc_plugin(CompilationDatabaseProjectManager
CONDITION WITH_TESTS CONDITION WITH_TESTS
SOURCES SOURCES
compilationdatabasetests.cpp compilationdatabasetests.h compilationdatabasetests.qrc compilationdatabasetests.cpp
compilationdatabasetests.h
compilationdatabasetests.qrc
) )

View File

@@ -16,7 +16,6 @@ QtcPlugin {
"compilationdatabaseutils.cpp", "compilationdatabaseutils.cpp",
"compilationdatabaseutils.h", "compilationdatabaseutils.h",
"compilationdatabaseprojectmanagerplugin.cpp", "compilationdatabaseprojectmanagerplugin.cpp",
"compilationdatabaseprojectmanagerplugin.h",
"compilationdbparser.cpp", "compilationdbparser.cpp",
"compilationdbparser.h", "compilationdbparser.h",
] ]

View File

@@ -1,8 +1,6 @@
// Copyright (C) 2018 The Qt Company Ltd. // Copyright (C) 2018 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
#include "compilationdatabaseprojectmanagerplugin.h"
#include "compilationdatabaseconstants.h" #include "compilationdatabaseconstants.h"
#include "compilationdatabaseproject.h" #include "compilationdatabaseproject.h"
#include "compilationdatabaseprojectmanagertr.h" #include "compilationdatabaseprojectmanagertr.h"
@@ -12,6 +10,8 @@
#include <coreplugin/actionmanager/actionmanager.h> #include <coreplugin/actionmanager/actionmanager.h>
#include <coreplugin/actionmanager/command.h> #include <coreplugin/actionmanager/command.h>
#include <extensionsystem/iplugin.h>
#include <projectexplorer/projectexplorerconstants.h> #include <projectexplorer/projectexplorerconstants.h>
#include <projectexplorer/projectmanager.h> #include <projectexplorer/projectmanager.h>
#include <projectexplorer/projecttree.h> #include <projectexplorer/projecttree.h>
@@ -37,12 +37,17 @@ public:
QAction changeRootAction{Tr::tr("Change Root Directory")}; QAction changeRootAction{Tr::tr("Change Root Directory")};
}; };
CompilationDatabaseProjectManagerPlugin::~CompilationDatabaseProjectManagerPlugin() class CompilationDatabaseProjectManagerPlugin final : public ExtensionSystem::IPlugin
{
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "CompilationDatabaseProjectManager.json")
~CompilationDatabaseProjectManagerPlugin()
{ {
delete d; delete d;
} }
void CompilationDatabaseProjectManagerPlugin::initialize() void initialize() final
{ {
d = new CompilationDatabaseProjectManagerPluginPrivate; d = new CompilationDatabaseProjectManagerPluginPrivate;
@@ -83,4 +88,9 @@ void CompilationDatabaseProjectManagerPlugin::initialize()
#endif #endif
} }
class CompilationDatabaseProjectManagerPluginPrivate *d = nullptr;
};
} // CompilationDatabaseProjectManager::Internal } // CompilationDatabaseProjectManager::Internal
#include "compilationdatabaseprojectmanagerplugin.moc"

View File

@@ -1,22 +0,0 @@
// Copyright (C) 2018 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
#pragma once
#include <extensionsystem/iplugin.h>
namespace CompilationDatabaseProjectManager::Internal {
class CompilationDatabaseProjectManagerPlugin final : public ExtensionSystem::IPlugin
{
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "CompilationDatabaseProjectManager.json")
~CompilationDatabaseProjectManagerPlugin();
void initialize() final;
class CompilationDatabaseProjectManagerPluginPrivate *d = nullptr;
};
} // CompilationDatabaseProjectManager::Internal