From d876123ff71977aed63598e487b150f9fecb2218 Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 12 Jan 2024 18:32:05 +0100 Subject: [PATCH] Cvs: Move plugin class definition to .cpp Change-Id: Icb1e3644498c3e3acd26d88e87425f040132687a Reviewed-by: Jarek Kobus --- src/plugins/cvs/CMakeLists.txt | 14 +++++--- src/plugins/cvs/cvs.qbs | 1 - src/plugins/cvs/cvsplugin.cpp | 66 +++++++++++++++++++++++----------- src/plugins/cvs/cvsplugin.h | 28 --------------- 4 files changed, 54 insertions(+), 55 deletions(-) delete mode 100644 src/plugins/cvs/cvsplugin.h diff --git a/src/plugins/cvs/CMakeLists.txt b/src/plugins/cvs/CMakeLists.txt index 7a21e0c85d0..c6a5c04424e 100644 --- a/src/plugins/cvs/CMakeLists.txt +++ b/src/plugins/cvs/CMakeLists.txt @@ -2,10 +2,14 @@ add_qtc_plugin(CVS PLUGIN_CLASS CvsPlugin PLUGIN_DEPENDS Core TextEditor VcsBase SOURCES - cvseditor.cpp cvseditor.h - cvsplugin.cpp cvsplugin.h - cvssettings.cpp cvssettings.h - cvssubmiteditor.cpp cvssubmiteditor.h + cvseditor.cpp + cvseditor.h + cvsplugin.cpp + cvssettings.cpp + cvssettings.h + cvssubmiteditor.cpp + cvssubmiteditor.h cvstr.h - cvsutils.cpp cvsutils.h + cvsutils.cpp + cvsutils.h ) diff --git a/src/plugins/cvs/cvs.qbs b/src/plugins/cvs/cvs.qbs index a8e53712d98..47194ebafe1 100644 --- a/src/plugins/cvs/cvs.qbs +++ b/src/plugins/cvs/cvs.qbs @@ -14,7 +14,6 @@ QtcPlugin { "cvseditor.cpp", "cvseditor.h", "cvsplugin.cpp", - "cvsplugin.h", "cvssettings.cpp", "cvssettings.h", "cvssubmiteditor.cpp", diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp index aae9acd1e86..94d2ebae195 100644 --- a/src/plugins/cvs/cvsplugin.cpp +++ b/src/plugins/cvs/cvsplugin.cpp @@ -1,8 +1,6 @@ // Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 -#include "cvsplugin.h" - #include "cvseditor.h" #include "cvssettings.h" #include "cvssubmiteditor.h" @@ -34,6 +32,8 @@ #include #include +#include + #include #include #include @@ -460,27 +460,12 @@ void CvsPluginPrivate::cleanCommitMessageFile() m_commitRepository.clear(); } } + bool CvsPluginPrivate::isCommitEditorOpen() const { return !m_commitMessageFileName.isEmpty(); } -CvsPlugin::~CvsPlugin() -{ - delete dd; - dd = nullptr; -} - -void CvsPlugin::initialize() -{ - dd = new CvsPluginPrivate; -} - -void CvsPlugin::extensionsInitialized() -{ - dd->extensionsInitialized(); -} - CvsPluginPrivate::CvsPluginPrivate() : VcsBasePluginPrivate(Context(CVS_CONTEXT)) { @@ -1408,7 +1393,18 @@ bool CvsPluginPrivate::checkCVSDirectory(const QDir &directory) const } #ifdef WITH_TESTS -void CvsPlugin::testDiffFileResolving_data() + +class CvsTest final : public QObject +{ + Q_OBJECT + +private slots: + void testDiffFileResolving_data(); + void testDiffFileResolving(); + void testLogResolving(); +}; + +void CvsTest::testDiffFileResolving_data() { QTest::addColumn("header"); QTest::addColumn("fileName"); @@ -1422,12 +1418,12 @@ void CvsPlugin::testDiffFileResolving_data() << QByteArray("src/plugins/cvs/cvseditor.cpp"); } -void CvsPlugin::testDiffFileResolving() +void CvsTest::testDiffFileResolving() { VcsBaseEditorWidget::testDiffFileResolving(dd->diffEditorFactory); } -void CvsPlugin::testLogResolving() +void CvsTest::testLogResolving() { QByteArray data( "RCS file: /sources/cvs/ccvs/Attic/FIXED-BUGS,v\n" @@ -1454,4 +1450,32 @@ void CvsPlugin::testLogResolving() } #endif +class CvsPlugin final : public ExtensionSystem::IPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "CVS.json") + + ~CvsPlugin() final + { + delete dd; + dd = nullptr; + } + + void initialize() final + { + dd = new CvsPluginPrivate; + + #ifdef WITH_TESTS + addTest(); + #endif + } + + void extensionsInitialized() final + { + dd->extensionsInitialized(); + } +}; + } // namespace Cvs::Internal + +#include "cvsplugin.moc" diff --git a/src/plugins/cvs/cvsplugin.h b/src/plugins/cvs/cvsplugin.h deleted file mode 100644 index 1826475ebbc..00000000000 --- a/src/plugins/cvs/cvsplugin.h +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 - -#pragma once - -#include - -namespace Cvs::Internal { - -class CvsPlugin final : public ExtensionSystem::IPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "CVS.json") - - ~CvsPlugin() final; - - void initialize() final; - void extensionsInitialized() final; - -#ifdef WITH_TESTS -private slots: - void testDiffFileResolving_data(); - void testDiffFileResolving(); - void testLogResolving(); -#endif -}; - -} // namespace Cvs::Internal