forked from qt-creator/qt-creator
Autotest: use new settings page convenience for Settings
Change-Id: I2e51b176b0874dc63370a0ddbd07c04b976da747 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -27,43 +27,59 @@
|
||||
#include "boosttestconstants.h"
|
||||
#include "boosttestsettings.h"
|
||||
#include "../testframeworkmanager.h"
|
||||
#include "ui_boosttestsettingspage.h"
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
|
||||
namespace Autotest {
|
||||
namespace Internal {
|
||||
|
||||
BoostTestSettingsWidget::BoostTestSettingsWidget(QWidget *parent) :
|
||||
QWidget(parent)
|
||||
class BoostTestSettingsWidget : public Core::IOptionsPageWidget
|
||||
{
|
||||
QT_DECLARE_DEPRECATED_TR_FUNCTIONS(Autotest::Internal::BoostTestSettingsWidget)
|
||||
|
||||
public:
|
||||
explicit BoostTestSettingsWidget(QSharedPointer<BoostTestSettings> settings);
|
||||
|
||||
void apply() final;
|
||||
void finish() final {}
|
||||
|
||||
void setSettings(const BoostTestSettings &settings);
|
||||
BoostTestSettings settings() const;
|
||||
|
||||
private:
|
||||
void fillComboBoxes();
|
||||
Ui::BoostSettingsPage m_ui;
|
||||
QSharedPointer<BoostTestSettings> m_settings;
|
||||
};
|
||||
|
||||
BoostTestSettingsWidget::BoostTestSettingsWidget(QSharedPointer<BoostTestSettings> settings)
|
||||
: m_settings(settings)
|
||||
{
|
||||
m_ui.setupUi(this);
|
||||
fillComboBoxes();
|
||||
connect(m_ui.randomizeCB, &QCheckBox::toggled, m_ui.seedSB, &QSpinBox::setEnabled);
|
||||
|
||||
m_ui.logFormatCB->setCurrentIndex(int(m_settings->logLevel));
|
||||
m_ui.reportLevelCB->setCurrentIndex(int(m_settings->reportLevel));
|
||||
m_ui.randomizeCB->setChecked(m_settings->randomize);
|
||||
m_ui.seedSB->setValue(m_settings->seed);
|
||||
m_ui.systemErrorCB->setChecked(m_settings->systemErrors);
|
||||
m_ui.fpExceptions->setChecked(m_settings->fpExceptions);
|
||||
m_ui.memoryLeakCB->setChecked(m_settings->memLeaks);
|
||||
}
|
||||
|
||||
void BoostTestSettingsWidget::setSettings(const BoostTestSettings &settings)
|
||||
void BoostTestSettingsWidget::apply()
|
||||
{
|
||||
m_ui.logFormatCB->setCurrentIndex(int(settings.logLevel));
|
||||
m_ui.reportLevelCB->setCurrentIndex(int(settings.reportLevel));
|
||||
m_ui.randomizeCB->setChecked(settings.randomize);
|
||||
m_ui.seedSB->setValue(settings.seed);
|
||||
m_ui.systemErrorCB->setChecked(settings.systemErrors);
|
||||
m_ui.fpExceptions->setChecked(settings.fpExceptions);
|
||||
m_ui.memoryLeakCB->setChecked(settings.memLeaks);
|
||||
}
|
||||
m_settings->logLevel = LogLevel(m_ui.logFormatCB->currentData().toInt());
|
||||
m_settings->reportLevel = ReportLevel(m_ui.reportLevelCB->currentData().toInt());
|
||||
m_settings->randomize = m_ui.randomizeCB->isChecked();
|
||||
m_settings->seed = m_ui.seedSB->value();
|
||||
m_settings->systemErrors = m_ui.systemErrorCB->isChecked();
|
||||
m_settings->fpExceptions = m_ui.fpExceptions->isChecked();
|
||||
m_settings->memLeaks = m_ui.memoryLeakCB->isChecked();
|
||||
|
||||
BoostTestSettings BoostTestSettingsWidget::settings() const
|
||||
{
|
||||
BoostTestSettings result;
|
||||
|
||||
result.logLevel = LogLevel(m_ui.logFormatCB->currentData().toInt());
|
||||
result.reportLevel = ReportLevel(m_ui.reportLevelCB->currentData().toInt());
|
||||
result.randomize = m_ui.randomizeCB->isChecked();
|
||||
result.seed = m_ui.seedSB->value();
|
||||
result.systemErrors = m_ui.systemErrorCB->isChecked();
|
||||
result.fpExceptions = m_ui.fpExceptions->isChecked();
|
||||
result.memLeaks = m_ui.memoryLeakCB->isChecked();
|
||||
return result;
|
||||
m_settings->toSettings(Core::ICore::settings());
|
||||
}
|
||||
|
||||
void BoostTestSettingsWidget::fillComboBoxes()
|
||||
@@ -88,29 +104,13 @@ void BoostTestSettingsWidget::fillComboBoxes()
|
||||
|
||||
BoostTestSettingsPage::BoostTestSettingsPage(QSharedPointer<IFrameworkSettings> settings,
|
||||
const ITestFramework *framework)
|
||||
: ITestSettingsPage(framework),
|
||||
m_settings(qSharedPointerCast<BoostTestSettings>(settings))
|
||||
: ITestSettingsPage(framework)
|
||||
{
|
||||
setDisplayName(QCoreApplication::translate("BoostTestFramework",
|
||||
BoostTest::Constants::FRAMEWORK_SETTINGS_CATEGORY));
|
||||
}
|
||||
|
||||
QWidget *BoostTestSettingsPage::widget()
|
||||
{
|
||||
if (!m_widget) {
|
||||
m_widget = new BoostTestSettingsWidget;
|
||||
m_widget->setSettings(*m_settings);
|
||||
}
|
||||
return m_widget;
|
||||
}
|
||||
|
||||
void BoostTestSettingsPage::apply()
|
||||
{
|
||||
if (!m_widget) // page was not shown at all
|
||||
return;
|
||||
|
||||
*m_settings = m_widget->settings();
|
||||
m_settings->toSettings(Core::ICore::settings());
|
||||
setWidgetCreator([settings] {
|
||||
return new BoostTestSettingsWidget(qSharedPointerCast<BoostTestSettings>(settings));
|
||||
});
|
||||
}
|
||||
|
||||
} // Internal
|
||||
|
||||
@@ -25,46 +25,19 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "ui_boosttestsettingspage.h"
|
||||
#include "../itestsettingspage.h"
|
||||
|
||||
#include <QPointer>
|
||||
|
||||
namespace Autotest {
|
||||
|
||||
class IFrameworkSettings;
|
||||
|
||||
namespace Internal {
|
||||
|
||||
class BoostTestSettings;
|
||||
|
||||
class BoostTestSettingsWidget : public QWidget
|
||||
class BoostTestSettingsPage final : public ITestSettingsPage
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit BoostTestSettingsWidget(QWidget *parent = nullptr);
|
||||
|
||||
void setSettings(const BoostTestSettings &settings);
|
||||
BoostTestSettings settings() const;
|
||||
private:
|
||||
void fillComboBoxes();
|
||||
Ui::BoostSettingsPage m_ui;
|
||||
};
|
||||
|
||||
class BoostTestSettingsPage : public ITestSettingsPage
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
BoostTestSettingsPage(QSharedPointer<IFrameworkSettings> settings,
|
||||
const ITestFramework *framework);
|
||||
|
||||
QWidget *widget() override;
|
||||
void apply() override;
|
||||
|
||||
private:
|
||||
QSharedPointer<BoostTestSettings> m_settings;
|
||||
QPointer<BoostTestSettingsWidget> m_widget;
|
||||
};
|
||||
|
||||
} // Internal
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "../autotestconstants.h"
|
||||
#include "../testframeworkmanager.h"
|
||||
|
||||
#include "ui_gtestsettingspage.h"
|
||||
#include <coreplugin/icore.h>
|
||||
|
||||
namespace Autotest {
|
||||
@@ -40,7 +41,24 @@ static bool validateFilter(Utils::FancyLineEdit *edit, QString * /*error*/)
|
||||
return edit && GTestUtils::isValidGTestFilter(edit->text());
|
||||
}
|
||||
|
||||
GTestSettingsWidget::GTestSettingsWidget()
|
||||
class GTestSettingsWidget final : public Core::IOptionsPageWidget
|
||||
{
|
||||
Q_DECLARE_TR_FUNCTIONS(Autotest::Internal::GTestSettingsWidget)
|
||||
|
||||
public:
|
||||
explicit GTestSettingsWidget(const QSharedPointer<GTestSettings> &settings);
|
||||
|
||||
private:
|
||||
void apply() final;
|
||||
void finish() final {}
|
||||
|
||||
Ui::GTestSettingsPage m_ui;
|
||||
QString m_currentGTestFilter;
|
||||
QSharedPointer<GTestSettings> m_settings;
|
||||
};
|
||||
|
||||
GTestSettingsWidget::GTestSettingsWidget(const QSharedPointer<GTestSettings> &settings)
|
||||
: m_settings(settings)
|
||||
{
|
||||
m_ui.setupUi(this);
|
||||
m_ui.filterLineEdit->setValidationFunction(&validateFilter);
|
||||
@@ -52,67 +70,38 @@ GTestSettingsWidget::GTestSettingsWidget()
|
||||
});
|
||||
connect(m_ui.repeatGTestsCB, &QCheckBox::toggled, m_ui.repetitionSpin, &QSpinBox::setEnabled);
|
||||
connect(m_ui.shuffleGTestsCB, &QCheckBox::toggled, m_ui.seedSpin, &QSpinBox::setEnabled);
|
||||
|
||||
m_ui.runDisabledGTestsCB->setChecked(m_settings->runDisabled);
|
||||
m_ui.repeatGTestsCB->setChecked(m_settings->repeat);
|
||||
m_ui.shuffleGTestsCB->setChecked(m_settings->shuffle);
|
||||
m_ui.repetitionSpin->setValue(m_settings->iterations);
|
||||
m_ui.seedSpin->setValue(m_settings->seed);
|
||||
m_ui.breakOnFailureCB->setChecked(m_settings->breakOnFailure);
|
||||
m_ui.throwOnFailureCB->setChecked(m_settings->throwOnFailure);
|
||||
m_ui.groupModeCombo->setCurrentIndex(m_settings->groupMode - 1); // there's None for internal use
|
||||
m_ui.filterLineEdit->setText(m_settings->gtestFilter);
|
||||
m_currentGTestFilter = m_settings->gtestFilter; // store it temporarily (if edit is invalid)
|
||||
}
|
||||
|
||||
void GTestSettingsWidget::setSettings(const GTestSettings &settings)
|
||||
void GTestSettingsWidget::apply()
|
||||
{
|
||||
m_ui.runDisabledGTestsCB->setChecked(settings.runDisabled);
|
||||
m_ui.repeatGTestsCB->setChecked(settings.repeat);
|
||||
m_ui.shuffleGTestsCB->setChecked(settings.shuffle);
|
||||
m_ui.repetitionSpin->setValue(settings.iterations);
|
||||
m_ui.seedSpin->setValue(settings.seed);
|
||||
m_ui.breakOnFailureCB->setChecked(settings.breakOnFailure);
|
||||
m_ui.throwOnFailureCB->setChecked(settings.throwOnFailure);
|
||||
m_ui.groupModeCombo->setCurrentIndex(settings.groupMode - 1); // there's None for internal use
|
||||
m_ui.filterLineEdit->setText(settings.gtestFilter);
|
||||
m_currentGTestFilter = settings.gtestFilter; // store it temporarily (if edit is invalid)
|
||||
}
|
||||
|
||||
GTestSettings GTestSettingsWidget::settings() const
|
||||
{
|
||||
GTestSettings result;
|
||||
result.runDisabled = m_ui.runDisabledGTestsCB->isChecked();
|
||||
result.repeat = m_ui.repeatGTestsCB->isChecked();
|
||||
result.shuffle = m_ui.shuffleGTestsCB->isChecked();
|
||||
result.iterations = m_ui.repetitionSpin->value();
|
||||
result.seed = m_ui.seedSpin->value();
|
||||
result.breakOnFailure = m_ui.breakOnFailureCB->isChecked();
|
||||
result.throwOnFailure = m_ui.throwOnFailureCB->isChecked();
|
||||
result.groupMode = static_cast<GTest::Constants::GroupMode>(
|
||||
m_ui.groupModeCombo->currentIndex() + 1);
|
||||
if (m_ui.filterLineEdit->isValid())
|
||||
result.gtestFilter = m_ui.filterLineEdit->text();
|
||||
else
|
||||
result.gtestFilter = m_currentGTestFilter;
|
||||
return result;
|
||||
}
|
||||
|
||||
GTestSettingsPage::GTestSettingsPage(QSharedPointer<IFrameworkSettings> settings,
|
||||
const ITestFramework *framework)
|
||||
: ITestSettingsPage(framework),
|
||||
m_settings(qSharedPointerCast<GTestSettings>(settings))
|
||||
{
|
||||
setDisplayName(QCoreApplication::translate("GTestFramework",
|
||||
GTest::Constants::FRAMEWORK_SETTINGS_CATEGORY));
|
||||
}
|
||||
|
||||
QWidget *GTestSettingsPage::widget()
|
||||
{
|
||||
if (!m_widget) {
|
||||
m_widget = new GTestSettingsWidget;
|
||||
m_widget->setSettings(*m_settings);
|
||||
}
|
||||
return m_widget;
|
||||
}
|
||||
|
||||
void GTestSettingsPage::apply()
|
||||
{
|
||||
if (!m_widget) // page was not shown at all
|
||||
return;
|
||||
|
||||
GTest::Constants::GroupMode oldGroupMode = m_settings->groupMode;
|
||||
const QString oldFilter = m_settings->gtestFilter;
|
||||
*m_settings = m_widget->settings();
|
||||
|
||||
m_settings->runDisabled = m_ui.runDisabledGTestsCB->isChecked();
|
||||
m_settings->repeat = m_ui.repeatGTestsCB->isChecked();
|
||||
m_settings->shuffle = m_ui.shuffleGTestsCB->isChecked();
|
||||
m_settings->iterations = m_ui.repetitionSpin->value();
|
||||
m_settings->seed = m_ui.seedSpin->value();
|
||||
m_settings->breakOnFailure = m_ui.breakOnFailureCB->isChecked();
|
||||
m_settings->throwOnFailure = m_ui.throwOnFailureCB->isChecked();
|
||||
m_settings->groupMode = static_cast<GTest::Constants::GroupMode>(
|
||||
m_ui.groupModeCombo->currentIndex() + 1);
|
||||
if (m_ui.filterLineEdit->isValid())
|
||||
m_settings->gtestFilter = m_ui.filterLineEdit->text();
|
||||
else
|
||||
m_settings->gtestFilter = m_currentGTestFilter;
|
||||
|
||||
m_settings->toSettings(Core::ICore::settings());
|
||||
if (m_settings->groupMode == oldGroupMode && oldFilter == m_settings->gtestFilter)
|
||||
return;
|
||||
@@ -121,5 +110,14 @@ void GTestSettingsPage::apply()
|
||||
TestTreeModel::instance()->rebuild({id});
|
||||
}
|
||||
|
||||
GTestSettingsPage::GTestSettingsPage(QSharedPointer<IFrameworkSettings> settings,
|
||||
const ITestFramework *framework)
|
||||
: ITestSettingsPage(framework)
|
||||
{
|
||||
setDisplayName(QCoreApplication::translate("GTestFramework",
|
||||
GTest::Constants::FRAMEWORK_SETTINGS_CATEGORY));
|
||||
setWidgetCreator([settings] { return new GTestSettingsWidget(qSharedPointerCast<GTestSettings>(settings)); });
|
||||
}
|
||||
|
||||
} // namespace Internal
|
||||
} // namespace Autotest
|
||||
|
||||
@@ -25,47 +25,18 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "ui_gtestsettingspage.h"
|
||||
|
||||
#include "../itestsettingspage.h"
|
||||
|
||||
#include <QPointer>
|
||||
|
||||
namespace Autotest {
|
||||
|
||||
class IFrameworkSettings;
|
||||
|
||||
namespace Internal {
|
||||
|
||||
class GTestSettings;
|
||||
|
||||
class GTestSettingsWidget : public QWidget
|
||||
class GTestSettingsPage final : public ITestSettingsPage
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
GTestSettingsWidget();
|
||||
|
||||
void setSettings(const GTestSettings &settings);
|
||||
GTestSettings settings() const;
|
||||
|
||||
private:
|
||||
Ui::GTestSettingsPage m_ui;
|
||||
QString m_currentGTestFilter;
|
||||
};
|
||||
|
||||
class GTestSettingsPage : public ITestSettingsPage
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
GTestSettingsPage(QSharedPointer<IFrameworkSettings> settings, const ITestFramework *framework);
|
||||
|
||||
QWidget *widget() override;
|
||||
void apply() override;
|
||||
|
||||
private:
|
||||
QSharedPointer<GTestSettings> m_settings;
|
||||
QPointer<GTestSettingsWidget> m_widget;
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "qttestconstants.h"
|
||||
#include "qttestsettingspage.h"
|
||||
#include "qttestsettings.h"
|
||||
#include "ui_qttestsettingspage.h"
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
|
||||
@@ -35,20 +36,33 @@
|
||||
namespace Autotest {
|
||||
namespace Internal {
|
||||
|
||||
QtTestSettingsWidget::QtTestSettingsWidget()
|
||||
class QtTestSettingsWidget final : public Core::IOptionsPageWidget
|
||||
{
|
||||
Q_DECLARE_TR_FUNCTIONS(Autotest::Internal::QtTestSettingsWidget)
|
||||
|
||||
public:
|
||||
explicit QtTestSettingsWidget(QSharedPointer<QtTestSettings> settings);
|
||||
|
||||
void apply() final;
|
||||
void finish() final {}
|
||||
|
||||
private:
|
||||
Ui::QtTestSettingsPage m_ui;
|
||||
QSharedPointer<QtTestSettings> m_settings;
|
||||
};
|
||||
|
||||
QtTestSettingsWidget::QtTestSettingsWidget(QSharedPointer<QtTestSettings> settings)
|
||||
: m_settings(settings)
|
||||
{
|
||||
m_ui.setupUi(this);
|
||||
m_ui.callgrindRB->setEnabled(Utils::HostOsInfo::isAnyUnixHost()); // valgrind available on UNIX
|
||||
m_ui.perfRB->setEnabled(Utils::HostOsInfo::isLinuxHost()); // according to docs perf Linux only
|
||||
}
|
||||
|
||||
void QtTestSettingsWidget::setSettings(const QtTestSettings &settings)
|
||||
{
|
||||
m_ui.disableCrashhandlerCB->setChecked(settings.noCrashHandler);
|
||||
m_ui.useXMLOutputCB->setChecked(settings.useXMLOutput);
|
||||
m_ui.verboseBenchmarksCB->setChecked(settings.verboseBench);
|
||||
m_ui.logSignalsAndSlotsCB->setChecked(settings.logSignalsSlots);
|
||||
switch (settings.metrics) {
|
||||
m_ui.disableCrashhandlerCB->setChecked(m_settings->noCrashHandler);
|
||||
m_ui.useXMLOutputCB->setChecked(m_settings->useXMLOutput);
|
||||
m_ui.verboseBenchmarksCB->setChecked(m_settings->verboseBench);
|
||||
m_ui.logSignalsAndSlotsCB->setChecked(m_settings->logSignalsSlots);
|
||||
switch (m_settings->metrics) {
|
||||
case MetricsType::Walltime:
|
||||
m_ui.walltimeRB->setChecked(true);
|
||||
break;
|
||||
@@ -67,52 +81,35 @@ void QtTestSettingsWidget::setSettings(const QtTestSettings &settings)
|
||||
}
|
||||
}
|
||||
|
||||
QtTestSettings QtTestSettingsWidget::settings() const
|
||||
void QtTestSettingsWidget::apply()
|
||||
{
|
||||
QtTestSettings result;
|
||||
|
||||
result.noCrashHandler = m_ui.disableCrashhandlerCB->isChecked();
|
||||
result.useXMLOutput = m_ui.useXMLOutputCB->isChecked();
|
||||
result.verboseBench = m_ui.verboseBenchmarksCB->isChecked();
|
||||
result.logSignalsSlots = m_ui.logSignalsAndSlotsCB->isChecked();
|
||||
m_settings->noCrashHandler = m_ui.disableCrashhandlerCB->isChecked();
|
||||
m_settings->useXMLOutput = m_ui.useXMLOutputCB->isChecked();
|
||||
m_settings->verboseBench = m_ui.verboseBenchmarksCB->isChecked();
|
||||
m_settings->logSignalsSlots = m_ui.logSignalsAndSlotsCB->isChecked();
|
||||
if (m_ui.walltimeRB->isChecked())
|
||||
result.metrics = MetricsType::Walltime;
|
||||
m_settings->metrics = MetricsType::Walltime;
|
||||
else if (m_ui.tickcounterRB->isChecked())
|
||||
result.metrics = MetricsType::TickCounter;
|
||||
m_settings->metrics = MetricsType::TickCounter;
|
||||
else if (m_ui.eventCounterRB->isChecked())
|
||||
result.metrics = MetricsType::EventCounter;
|
||||
m_settings->metrics = MetricsType::EventCounter;
|
||||
else if (m_ui.callgrindRB->isChecked())
|
||||
result.metrics = MetricsType::CallGrind;
|
||||
m_settings->metrics = MetricsType::CallGrind;
|
||||
else if (m_ui.perfRB->isChecked())
|
||||
result.metrics = MetricsType::Perf;
|
||||
m_settings->metrics = MetricsType::Perf;
|
||||
|
||||
return result;
|
||||
m_settings->toSettings(Core::ICore::settings());
|
||||
}
|
||||
|
||||
QtTestSettingsPage::QtTestSettingsPage(QSharedPointer<IFrameworkSettings> settings,
|
||||
const ITestFramework *framework)
|
||||
: ITestSettingsPage(framework),
|
||||
m_settings(qSharedPointerCast<QtTestSettings>(settings))
|
||||
: ITestSettingsPage(framework)
|
||||
{
|
||||
setDisplayName(QCoreApplication::translate("QtTestFramework",
|
||||
QtTest::Constants::FRAMEWORK_SETTINGS_CATEGORY));
|
||||
}
|
||||
|
||||
QWidget *QtTestSettingsPage::widget()
|
||||
{
|
||||
if (!m_widget) {
|
||||
m_widget = new QtTestSettingsWidget;
|
||||
m_widget->setSettings(*m_settings);
|
||||
}
|
||||
return m_widget;
|
||||
}
|
||||
|
||||
void QtTestSettingsPage::apply()
|
||||
{
|
||||
if (!m_widget) // page was not shown at all
|
||||
return;
|
||||
*m_settings = m_widget->settings();
|
||||
m_settings->toSettings(Core::ICore::settings());
|
||||
setWidgetCreator([settings] {
|
||||
return new QtTestSettingsWidget(qSharedPointerCast<QtTestSettings>(settings));
|
||||
});
|
||||
}
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -25,46 +25,18 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "ui_qttestsettingspage.h"
|
||||
|
||||
#include "../itestsettingspage.h"
|
||||
|
||||
#include <QPointer>
|
||||
|
||||
namespace Autotest {
|
||||
|
||||
class IFrameworkSettings;
|
||||
|
||||
namespace Internal {
|
||||
|
||||
class QtTestSettings;
|
||||
|
||||
class QtTestSettingsWidget : public QWidget
|
||||
class QtTestSettingsPage final : public ITestSettingsPage
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
QtTestSettingsWidget();
|
||||
|
||||
void setSettings(const QtTestSettings &settings);
|
||||
QtTestSettings settings() const;
|
||||
|
||||
private:
|
||||
Ui::QtTestSettingsPage m_ui;
|
||||
};
|
||||
|
||||
class QtTestSettingsPage : public ITestSettingsPage
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
QtTestSettingsPage(QSharedPointer<IFrameworkSettings> settings, const ITestFramework *framework);
|
||||
|
||||
QWidget *widget() override;
|
||||
void apply() override;
|
||||
|
||||
private:
|
||||
QSharedPointer<QtTestSettings> m_settings;
|
||||
QPointer<QtTestSettingsWidget> m_widget;
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
Reference in New Issue
Block a user