]> Shamusworld >> Repos - ttedit/blob - src/editwindow.h
Separated out app object, added character window.
[ttedit] / src / editwindow.h
1 //
2 // EDITWINDOW.H: Header file
3 //
4 // by James L. Hammons
5 // (C) 2008 Underground Software
6 //
7
8 #ifndef __EDITWINDOW_H__
9 #define __EDITWINDOW_H__
10
11 #include <QtGui>
12 #include "types.h"
13 #include "toolwindow.h"                                                 // For ToolType enum
14 #include "glyphpoints.h"
15
16 class EditWindow: public QWidget
17 {
18         Q_OBJECT
19
20         public:
21                 EditWindow(QWidget * parent = NULL);
22                 QSize minimumSizeHint() const;
23                 QSize sizeHint() const;
24
25         protected:
26                 void paintEvent(QPaintEvent * event);
27                 void mousePressEvent(QMouseEvent * event);
28                 void mouseMoveEvent(QMouseEvent * event);
29                 void mouseReleaseEvent(QMouseEvent * event);
30
31         private:
32                 void CreateCursors(void);
33                 QPoint GetAdjustedMousePosition(QMouseEvent * event);
34                 QPoint GetAdjustedClientPosition(int x, int y);
35
36                 QImage image;
37                 QPoint pt, ptOffset, ptPrevious;
38                 double scale;                                                   // Window scaling factor
39                 int32 offsetX, offsetY;                                 // Window offsets
40                 ToolType tool;                                                  // Current tool
41                 GlyphPoints pts;                                                // Glyph point structure
42                 int32 ptHighlight, oldPtHighlight, ptNextHighlight, oldPtNextHighlight;
43                 bool polyFirstPoint;
44
45                 ToolWindow * toolPalette;
46                 QCursor cur[8];
47 };
48
49 #endif  // __EDITWINDOW_H__