-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbd_checker.h
More file actions
135 lines (113 loc) · 3.37 KB
/
bd_checker.h
File metadata and controls
135 lines (113 loc) · 3.37 KB
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
/***************************************************************************
***************************** BD_CHECKER ****************************
***************************************************************************/
// Author : Nikita Basharov
// Version : 0.1
// Date : 05.2017
// Company : SPP/PNBO
#ifndef BD_CHECKER_H
#define BD_CHECKER_H
#define FNAME "Birthday.txt"
#define INI_FNAME "BD_Checker.ini"
#include <QtGui/QDialog>
#include "ui_bd_checker.h"
#include <QFile>
#include <QDateTime>
#include <QMap>
#include <QDebug>
#include <QTextCodec>
#include <QTimer>
#include <QAbstractEventDispatcher>
#include <QObject>
#include "toolsclass.h"
#include <QSystemTrayIcon>
#include <QMenu>
#include <QSettings>
#include <QVariant>
#include <QTableView>
#include <QStandardItemModel>
#include <QModelIndex>
#include <QHeaderView>
#include <QThread>
#include <QObject>
#include "detail_info.h"
#include <QDir>
//#include "qttelegrambot.h"
class MyTimer : public QThread
{
Q_OBJECT
public:
MyTimer(){};
~MyTimer(){};
QTime noyif_time;
private slots:
void count();
signals:
void remind_bd();
};
//______________________________________________________________
class BD_Checker : public QDialog
{
Q_OBJECT
public:
BD_Checker(QWidget *parent = 0, Qt::WFlags flags = 0);
~BD_Checker();
// Settings
//_____________________________
ToolsClass settings_form; // Ôîðìà íàñòðîåê
Detail_Info detail_info; // Ôîðìà èíôîðìàöèè
bool settings_Changed_flag; // Ïðîâåðêà íà èçìåíåíèå èíè ôàéëà â äåñòðóêòîðå
private:
// Òàáëèöà
//_____________________________
QStandardItemModel *model ; // Ìîäåëü òàêáëèöû
QStandardItemModel *search_model; // Ìîäåëü Ïîèñêà
QStandardItem *item ; // ß÷åéêà òàáëèöû
QStringList headers; // Çàãîëîâêè äëÿ êíîïêè ÎÊ
QMap<QDate, Person > person_data; // Ïåðñîíàëüíûå äàííûå
QVector<Person> pers_per_index; // Äàííûå äëÿ ïîèñêà
//_____________________________
MyTimer* timer_thr; // Òàéìåð äëÿ óâåäîìëåíèé
//_____________________________
QDate today; // Äàòà ñåãîäíÿ
QString outStr; // Ñòðîêà íà ôîðìå
QStringList ok_list; // Ñòðîêè äëÿ êíîïêè ÎÊ
bool hasBD; // Åñòü ëè ÄÐ íà ïåðèîä óâåäîìëåíèÿ
//_____________________________
// Slots
//_____________________________
private slots:
void check (); // Ïðîâåðèì ÄÐ
void ok (); // Íàæàëè îê
void first_time (); // Ïðè ïåðâîì çàïóñêå
void vizual (); // Âûâåäåò íà ôîðìó
void remind_bd (); // Íàñòðîéêè
void save_settings (int _n); // Ñîõðàíèòü íàñòðîéêè
void save_person (); // Ñîõðàíèì ÷åëîâåêà
void apply_search (QString _txt); // Ïðèìåíèòü ïîèñê
//_____________________________
// Tray slots
//_____________________________
void showTrayIcon ();
void trayIconActivated (QSystemTrayIcon::ActivationReason reason);
void trayActionExecute ();
void setTrayIconActions ();
void changeEvent (QEvent*);
void showDetailInfo (QModelIndex _ind);
//_____________________________
//_____________________________
// Tray
//_____________________________
private:
QSystemTrayIcon *trayIcon;
QMenu *trayIconMenu;
QAction *minimizeAction ;
QAction *restoreAction ;
QAction *quitAction ;
//_____________________________
int readFile (); // Ïðî÷èòàåì ôàéë
void readIni (); // Ïðî÷èòàåì èíè
void createIni(); // âîçìåì íàñòðîéêè èç èíè
Ui::BD_CheckerClass ui;
};
#endif // BD_CHECKER_H