summaryrefslogtreecommitdiffstats
path: root/examples/charts/chartsgallery/legendwidget.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/charts/chartsgallery/legendwidget.h')
-rw-r--r--examples/charts/chartsgallery/legendwidget.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/examples/charts/chartsgallery/legendwidget.h b/examples/charts/chartsgallery/legendwidget.h
new file mode 100644
index 00000000..2ca128be
--- /dev/null
+++ b/examples/charts/chartsgallery/legendwidget.h
@@ -0,0 +1,61 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#ifndef LEGENDWIDGET_H
+#define LEGENDWIDGET_H
+
+#include "contentwidget.h"
+
+#include <QBarSeries>
+#include <QChart>
+#include <QChartView>
+#include <QCheckBox>
+#include <QDoubleSpinBox>
+#include <QGroupBox>
+#include <QPushButton>
+
+class LegendWidget : public ContentWidget
+{
+ Q_OBJECT
+public:
+ explicit LegendWidget(QWidget *parent = nullptr);
+ void createUi();
+ void createSeries();
+ void updateLegendSpinbox();
+
+public slots:
+ void toggleAttached();
+ void toggleInteractive();
+ void toggleBold();
+ void toggleItalic();
+ void addBarset();
+ void removeBarset();
+ void setLegendAlignment();
+ void fontSizeChanged();
+ void updateLegendLayout();
+
+protected:
+ void resizeEvent(QResizeEvent *) override;
+
+private:
+ QChart *m_chart;
+ QChartView *m_chartView;
+ QBarSeries *m_series;
+
+ QCheckBox *m_toggleAttachedButton;
+ QCheckBox *m_interactiveButton;
+ QCheckBox *m_boldButton;
+ QCheckBox *m_italicButton;
+ QPushButton *m_addSetButton;
+ QPushButton *m_removeSetButton;
+ QPushButton *m_alignmentButton;
+ QDoubleSpinBox *m_fontSize;
+
+ QGroupBox *m_geometrySettings;
+ QDoubleSpinBox *m_legendPosX;
+ QDoubleSpinBox *m_legendPosY;
+ QDoubleSpinBox *m_legendWidth;
+ QDoubleSpinBox *m_legendHeight;
+};
+
+#endif