diff options
author | Jarek Kobus <[email protected]> | 2024-11-12 16:16:09 +0100 |
---|---|---|
committer | Jarek Kobus <[email protected]> | 2024-11-12 16:40:52 +0000 |
commit | a42fad9a8bff50d118b11539c55a402f58667d37 (patch) | |
tree | f18b28201afb737be22e02357edc04385008c653 | |
parent | c45684db94f35e6b50766d01ed9cb20746423234 (diff) |
Android: Hide CreateAndroidManifestWizard in cpp
Rename it to manifestwizard.h.
Provide executeManifestWizard() global function.
Change-Id: Ibe27d7b1fdb346dc10c04d0e0476d719091f5bb3
Reviewed-by: hjk <[email protected]>
-rw-r--r-- | src/plugins/android/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/plugins/android/android.qbs | 4 | ||||
-rw-r--r-- | src/plugins/android/androidbuildapkstep.cpp | 5 | ||||
-rw-r--r-- | src/plugins/android/createandroidmanifestwizard.h | 39 | ||||
-rw-r--r-- | src/plugins/android/manifestwizard.cpp (renamed from src/plugins/android/createandroidmanifestwizard.cpp) | 108 | ||||
-rw-r--r-- | src/plugins/android/manifestwizard.h | 12 |
6 files changed, 55 insertions, 115 deletions
diff --git a/src/plugins/android/CMakeLists.txt b/src/plugins/android/CMakeLists.txt index 97cb5e50729..68fe8ea2504 100644 --- a/src/plugins/android/CMakeLists.txt +++ b/src/plugins/android/CMakeLists.txt @@ -33,11 +33,11 @@ add_qtc_plugin(Android androidutils.cpp androidutils.h avddialog.cpp avddialog.h avdmanageroutputparser.cpp avdmanageroutputparser.h - createandroidmanifestwizard.cpp createandroidmanifestwizard.h javaeditor.cpp javaeditor.h javaindenter.cpp javaindenter.h javalanguageserver.cpp javalanguageserver.h javaparser.cpp javaparser.h + manifestwizard.cpp manifestwizard.h splashscreencontainerwidget.cpp splashscreencontainerwidget.h sdkmanageroutputparser.cpp sdkmanageroutputparser.h ) diff --git a/src/plugins/android/android.qbs b/src/plugins/android/android.qbs index 96be929f86f..5382ef596c0 100644 --- a/src/plugins/android/android.qbs +++ b/src/plugins/android/android.qbs @@ -69,8 +69,6 @@ QtcPlugin { "avddialog.h", "avdmanageroutputparser.cpp", "avdmanageroutputparser.h", - "createandroidmanifestwizard.h", - "createandroidmanifestwizard.cpp", "javaeditor.cpp", "javaeditor.h", "javaindenter.cpp", @@ -79,6 +77,8 @@ QtcPlugin { "javalanguageserver.h", "javaparser.cpp", "javaparser.h", + "manifestwizard.h", + "manifestwizard.cpp", "splashscreencontainerwidget.cpp", "splashscreencontainerwidget.h", "sdkmanageroutputparser.cpp", diff --git a/src/plugins/android/androidbuildapkstep.cpp b/src/plugins/android/androidbuildapkstep.cpp index 2421bd76a54..4cb750cbdc2 100644 --- a/src/plugins/android/androidbuildapkstep.cpp +++ b/src/plugins/android/androidbuildapkstep.cpp @@ -10,7 +10,7 @@ #include "androidsdkmanager.h" #include "androidtr.h" #include "androidutils.h" -#include "createandroidmanifestwizard.h" +#include "manifestwizard.h" #include "javaparser.h" #include <coreplugin/fileutils.h> @@ -442,8 +442,7 @@ AndroidBuildApkWidget::AndroidBuildApkWidget(AndroidBuildApkStep *step) createAndroidTemplatesButton->setToolTip( Tr::tr("Create an Android package for Custom Java code, assets, and Gradle configurations.")); connect(createAndroidTemplatesButton, &QAbstractButton::clicked, this, [this] { - CreateAndroidManifestWizard wizard(m_step->buildSystem()); - wizard.exec(); + executeManifestWizard(m_step->buildSystem()); }); Group applicationGroup { diff --git a/src/plugins/android/createandroidmanifestwizard.h b/src/plugins/android/createandroidmanifestwizard.h deleted file mode 100644 index b00dff4a80c..00000000000 --- a/src/plugins/android/createandroidmanifestwizard.h +++ /dev/null @@ -1,39 +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 <utils/filepath.h> -#include <utils/wizard.h> - -namespace ProjectExplorer { class BuildSystem; } - -namespace Android::Internal { - -class CreateAndroidManifestWizard : public Utils::Wizard -{ -public: - CreateAndroidManifestWizard(ProjectExplorer::BuildSystem *buildSystem); - - QString buildKey() const; - void setBuildKey(const QString &buildKey); - - void accept() override; - bool copyGradleTemplates() const; - bool allowGradleTemplates() const; - - void setDirectory(const Utils::FilePath &directory); - void setCopyGradleTemplates(bool copy); - - ProjectExplorer::BuildSystem *buildSystem() const; - -private: - void createAndroidManifestFile(); - void createAndroidTemplateFiles(); - ProjectExplorer::BuildSystem *m_buildSystem; - QString m_buildKey; - Utils::FilePath m_directory; - bool m_copyGradleTemplates; -}; - -} // Android::Internal diff --git a/src/plugins/android/createandroidmanifestwizard.cpp b/src/plugins/android/manifestwizard.cpp index de79f197e02..3627c118173 100644 --- a/src/plugins/android/createandroidmanifestwizard.cpp +++ b/src/plugins/android/manifestwizard.cpp @@ -1,10 +1,10 @@ // Copyright (C) 2024 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 -#include "createandroidmanifestwizard.h" +#include "manifestwizard.h" -#include "androidtr.h" #include "androidconstants.h" +#include "androidtr.h" #include "androidutils.h" #include <coreplugin/editormanager/editormanager.h> @@ -22,6 +22,7 @@ #include <utils/infolabel.h> #include <utils/pathchooser.h> #include <utils/qtcassert.h> +#include <utils/wizard.h> #include <QCheckBox> #include <QComboBox> @@ -36,9 +37,35 @@ using namespace Utils; namespace Android::Internal { -// -// NoApplicationTargetPage -// +class CreateAndroidManifestWizard : public Wizard +{ +public: + CreateAndroidManifestWizard(BuildSystem *buildSystem); + + QString buildKey() const { return m_buildKey; } + void setBuildKey(const QString &buildKey) { m_buildKey = buildKey; } + + void accept() override + { + createAndroidTemplateFiles(); + Wizard::accept(); + } + bool copyGradleTemplates() const { return m_copyGradleTemplates; } + bool allowGradleTemplates() const + { return bool(QtSupport::QtKitAspect::qtVersion(m_buildSystem->kit())); } + void setDirectory(const FilePath &directory) { m_directory = directory; } + void setCopyGradleTemplates(bool copy) { m_copyGradleTemplates = copy; } + + BuildSystem *buildSystem() const { return m_buildSystem; } + +private: + void createAndroidManifestFile(); + void createAndroidTemplateFiles(); + BuildSystem *m_buildSystem; + QString m_buildKey; + FilePath m_directory; + bool m_copyGradleTemplates; +}; class NoApplicationTargetPage : public QWizardPage { @@ -56,18 +83,14 @@ NoApplicationTargetPage::NoApplicationTargetPage(CreateAndroidManifestWizard *) setTitle(Tr::tr("No Application Build Target")); } - -// -// ChooseProFilePage -// - class ChooseProFilePage : public QWizardPage { public: explicit ChooseProFilePage(CreateAndroidManifestWizard *wizard); private: - void nodeSelected(int index); + void nodeSelected() + { m_wizard->setBuildKey(m_comboBox->itemData(m_comboBox->currentIndex()).toString()); } CreateAndroidManifestWizard *m_wizard; QComboBox *m_comboBox; @@ -93,24 +116,13 @@ ChooseProFilePage::ChooseProFilePage(CreateAndroidManifestWizard *wizard) m_comboBox->setCurrentIndex(m_comboBox->count() - 1); } - nodeSelected(m_comboBox->currentIndex()); + nodeSelected(); connect(m_comboBox, &QComboBox::currentIndexChanged, this, &ChooseProFilePage::nodeSelected); fl->addRow(Tr::tr("Build target:"), m_comboBox); setTitle(Tr::tr("Select a build target")); } -void ChooseProFilePage::nodeSelected(int index) -{ - Q_UNUSED(index) - m_wizard->setBuildKey(m_comboBox->itemData(m_comboBox->currentIndex()).toString()); -} - - -// -// ChooseDirectoryPage -// - class ChooseDirectoryPage : public QWizardPage { public: @@ -118,7 +130,7 @@ public: private: void initializePage() final; - bool isComplete() const final; + bool isComplete() const final { return m_complete; } void checkPackageSourceDir(); CreateAndroidManifestWizard *m_wizard; @@ -184,11 +196,6 @@ void ChooseDirectoryPage::checkPackageSourceDir() } } -bool ChooseDirectoryPage::isComplete() const -{ - return m_complete; -} - void ChooseDirectoryPage::initializePage() { const Target *target = m_wizard->buildSystem()->target(); @@ -223,9 +230,6 @@ void ChooseDirectoryPage::initializePage() m_wizard->setDirectory(m_androidPackageSourceDir->filePath()); } -// -// CreateAndroidManifestWizard -// CreateAndroidManifestWizard::CreateAndroidManifestWizard(BuildSystem *buildSystem) : Wizard(Core::ICore::dialogParent()) , m_buildSystem(buildSystem) @@ -246,36 +250,6 @@ CreateAndroidManifestWizard::CreateAndroidManifestWizard(BuildSystem *buildSyste } } -QString CreateAndroidManifestWizard::buildKey() const -{ - return m_buildKey; -} - -void CreateAndroidManifestWizard::setBuildKey(const QString &buildKey) -{ - m_buildKey = buildKey; -} - -void CreateAndroidManifestWizard::setDirectory(const FilePath &directory) -{ - m_directory = directory; -} - -bool CreateAndroidManifestWizard::copyGradleTemplates() const -{ - return m_copyGradleTemplates; -} - -bool CreateAndroidManifestWizard::allowGradleTemplates() const -{ - return bool(QtSupport::QtKitAspect::qtVersion(m_buildSystem->kit())); -} - -void CreateAndroidManifestWizard::setCopyGradleTemplates(bool copy) -{ - m_copyGradleTemplates = copy; -} - void CreateAndroidManifestWizard::createAndroidTemplateFiles() { if (m_directory.isEmpty()) @@ -322,15 +296,9 @@ void CreateAndroidManifestWizard::createAndroidTemplateFiles() Core::EditorManager::openEditor(m_directory / "AndroidManifest.xml"); } -BuildSystem *CreateAndroidManifestWizard::buildSystem() const -{ - return m_buildSystem; -} - -void CreateAndroidManifestWizard::accept() +void executeManifestWizard(BuildSystem *buildSystem) { - createAndroidTemplateFiles(); - Wizard::accept(); + CreateAndroidManifestWizard(buildSystem).exec(); } } // namespace Android::Internal diff --git a/src/plugins/android/manifestwizard.h b/src/plugins/android/manifestwizard.h new file mode 100644 index 00000000000..8a94e146282 --- /dev/null +++ b/src/plugins/android/manifestwizard.h @@ -0,0 +1,12 @@ +// 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 + +namespace ProjectExplorer { class BuildSystem; } + +namespace Android::Internal { + +void executeManifestWizard(ProjectExplorer::BuildSystem *buildSystem); + +} // Android::Internal |