forked from qt-creator/qt-creator
Android: Use more LayoutBuilder in AndroidBuildApkStep
Change-Id: I77f2a74916ab5cde9a00fa0cc1e9bf90f4ca61ef Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
@@ -57,6 +57,7 @@
|
|||||||
#include <utils/algorithm.h>
|
#include <utils/algorithm.h>
|
||||||
#include <utils/fancylineedit.h>
|
#include <utils/fancylineedit.h>
|
||||||
#include <utils/infolabel.h>
|
#include <utils/infolabel.h>
|
||||||
|
#include <utils/layoutbuilder.h>
|
||||||
#include <utils/pathchooser.h>
|
#include <utils/pathchooser.h>
|
||||||
#include <utils/qtcprocess.h>
|
#include <utils/qtcprocess.h>
|
||||||
|
|
||||||
@@ -67,7 +68,6 @@
|
|||||||
#include <QFileDialog>
|
#include <QFileDialog>
|
||||||
#include <QFormLayout>
|
#include <QFormLayout>
|
||||||
#include <QGroupBox>
|
#include <QGroupBox>
|
||||||
#include <QHBoxLayout>
|
|
||||||
#include <QJsonDocument>
|
#include <QJsonDocument>
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
@@ -79,7 +79,6 @@
|
|||||||
#include <QPushButton>
|
#include <QPushButton>
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
#include <QToolButton>
|
#include <QToolButton>
|
||||||
#include <QVBoxLayout>
|
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
@@ -159,11 +158,13 @@ private:
|
|||||||
AndroidBuildApkWidget::AndroidBuildApkWidget(AndroidBuildApkStep *step)
|
AndroidBuildApkWidget::AndroidBuildApkWidget(AndroidBuildApkStep *step)
|
||||||
: m_step(step)
|
: m_step(step)
|
||||||
{
|
{
|
||||||
auto vbox = new QVBoxLayout(this);
|
using namespace Layouting;
|
||||||
vbox->addWidget(createSignPackageGroup());
|
Column {
|
||||||
vbox->addWidget(createApplicationGroup());
|
createSignPackageGroup(),
|
||||||
vbox->addWidget(createAdvancedGroup());
|
createApplicationGroup(),
|
||||||
vbox->addWidget(createAdditionalLibrariesGroup());
|
createAdvancedGroup(),
|
||||||
|
createAdditionalLibrariesGroup()
|
||||||
|
}.attachTo(this, WithoutMargins);
|
||||||
|
|
||||||
connect(m_step->buildConfiguration(), &BuildConfiguration::buildTypeChanged,
|
connect(m_step->buildConfiguration(), &BuildConfiguration::buildTypeChanged,
|
||||||
this, &AndroidBuildApkWidget::updateSigningWarning);
|
this, &AndroidBuildApkWidget::updateSigningWarning);
|
||||||
@@ -257,30 +258,18 @@ QWidget *AndroidBuildApkWidget::createSignPackageGroup()
|
|||||||
m_signingDebugWarningLabel->hide();
|
m_signingDebugWarningLabel->hide();
|
||||||
|
|
||||||
auto certificateAliasLabel = new QLabel(tr("Certificate alias:"), group);
|
auto certificateAliasLabel = new QLabel(tr("Certificate alias:"), group);
|
||||||
certificateAliasLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
|
certificateAliasLabel->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||||
|
|
||||||
m_certificatesAliasComboBox = new QComboBox(group);
|
m_certificatesAliasComboBox = new QComboBox(group);
|
||||||
m_certificatesAliasComboBox->setEnabled(false);
|
m_certificatesAliasComboBox->setEnabled(false);
|
||||||
QSizePolicy sizePolicy2(QSizePolicy::Fixed, QSizePolicy::Fixed);
|
m_certificatesAliasComboBox->setSizeAdjustPolicy(QComboBox::AdjustToContents);
|
||||||
sizePolicy2.setHorizontalStretch(0);
|
|
||||||
sizePolicy2.setVerticalStretch(0);
|
|
||||||
m_certificatesAliasComboBox->setSizePolicy(sizePolicy2);
|
|
||||||
m_certificatesAliasComboBox->setMinimumSize(QSize(300, 0));
|
|
||||||
|
|
||||||
auto horizontalLayout_2 = new QHBoxLayout;
|
using namespace Layouting;
|
||||||
horizontalLayout_2->addWidget(keystoreLocationLabel);
|
Column {
|
||||||
horizontalLayout_2->addWidget(keystoreLocationChooser);
|
Row { keystoreLocationLabel, keystoreLocationChooser, keystoreCreateButton },
|
||||||
horizontalLayout_2->addWidget(keystoreCreateButton);
|
m_signPackageCheckBox,
|
||||||
|
Row { m_signingDebugWarningLabel, certificateAliasLabel, m_certificatesAliasComboBox }
|
||||||
auto horizontalLayout_3 = new QHBoxLayout;
|
}.attachTo(group);
|
||||||
horizontalLayout_3->addWidget(m_signingDebugWarningLabel);
|
|
||||||
horizontalLayout_3->addWidget(certificateAliasLabel);
|
|
||||||
horizontalLayout_3->addWidget(m_certificatesAliasComboBox);
|
|
||||||
|
|
||||||
auto vbox = new QVBoxLayout(group);
|
|
||||||
vbox->addLayout(horizontalLayout_2);
|
|
||||||
vbox->addWidget(m_signPackageCheckBox);
|
|
||||||
vbox->addLayout(horizontalLayout_3);
|
|
||||||
|
|
||||||
connect(m_signPackageCheckBox, &QAbstractButton::toggled,
|
connect(m_signPackageCheckBox, &QAbstractButton::toggled,
|
||||||
this, &AndroidBuildApkWidget::signPackageCheckBoxToggled);
|
this, &AndroidBuildApkWidget::signPackageCheckBoxToggled);
|
||||||
@@ -374,21 +363,17 @@ QWidget *AndroidBuildApkWidget::createAdditionalLibrariesGroup()
|
|||||||
libsModel->removeEntries(removeList);
|
libsModel->removeEntries(removeList);
|
||||||
});
|
});
|
||||||
|
|
||||||
auto libsButtonLayout = new QVBoxLayout;
|
|
||||||
libsButtonLayout->addWidget(addLibButton);
|
|
||||||
libsButtonLayout->addWidget(removeLibButton);
|
|
||||||
libsButtonLayout->addStretch(1);
|
|
||||||
|
|
||||||
m_openSslCheckBox = new QCheckBox(tr("Include prebuilt OpenSSL libraries"));
|
m_openSslCheckBox = new QCheckBox(tr("Include prebuilt OpenSSL libraries"));
|
||||||
m_openSslCheckBox->setToolTip(tr("This is useful for apps that use SSL operations. The path "
|
m_openSslCheckBox->setToolTip(tr("This is useful for apps that use SSL operations. The path "
|
||||||
"can be defined in Edit > Preferences > Devices > Android."));
|
"can be defined in Edit > Preferences > Devices > Android."));
|
||||||
connect(m_openSslCheckBox, &QAbstractButton::clicked, this,
|
connect(m_openSslCheckBox, &QAbstractButton::clicked, this,
|
||||||
&AndroidBuildApkWidget::onOpenSslCheckBoxChanged);
|
&AndroidBuildApkWidget::onOpenSslCheckBoxChanged);
|
||||||
|
|
||||||
auto grid = new QGridLayout(group);
|
using namespace Layouting;
|
||||||
grid->addWidget(m_openSslCheckBox, 0, 0);
|
Grid {
|
||||||
grid->addWidget(libsView, 1, 0);
|
m_openSslCheckBox, br,
|
||||||
grid->addLayout(libsButtonLayout, 1, 1);
|
libsView, Column { addLibButton, removeLibButton, st }
|
||||||
|
}.attachTo(group);
|
||||||
|
|
||||||
QItemSelectionModel *libSelection = libsView->selectionModel();
|
QItemSelectionModel *libSelection = libsView->selectionModel();
|
||||||
connect(libSelection, &QItemSelectionModel::selectionChanged, this, [libSelection, removeLibButton] {
|
connect(libSelection, &QItemSelectionModel::selectionChanged, this, [libSelection, removeLibButton] {
|
||||||
|
Reference in New Issue
Block a user