diff options
-rw-r--r-- | examples/widget/chart.cpp | 7 | ||||
-rw-r--r-- | examples/widget/chart.h | 2 | ||||
-rw-r--r-- | examples/widget/main.cpp | 19 |
3 files changed, 17 insertions, 11 deletions
diff --git a/examples/widget/chart.cpp b/examples/widget/chart.cpp index 79833eaa..5a3a2be0 100644 --- a/examples/widget/chart.cpp +++ b/examples/widget/chart.cpp @@ -175,14 +175,9 @@ void ChartModifier::changePresetCamera() preset = QDataVis::PresetFrontLow; } -void ChartModifier::changeTheme() +void ChartModifier::changeTheme(int theme) { - static int theme = QDataVis::ThemeBlueCerulean; - m_chart->setTheme((QDataVis::ColorTheme)theme); - - if (++theme > QDataVis::ThemeLight) - theme = QDataVis::ThemeSystem; } void ChartModifier::changeTransparency() diff --git a/examples/widget/chart.h b/examples/widget/chart.h index caae4fff..cb16e24b 100644 --- a/examples/widget/chart.h +++ b/examples/widget/chart.h @@ -38,7 +38,6 @@ public: void resetTemperatureData(); void changeStyle(); void changePresetCamera(); - void changeTheme(); void changeTransparency(); void changeSelectionMode(); void changeFont(const QFont &font); @@ -51,6 +50,7 @@ public: public slots: void changeShadowQuality(int quality); + void changeTheme(int theme); void shadowQualityUpdatedByVisual(QDataVis::ShadowQuality shadowQuality); signals: diff --git a/examples/widget/main.cpp b/examples/widget/main.cpp index e9fda889..340b3c4c 100644 --- a/examples/widget/main.cpp +++ b/examples/widget/main.cpp @@ -52,8 +52,16 @@ int main(int argc, char **argv) hLayout->addWidget(container, 1); hLayout->addLayout(vLayout); - QPushButton *themeButton = new QPushButton(widget); - themeButton->setText(QStringLiteral("Change theme")); + QComboBox *themeList = new QComboBox(widget); + themeList->addItem(QStringLiteral("System")); + themeList->addItem(QStringLiteral("Blue Cerulean")); + themeList->addItem(QStringLiteral("Blue Icy")); + themeList->addItem(QStringLiteral("Blue Ncs")); + themeList->addItem(QStringLiteral("Brown Sand")); + themeList->addItem(QStringLiteral("Dark")); + themeList->addItem(QStringLiteral("High Contrast")); + themeList->addItem(QStringLiteral("Light")); + themeList->setCurrentIndex(0); QPushButton *labelButton = new QPushButton(widget); labelButton->setText(QStringLiteral("Change label style")); @@ -109,13 +117,14 @@ int main(int argc, char **argv) vLayout->addWidget(rotationSliderX, 0, Qt::AlignTop); vLayout->addWidget(new QLabel(QStringLiteral("Rotate vertically"))); vLayout->addWidget(rotationSliderY, 0, Qt::AlignTop); - vLayout->addWidget(themeButton, 0, Qt::AlignTop); vLayout->addWidget(labelButton, 0, Qt::AlignTop); vLayout->addWidget(styleButton, 0, Qt::AlignTop); vLayout->addWidget(cameraButton, 0, Qt::AlignTop); vLayout->addWidget(selectionButton, 0, Qt::AlignTop); vLayout->addWidget(backgroundCheckBox); vLayout->addWidget(gridCheckBox); + vLayout->addWidget(new QLabel(QStringLiteral("Change theme"))); + vLayout->addWidget(themeList); vLayout->addWidget(new QLabel(QStringLiteral("Adjust shadow quality"))); vLayout->addWidget(shadowQuality); vLayout->addWidget(new QLabel(QStringLiteral("Change font"))); @@ -130,7 +139,6 @@ int main(int argc, char **argv) QObject::connect(rotationSliderX, &QSlider::valueChanged, modifier, &ChartModifier::rotateX); QObject::connect(rotationSliderY, &QSlider::valueChanged, modifier, &ChartModifier::rotateY); - QObject::connect(themeButton, &QPushButton::clicked, modifier, &ChartModifier::changeTheme); QObject::connect(labelButton, &QPushButton::clicked, modifier, &ChartModifier::changeTransparency); QObject::connect(styleButton, &QPushButton::clicked, modifier, &ChartModifier::changeStyle); @@ -144,6 +152,9 @@ int main(int argc, char **argv) QObject::connect(gridCheckBox, &QCheckBox::stateChanged, modifier, &ChartModifier::setGridEnabled); + QObject::connect(themeList, SIGNAL(currentIndexChanged(int)), modifier, + SLOT(changeTheme(int))); + QObject::connect(shadowQuality, SIGNAL(currentIndexChanged(int)), modifier, SLOT(changeShadowQuality(int))); QObject::connect(modifier, &ChartModifier::shadowQualityChanged, shadowQuality, |