Files
QTradeProgram/QMainwindow/QMainwindow.h
2025-08-22 10:59:38 +08:00

61 lines
1.2 KiB
C++

#pragma once
/*
主窗口 提供 UI 交互界面
- 显示、操作订阅列表,添加、删除
- 断开连、连接OpenD
- 大单监控使能
*/
#include <QSet>
#include <QtWidgets/QMainWindow>
#include <QTimer>
#include "ui_QMainwindow.h"
#include "QDataAcquisition.h"
#include "QBreathingLight.h"
#include "..\Sqbase\qlogmanager.h"
#include "..\Sqbase\qlogviewer.h"
#include "..\Sqbase\qorderprocessor.h"
#include "..\Sqbase\qbigordermanager.h"
#include "..\Sqbase\qbigorderviewer.h"
class QMainwindow : public QMainWindow
{
Q_OBJECT
public:
QMainwindow(QWidget *parent = Q_NULLPTR);
~QMainwindow();
private:
QSet<QString> m_setReplayCode;
int m_nReplyCount; // 订阅数量
QMap<QString, float> m_replyCodeQuantity;
QDataAcquisition* m_dataAcquisition;
QTimer* m_netCheckTimer;
QBreathingLight *m_lightWidget;
public:
void initWidget();
void initReplyManage();
void updateCodeTable();
QLogViewer* logViewer;
QList<QSharedPointer<ReplyCodeItem>> m_replyCodes;
QStandardItemModel *m_model;
QSortFilterProxyModel *m_proxyModel;
private:
QString toFixedDigitNumber(const QString& input);
void readReplyCodefile(QList<QSharedPointer<ReplyCodeItem>>& replyList);
void saveReplyCodefile();
QString escapeCsv(const QString &field);
private:
Ui::QMainwindowClass ui;
};