DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAPySeriesTableModel.h
1#ifndef DAPYSERIESTABLEMODEL_H
2#define DAPYSERIESTABLEMODEL_H
3#include "DAGuiAPI.h"
4#include "DAAbstractCacheWindowTableModel.h"
5#include <QAbstractTableModel>
6#include "DAData.h"
7#include "DAAutoincrementSeries.hpp"
8namespace DA
9{
10
15{
16 Q_OBJECT
17 DA_DECLARE_PRIVATE(DAPySeriesTableModel)
18public:
19 DAPySeriesTableModel(QObject* parent = nullptr);
21
22public:
23 virtual int columnCount(const QModelIndex& parent = QModelIndex()) const override;
24 virtual Qt::ItemFlags actualFlags(int actualRow, int actualColumn) const override;
25 virtual QVariant actualHeaderData(int actualSection, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
26 virtual int actualRowCount() const override;
27 virtual QVariant actualData(int actualRow, int actualColumn, int role = Qt::DisplayRole) const override;
28
29public:
30 void setSeries(const QList< DAPySeries >& series);
31 QList< DAPySeries > getSeries() const;
32 // 设置滑动窗模式的起始行
33 virtual void setCacheWindowStartRow(int startRow) override;
34 // 追加series
35 void appendSeries(const DAPySeries& s);
36 void appendSeries(const DAAutoincrementSeries< double >& s);
37 // 插入series,index如果超出范围,会append,例如[s0,s1],insertSeries(3,s2),结果是[s0,s1,s2]
38 void insertSeries(int c, const DAPySeries& s);
39 void insertSeries(int c, const DAAutoincrementSeries< double >& s);
40 // 把series设置到对应位置,如果有,则替换
41 void setSeriesAt(int c, const DAPySeries& s);
42 void setSeriesAt(int c, const DAAutoincrementSeries< double >& s);
43 // 设置表头的名称
44 void setColumnHeader(int c, const QString& head);
45 QString getColumnHeader(int c) const;
46 // 清除
47 void clearData();
48 // 设置表头,如果不设置,则返回的是series的名字作为表头
49 void setHeaderLabel(const QStringList& head);
50 // 获取当前维护的series
51 int getSeriesCount() const;
52 // 获取所有表头
53 QList< QString > getSettingHeaderLabels() const;
54 //
55};
56}
57
58#endif // DAPYSERIESTABLEMODEL_H
这是一个有缓存窗的模型,模型的显示行数固定在缓存窗的大小,这个模型适合超多行数据的显示
Definition DAAbstractCacheWindowTableModel.h:16
这是描述等步长自增序列的类,包含了基础值和步长,可以把它当做一个数组调用
Definition DAAutoincrementSeries.hpp:24
用于显示一系列series
Definition DAPySeriesTableModel.h:15
对Pandas.Series的Qt封装
Definition DAPySeries.h:22
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44