summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2020-02-23 12:26:06 +0200
committerAssam Boudjelthia <assam.boudjelthia@qt.io>2020-02-24 11:01:49 +0200
commitf93fc8561ea27b0c691492b19915aa72d3308e14 (patch)
tree781c40a851bf8dc6411e7eb73fe00e23b6a8bc4e
parent41bdefce20be3ebbeebaba215402211664a29c79 (diff)
Examples: add scrollbar to allow viewing all settings on Android
This fix is most relevant for Android, currently, if the screen size is small the settings will show cramped and not usable. Thus, adding a scrollbar to fix that. Task-number: QTBUG-80717 Change-Id: Icafd5f108191990c8bbdf5ab21049e07bb40cecb Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
-rw-r--r--examples/charts/piechartcustomization/mainwidget.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/examples/charts/piechartcustomization/mainwidget.cpp b/examples/charts/piechartcustomization/mainwidget.cpp
index 7c3648a2..2fe52a69 100644
--- a/examples/charts/piechartcustomization/mainwidget.cpp
+++ b/examples/charts/piechartcustomization/mainwidget.cpp
@@ -81,7 +81,10 @@ MainWidget::MainWidget(QWidget *parent)
m_legendCheckBox = new QCheckBox();
- QFormLayout *chartSettingsLayout = new QFormLayout();
+ QScrollArea *settingsScrollBar = new QScrollArea();
+ QWidget *settingsContentWidget = new QWidget();
+
+ QFormLayout *chartSettingsLayout = new QFormLayout(settingsContentWidget);
chartSettingsLayout->addRow("Theme", m_themeComboBox);
chartSettingsLayout->addRow("Antialiasing", m_aaCheckBox);
chartSettingsLayout->addRow("Animations", m_animationsCheckBox);
@@ -136,7 +139,7 @@ MainWidget::MainWidget(QWidget *parent)
QPushButton *insertSlice = new QPushButton("Insert slice");
QPushButton *removeSlice = new QPushButton("Remove selected slice");
- QFormLayout *seriesSettingsLayout = new QFormLayout();
+ QFormLayout *seriesSettingsLayout = new QFormLayout(settingsContentWidget);
seriesSettingsLayout->addRow("Horizontal position", m_hPosition);
seriesSettingsLayout->addRow("Vertical position", m_vPosition);
seriesSettingsLayout->addRow("Size factor", m_sizeFactor);
@@ -195,7 +198,7 @@ MainWidget::MainWidget(QWidget *parent)
m_labelPosition->addItem("Inside tangential", QPieSlice::LabelInsideTangential);
m_labelPosition->addItem("Inside normal", QPieSlice::LabelInsideNormal);
- QFormLayout *sliceSettingsLayout = new QFormLayout();
+ QFormLayout *sliceSettingsLayout = new QFormLayout(settingsContentWidget);
sliceSettingsLayout->addRow("Label", m_sliceName);
sliceSettingsLayout->addRow("Value", m_sliceValue);
sliceSettingsLayout->addRow("Pen", m_pen);
@@ -242,10 +245,13 @@ MainWidget::MainWidget(QWidget *parent)
settingsLayout->addWidget(chartSettings);
settingsLayout->addWidget(seriesSettings);
settingsLayout->addWidget(sliceSettings);
- settingsLayout->addStretch();
+
+ settingsContentWidget->setLayout(settingsLayout);
+ settingsScrollBar->setWidget(settingsContentWidget);
+ settingsScrollBar->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
QGridLayout *baseLayout = new QGridLayout();
- baseLayout->addLayout(settingsLayout, 0, 0);
+ baseLayout->addWidget(settingsScrollBar, 0, 0);
baseLayout->addWidget(m_chartView, 0, 1);
setLayout(baseLayout);