DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAChartOperateWidget.h
1#ifndef DACHARTOPERATEWIDGET_H
2#define DACHARTOPERATEWIDGET_H
3#include <QWidget>
4#include "DAGuiAPI.h"
5#include "DAFigureWidget.h"
6#include "DAAbstractOperateWidget.h"
7namespace Ui
8{
9class DAChartOperateWidget;
10}
11namespace DA
12{
13DA_IMPL_FORWARD_DECL(DAChartOperateWidget)
14class DAFigureFactory;
23{
24 Q_OBJECT
26public:
27 DAChartOperateWidget(QWidget* parent = nullptr);
29 // 安装FigureFactory,针对继承的DAFigureWidget需要安装新的工厂,DAChartOperateWidget负责工厂的销毁
30 void setupFigureFactory(DAFigureFactory* factory);
31 // 拿出之前的工厂
32 DAFigureFactory* takeFactory();
33 // 获取工厂
34 DAFigureFactory* getFigureFactory() const;
35 // 添加一个Figure
36 virtual DAFigureWidget* createFigure(const QString& name = QString());
37 // 获取所有的绘图
38 QList< DAFigureWidget* > getFigureList() const;
39 // 获取当前的fig,如果没有返回nullptr
40 DAFigureWidget* getCurrentFigure() const;
41 DAFigureWidget* gcf() const;
42 // 设置当前的figure
43 void setCurrentFigure(int index);
44 // 获取figure
45 DAFigureWidget* getFigure(int index) const;
46 DAFigureWidget* findFigure(const QString& id) const;
47 // 获取figure的命名
48 QString getFigureName(int index) const;
49 QString getFigureName(DAFigureWidget* f) const;
50 // 设置绘图名称
51 void setFigureName(int index, const QString& name);
52 void setFigureName(DAFigureWidget* f, const QString& name);
53 // 获取fig在DAChartOperateWidget的索引
54 int getFigureIndex(DAFigureWidget* f) const;
55 // 删除窗口
56 void removeFigure(DAFigureWidget* f, bool deleteFigure = true);
57 // 获取当前的chart,如果没有返回nullptr
58 DAChartWidget* getCurrentChart() const;
59 DAChartWidget* gca() const;
60 QList< DAChartWidget* > getAllCharts() const;
61 QList< DAChartWidget* > gcas() const;
62 // 获取绘图的数量
63 int getFigureCount() const;
64 // 获取QUndoStack
65 QUndoStack* getUndoStack() override;
66public Q_SLOTS:
67 // 清除所有绘图
68 void clear();
69
70protected:
71 // 初始化figure的连接,这个函数用于重载createFigure函数时创建fig后绑定槽函数到DAChartOperateWidget用
72 void initFigureConnect(DAFigureWidget* fig);
73private slots:
74 // tab窗口改变
75 void onTabWidgetCurrentChanged(int index);
76 // tab窗口关闭
77 void onTabCloseRequested(int index);
78 //
79 void onFigureTitleChanged(const QString& t);
80Q_SIGNALS:
96 void figureTitleChanged(DA::DAFigureWidget* f, const QString& title);
97
109
115
116 // 当前选中的发生改变
124
125private:
126 Ui::DAChartOperateWidget* ui;
127};
128} // end of namespace DA
129#endif // DACHARTOPERATEWIDGET_H
操作窗口的基类
Definition DAAbstractOperateWidget.h:12
绘图操作窗口
Definition DAChartOperateWidget.h:23
void currentFigureChanged(DA::DAFigureWidget *f, int index)
当前的figure改变了
void chartAdded(DA::DAChartWidget *c)
添加了chart
void chartRemoved(DA::DAChartWidget *c)
绘图移除
void figureTitleChanged(DA::DAFigureWidget *f, const QString &title)
绘图的标题发生了改变
void figureCreated(DA::DAFigureWidget *f)
创建了一个绘图
void currentChartChanged(DA::DAChartWidget *c)
当前的绘图发生了变更
void figureRemoving(DA::DAFigureWidget *f)
绘图即将关闭
增强的Qwt图表控件,提供完整的数据绘图、样式设置和交互控制功能
Definition DAChartWidget.h:40
用于生成DAFigureWidget的工厂类,如果有继承的DAFigureWidget,则需要继承此工厂类提供DAFigureWidget*
Definition DAFigureFactory.h:12
绘图窗口
Definition DAFigureWidget.h:35
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44