123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #ifndef SETTINGNUM_H
- #define SETTINGNUM_H
- #include <QDialog>
- #include "spdlog/spdlog.h"
- #include "EyeMapInfo.h"
- #include <QStandardItemModel>
- #include <QTableView>
- class OneShadow;
- class OneSettingItem;
- namespace Ui {
- class SettingNum;
- }
- class SettingNum : public QDialog
- {
- Q_OBJECT
- public:
- explicit SettingNum(QDialog *parent = nullptr);
- ~SettingNum();
- /* 设置行数和列数 */
- void setRowAndColumn(int row, int column);
- /* 设置每个项的信息 */
- void setEveryEyeMapInfo(const QList<OneEyeMapInfo> &listInfo);
- /* 设置可用的通道信息 */
- void setChannelList(const QList<OneChannelInfo> &listChannelInfo);
- protected:
- // void paintEvent(QPaintEvent *event) override;
- /* 事件过滤器 */
- bool eventFilter(QObject *watched, QEvent *event) override;
- private slots:
- /* 关闭按钮槽函数 */
- void do_pBtn_close();
- /* 点击了OK按钮 */
- void do_pBtn_ok();
- /* 点击了取消按钮 */
- void do_pBtn_cancel();
- /* 选择行和列槽函数 */
- void do_selectRowAndColumn(int index);
- /* 通道选择槽函数,选择了一个通道,取消其他项可能已经选择的相同通道 */
- void do_selectChannel(const OscChnNum channel, const QString &channelName);
- private:
- /* 布局item */
- void layoutItem(int num);
- /* 初始化表格列表 */
- void initTableList();
- public:
- int row = 0; /* 行 */
- int column = 0; /* 列 */
- bool isOk = false; /* 是否点击了OK按钮 */
- private:
- Ui::SettingNum *ui;
- std::shared_ptr<spdlog::logger> m_logger = nullptr;
- OneShadow *m_shadow = nullptr;
- QList<OneSettingItem*> m_listItem;
- QStandardItemModel *m_model = nullptr;
- QTableView *m_tableView = nullptr;
- };
- #endif // SETTINGNUM_H
|