DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAChartBarItemSettingWidget.h
1#ifndef DACHARTBARITEMSETTINGWIDGET_H
2#define DACHARTBARITEMSETTINGWIDGET_H
3#include "DAGuiAPI.h"
4#include <QWidget>
5#include <QPointer>
6#include "DAAbstractChartItemSettingWidget.h"
7#include "qwt_plot_curve.h"
8#include "qwt_symbol.h"
9#include "qwt_column_symbol.h"
10#include "qwt_plot_barchart.h"
11
12// Qt
13class QAbstractButton;
14// qwt
15class QwtPlot;
16class QwtColumnSymbol;
17class QwtPlotBarChart;
18
19namespace Ui
20{
21class DAChartBarItemSettingWidget;
22}
23
24namespace DA
25{
26class DAChartPlotItemSettingWidget;
33{
34 Q_OBJECT
35
36public:
37 explicit DAChartBarItemSettingWidget(QWidget* parent = nullptr);
39 // item设置了
40 virtual void updateUI(QwtPlotItem* item) override;
41 // 根据ui更新plotitem
42 void applySetting(QwtPlotBarChart* item);
43 // 标题
44 void setTitle(const QString& t);
45 QString getTitle() const;
46 // Bar LegendMode
47 void setBarLegendMode(QwtPlotBarChart::LegendMode v);
48 QwtPlotBarChart::LegendMode getBarLegendMode() const;
49 // fill编辑
50 void setEnableFillEdit(bool on = true);
51 bool isEnableFillEdit() const;
52 // 是否允许边框设置
53 void setEnableEdgeEdit(bool on = true);
54 bool isEnableEdgeEdit() const;
55 // 填充
56 QBrush getFillBrush() const;
57 // 边线
58 QPen getEdgePen() const;
59 // 基线
60 double getBaseLine() const;
61 bool isHaveBaseLine() const;
62 // 清空界面
63 void resetUI();
64 // 获取itemplot widget
65 DAChartPlotItemSettingWidget* getItemSettingWidget() const;
66
67 // 布局策略相关接口
68 void setLayoutPolicy(QwtPlotAbstractBarChart::LayoutPolicy policy);
69 QwtPlotAbstractBarChart::LayoutPolicy getLayoutPolicy() const;
70 void setLayoutHint(double hint);
71 double getLayoutHint() const;
72
73 void setSpacing(int spacing);
74 int getSpacing() const;
75
76 void setMargin(int margin);
77 int getMargin() const;
78 // 获取当前界面选中的QwtColumnSymbol::FrameStyle
79 int getCurrentSelectFrameStyle() const;
80
81public slots:
82 // 填充
83 void setFillBrush(const QBrush& v);
84 // 边线
85 void setEdgePen(const QPen& pen);
86 // 基线
87 void setBaseLine(double v);
88
89private slots:
90 void onCheckBoxLegendModeChartClicked(bool checked);
91 void onCheckBoxLegendModeBarClicked(bool checked);
92 void onGroupBoxFillClicked(bool on);
93 void onGroupBoxEdgeClicked(bool on);
94 void onFillBrushChanged(const QBrush& b);
95 void onEdgePenChanged(const QPen& p);
96 void on_lineEditBaseLine_editingFinished();
97 void onLayoutPolicyChanged(int index);
98 void onSpacingValueChanged(int value);
99 void onMarginValueChanged(int value);
100 void onLayoutHintValueChanged(double value);
101 void onButtonGroupFrameStyleClicked(QAbstractButton* button);
102protected slots:
103 virtual void plotItemAttached(QwtPlotItem* plotItem, bool on) override;
104
105private:
106 Ui::DAChartBarItemSettingWidget* ui;
107};
108}
109
110#endif // DACHARTBARITEMSETTINGWIDGET_H
chart设置的基类封装了基本操作
Definition DAAbstractChartItemSettingWidget.h:32
曲线设置窗口
Definition DAChartBarItemSettingWidget.h:33
QwtPlotItem的设置窗口
Definition DAChartPlotItemSettingWidget.h:21
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44