-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathView.h
More file actions
74 lines (56 loc) · 2.64 KB
/
View.h
File metadata and controls
74 lines (56 loc) · 2.64 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
//----------------------------------------------------------------------------//
// *** ДВИЖОК ГЕОИНФОРМАЦИОННОЙ СИСТЕМЫ *** //
// //
// Файл View.h //
// //
// *** TVIEW ВИД ДЛЯ ОТРИСОВКИ ГРАФИЧЕСКОЙ СЦЕНЫ *** //
// //
// Автор ГЛУЩЕНКО Сергей //
// //
// Москва //
//----------------------------------------------------------------------------//
#ifndef ViewH
#define ViewH
#include <QGraphicsView>
#include <QResizeEvent>
#include <QGraphicsScene>
#include <QBasicTimer>
#include <QLabel>
#include <QCursor>
class TView : public QGraphicsView
{
Q_OBJECT
signals:
private:
//Общие действия для конструкторов
void Contructor(void);
QCursor* CursorArrow; //Курсор "стрелка"
QCursor* CursorMove; //Курсор "движение карты"
QCursor* CursorRuler; //Курсор "линейка"
QLabel* Hint; //Всплывающая подсказка
QBasicTimer* HintTimer; //Таймер для сокрытия всплывающей подсказки
protected:
//Обработчик OnResize вида
void resizeEvent(QResizeEvent *event);
//Здесь ловлю момент, когда надо показывать всплывающую подсказку
bool event(QEvent *event);
//Обработчик событий таймеров
void timerEvent(QTimerEvent *event);
public:
//Инструменты по работе с картой
enum TTool
{
MOVE = 1, //Движение карты
RULER = 2, //Линейка
ARROW = 3 //Стрелка
};
TView(void);
TView(QGraphicsScene* Value);
virtual ~TView(void);
//Устанавливает вид курсора в соответствии с инструментом по работе с картой
void SetCursor(TTool Value);
//Закрывает всплывающую подсказку
void CloseHint(void);
void* OWNER; //Обязателен к заполнению
};
#endif