forked from bnufree/Hq
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdialog.h
165 lines (130 loc) · 4.44 KB
/
dialog.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
#include <QSystemTrayIcon>
#include <QTableWidget>
#include "qeastmoneyblockmangagerthread.h"
#include "qsinastkinfothread.h"
#include "qsinasearchthread.h"
#include "qsinastkresultmergethread.h"
typedef struct strColDisplay
{
QTableWidget* mTable;
int mColIndex;
bool mIsDisplay;
}TableColDisplayStatus;
Q_DECLARE_METATYPE(TableColDisplayStatus)
namespace Ui {
class MainDialog;
}
enum{
MENU_OPT_MINUTE,
MENU_OPT_DAY,
MENU_OPT_HSGT,
MENU_OPT_BLOCK,
};
typedef enum Display_Mode{
E_DISPLAY_ALL = 0,
E_DISPLAY_BLOCK = 1,
E_DISPLAY_STOCK_FULL,
E_DISPLAY_STOCK_MINI,
}DISPLAY_MODE;
struct HqTableMenuData
{
QString mStockCode;
QString mBlockCode;
int mMenuCmd;
};
Q_DECLARE_METATYPE(HqTableMenuData)
class Dialog : public QDialog
{
Q_OBJECT
public:
explicit Dialog(QWidget *parent = 0);
~Dialog();
//static void HQLISIINFOCBKFUNC(StockDataList& pDataList, void *pUser);
//static void HQBLOCKINFOCBKFUNC(BlockDataList& pDataList, void *pUser);
protected:
void resizeEvent(QResizeEvent *event);
void mousePressEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);
//bool eventFilter(QObject *obj, QEvent *event);
//void keyPressEvent(QKeyEvent *);
public slots:
void setSortType(int index);
void setBlockSort(int val);
void setBlockName();
void setStockMarket();
void setDisplayPage();
void setDisplayCol(bool isDisplay);
void setTargetSize(const QSize& size);
void updateBlockTable(const BlockDataList& pDataList);
void displayBlockRealtimeInfo();
void updateHqTable(const StockDataList& pDataList);
void displayBlockDetailInfoInTable(const QStringList& stklist);
void editFavorite();
void setDlgShow(QSystemTrayIcon::ActivationReason val);
void slotUpdate(int cur, int total);
void hqMenuOpt();
void slotUpdateMsg(const QString& msg);
void slotUpdateIndex(const StockDataList& pDataList);
void slotSystemTrayMenuClicked();
void slotWhetherDisplay();
void slotRestartMyself();
void slotDisplayAll();
void slotDisplayBlock();
void slotDisplayStockFull();
void slotDisplayStockMini();
void slotUpdateStockCodesList(const QStringList& list);
void slotTodayHSGUpdated();
void slotHistoryDataFinish();
private slots:
void on_zxgBtn_clicked();
void iniHqCenterAction();
void on_blkbtn_clicked();
void on_zjlxBtn_clicked();
void on_lhbBtn_clicked();
void on_closeBtn_clicked();
void on_srchBtn_clicked();
void on_minBtn_clicked();
void on_blocktbl_itemDoubleClicked(QTableWidgetItem *item);
void on_blocktbl_customContextMenuRequested(const QPoint &pos);
void on_hqtbl_customContextMenuRequested(const QPoint &pos);
void on_searchTxt_textChanged(const QString &arg1);
void on_DateMgrBtn_clicked();
void on_hqtbl_itemDoubleClicked(QTableWidgetItem *item);
void on_hqtbl_itemEntered(QTableWidgetItem *item);
void on_MainDialog_customContextMenuRequested(const QPoint &pos);
void on_hqtbl_itemClicked(QTableWidgetItem *item);
void on_blocktbl_itemClicked(QTableWidgetItem *item);
void on_HSGTBTN_clicked();
private:
Ui::MainDialog *ui;
QSystemTrayIcon *systemIcon;
QSinaStkInfoThread *mIndexThread;
QEastMoneyBlockMangagerThread *mBlockMgr;
QSinaStkResultMergeThread *mMergeThread;
QSinaSearchThread *mSearchThread;
QMap<QString, double> mStockMap;
QMap<QString, double> mBlockMap;
QMap<QString, QString> mBlockNameMap;
QMap<QString, QStringList> mBlockStkList;
QStringList mFavStkList;
QStringList mHSFoundsList;
QStringList mAllStkList;
int mCurBlockType;
int mDisplayMode;
int mSecSize;
bool mInit;
QSize mTargetSize;
QMenu *mHqCenterMenu;
QMenu *mHqHeaderMenu;
QMenu *mHqPageMenu;
QStringList mHqHeaderList;
int mDisplayCol;
QList<QAction*> mHqColActList;
QPoint windowPos;
QPoint mousePos;
QPoint dPos;
};
#endif // DIALOG_H