From 87b040d852e1ddf7ac40087e91a6d12e8c482370 Mon Sep 17 00:00:00 2001 From: hjk Date: Wed, 17 Jan 2024 08:10:19 +0100 Subject: [PATCH] SerialTerminal: Hide plugin class in .cpp Change-Id: I9d1a179a9de4f0e95fe60b62b91743c540534246 Reviewed-by: Jarek Kobus --- src/plugins/serialterminal/CMakeLists.txt | 2 +- src/plugins/serialterminal/serialterminal.qbs | 1 - .../serialterminal/serialterminalplugin.cpp | 68 ++++++++++++------- .../serialterminal/serialterminalplugin.h | 35 ---------- 4 files changed, 43 insertions(+), 63 deletions(-) delete mode 100644 src/plugins/serialterminal/serialterminalplugin.h diff --git a/src/plugins/serialterminal/CMakeLists.txt b/src/plugins/serialterminal/CMakeLists.txt index 31dccffe00d..dca43f1ccc6 100644 --- a/src/plugins/serialterminal/CMakeLists.txt +++ b/src/plugins/serialterminal/CMakeLists.txt @@ -8,7 +8,7 @@ add_qtc_plugin(SerialTerminal serialdevicemodel.cpp serialdevicemodel.h serialoutputpane.cpp serialoutputpane.h serialterminalconstants.h - serialterminalplugin.cpp serialterminalplugin.h + serialterminalplugin.cpp serialterminalsettings.cpp serialterminalsettings.h serialterminaltr.h ) diff --git a/src/plugins/serialterminal/serialterminal.qbs b/src/plugins/serialterminal/serialterminal.qbs index 0ee7f414a91..50350dcf55e 100644 --- a/src/plugins/serialterminal/serialterminal.qbs +++ b/src/plugins/serialterminal/serialterminal.qbs @@ -20,7 +20,6 @@ QtcPlugin { "serialoutputpane.h", "serialterminalconstants.h", "serialterminalplugin.cpp", - "serialterminalplugin.h", "serialterminalsettings.cpp", "serialterminalsettings.h", "serialterminaltr.h", diff --git a/src/plugins/serialterminal/serialterminalplugin.cpp b/src/plugins/serialterminal/serialterminalplugin.cpp index 0b50a50fa4c..4b4a427c191 100644 --- a/src/plugins/serialterminal/serialterminalplugin.cpp +++ b/src/plugins/serialterminal/serialterminalplugin.cpp @@ -1,42 +1,58 @@ // Copyright (C) 2018 Benjamin Balga // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 -#include "serialterminalplugin.h" - #include "serialcontrol.h" +#include "serialoutputpane.h" +#include "serialterminalsettings.h" #include -namespace SerialTerminal { -namespace Internal { +#include -void SerialTerminalPlugin::initialize() +#include + +namespace SerialTerminal::Internal { + +class SerialTerminalPlugin : public ExtensionSystem::IPlugin { - m_settings.load(Core::ICore::settings()); + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "SerialTerminal.json") - // Create serial output pane - m_serialOutputPane = std::make_unique(m_settings); - connect(m_serialOutputPane.get(), &SerialOutputPane::settingsChanged, - this, &SerialTerminalPlugin::settingsChanged); +public: + explicit SerialTerminalPlugin() = default; - connect(Core::ICore::instance(), &Core::ICore::saveSettingsRequested, - this, [this] { m_settings.save(Core::ICore::settings()); }); -} + void initialize() final + { + m_settings.load(Core::ICore::settings()); -ExtensionSystem::IPlugin::ShutdownFlag SerialTerminalPlugin::aboutToShutdown() -{ - m_serialOutputPane->closeTabs(SerialOutputPane::CloseTabNoPrompt); + // Create serial output pane + m_serialOutputPane = std::make_unique(m_settings); + connect(m_serialOutputPane.get(), &SerialOutputPane::settingsChanged, + this, &SerialTerminalPlugin::settingsChanged); - return SynchronousShutdown; -} + connect(Core::ICore::instance(), &Core::ICore::saveSettingsRequested, + this, [this] { m_settings.save(Core::ICore::settings()); }); + } -void SerialTerminalPlugin::settingsChanged(const Settings &settings) -{ - m_settings = settings; - m_settings.save(Core::ICore::settings()); + ShutdownFlag aboutToShutdown() final + { + m_serialOutputPane->closeTabs(SerialOutputPane::CloseTabNoPrompt); - m_serialOutputPane->setSettings(m_settings); -} + return SynchronousShutdown; + } -} // namespace Internal -} // namespace SerialTerminal + void settingsChanged(const Settings &settings) + { + m_settings = settings; + m_settings.save(Core::ICore::settings()); + + m_serialOutputPane->setSettings(m_settings); + } + + Settings m_settings; + std::unique_ptr m_serialOutputPane; +}; + +} // SerialTerminal::Internal + +#include "serialterminalplugin.moc" diff --git a/src/plugins/serialterminal/serialterminalplugin.h b/src/plugins/serialterminal/serialterminalplugin.h deleted file mode 100644 index c08fe5a2bd6..00000000000 --- a/src/plugins/serialterminal/serialterminalplugin.h +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (C) 2018 Benjamin Balga -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 - -#pragma once - -#include "serialoutputpane.h" -#include "serialterminalsettings.h" - -#include - -#include - -namespace SerialTerminal { -namespace Internal { - -class SerialTerminalPlugin : public ExtensionSystem::IPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "SerialTerminal.json") - -public: - explicit SerialTerminalPlugin() = default; - - void initialize() final; - ShutdownFlag aboutToShutdown() final; - -private: - void settingsChanged(const Settings &settings); - - Settings m_settings; - std::unique_ptr m_serialOutputPane; -}; - -} // namespace Internal -} // namespace SerialTerminal