2 // EDITWINDOW.H: Header file
5 // (C) 2008 Underground Software
8 #ifndef __EDITWINDOW_H__
9 #define __EDITWINDOW_H__
13 #include "toolwindow.h" // For ToolType enum
14 #include "glyphpoints.h"
16 class EditWindow: public QWidget
21 EditWindow(QWidget * parent = NULL);
22 QSize minimumSizeHint() const;
23 QSize sizeHint() const;
26 void paintEvent(QPaintEvent *);
27 void mousePressEvent(QMouseEvent *);
28 void mouseMoveEvent(QMouseEvent *);
29 void mouseReleaseEvent(QMouseEvent *);
30 void keyPressEvent(QKeyEvent *);
31 void keyReleaseEvent(QKeyEvent *);
34 void CreateCursors(void);
35 QPoint GetAdjustedMousePosition(QMouseEvent *);
36 QPoint GetAdjustedClientPosition(int x, int y);
37 void DrawGlyph(QPainter & p, GlyphPoints & glyph);
38 void DrawGlyphPoly(QPainter & p, GlyphPoints & glyph, uint16_t poly);
42 QPoint pt, ptOffset, ptPrevious;
43 double scale; // Window scaling factor
44 int32_t offsetX, offsetY; // Window offsets
45 ToolType tool; // Current tool
46 GlyphPoints pts; // Glyph point structure
47 int32_t ptHighlight, oldPtHighlight, ptNextHighlight, oldPtNextHighlight;
48 int16_t polyHighlight, oldPolyHighlight;
50 bool showRotationCenter, haveZeroPoint;
51 QPoint rotationCenter, rotationZeroPoint, rotationCurrentPoint;
54 ToolWindow * toolPalette;
58 #endif // __EDITWINDOW_H__