X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Feditwindow.h;h=f1518e9a4e27c1bd5fb5ebce24a75caa3128ec6b;hb=1881acb17ed405cdb5aa2cb333a7af77f644a86d;hp=8821da4905f6a683563ae8861131101e96b902a8;hpb=3ef71393f70213eb53db552605ae3c93f1303ee9;p=ttedit diff --git a/src/editwindow.h b/src/editwindow.h old mode 100755 new mode 100644 index 8821da4..f1518e9 --- a/src/editwindow.h +++ b/src/editwindow.h @@ -9,9 +9,11 @@ #define __EDITWINDOW_H__ #include -#include "types.h" +#include #include "toolwindow.h" // For ToolType enum #include "glyphpoints.h" +#include "painter.h" + class EditWindow: public QWidget { @@ -23,36 +25,36 @@ class EditWindow: public QWidget QSize sizeHint() const; protected: - void paintEvent(QPaintEvent * event); - void mousePressEvent(QMouseEvent * event); - void mouseMoveEvent(QMouseEvent * event); - void mouseReleaseEvent(QMouseEvent * event); + void paintEvent(QPaintEvent *); + void mousePressEvent(QMouseEvent *); + void mouseMoveEvent(QMouseEvent *); + void mouseReleaseEvent(QMouseEvent *); void keyPressEvent(QKeyEvent *); void keyReleaseEvent(QKeyEvent *); private: void CreateCursors(void); - QPoint GetAdjustedMousePosition(QMouseEvent * event); - QPoint GetAdjustedClientPosition(int x, int y); - void DrawGlyph(QPainter & p, GlyphPoints & glyph); - void DrawGlyphPoly(QPainter & p, GlyphPoints & glyph, uint16 poly); + void DrawGlyph(Painter & p, GlyphPoints & glyph); + void DrawGlyphPoly(Painter & p, GlyphPoints & glyph, uint16_t poly); + void ClearSelection(void); public: QImage image; - QPoint pt, ptOffset, ptPrevious; - double scale; // Window scaling factor - int32 offsetX, offsetY; // Window offsets - ToolType tool; // Current tool - GlyphPoints pts; // Glyph point structure - int32 ptHighlight, oldPtHighlight, ptNextHighlight, oldPtNextHighlight; - int16 polyHighlight, oldPolyHighlight; + Vector pt, ptOffset, ptPrevious; + ToolType tool; // Current tool + GlyphPoints pts; // Glyph point structure + int32_t ptHighlight, oldPtHighlight, ptNextHighlight, oldPtNextHighlight; + int16_t polyHighlight, oldPolyHighlight; bool polyFirstPoint; bool showRotationCenter, haveZeroPoint; - QPoint rotationCenter, rotationZeroPoint, rotationCurrentPoint; + Vector rotationCenter, rotationZeroPoint, rotationCurrentPoint; double rotationAngle; ToolWindow * toolPalette; - QCursor cur[11]; + QCursor cur[12]; + bool selectedPoints[65536]; // Potential memory leak :-O + QRect selection; + bool selectionInProgress; }; #endif // __EDITWINDOW_H__