summaryrefslogtreecommitdiffstats
path: root/examples/charts
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 /examples/charts
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>
Diffstat (limited to 'examples/charts')
-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);