#include <QtGui>
#include <stdint.h>
+#include "action.h"
#include "container.h"
class DrawingView: public QWidget
public:
DrawingView(QWidget * parent = NULL);
+ public:
+ void SetRotateToolActive(bool state = true);
+ void SetAddLineToolActive(bool state = true);
+ void SetAddCircleToolActive(bool state = true);
+ void SetAddDimensionToolActive(bool state = true);
+ void SetGridSize(uint32_t);
+ void UpdateGridBackground(void);
+
+ public slots:
+ void AddNewObjectToDocument(Object *);
+
protected:
void paintEvent(QPaintEvent * event);
+ void resizeEvent(QResizeEvent * event);
void mousePressEvent(QMouseEvent * event);
void mouseMoveEvent(QMouseEvent * event);
void mouseReleaseEvent(QMouseEvent * event);
QPoint GetAdjustedMousePosition(QMouseEvent * event);
QPoint GetAdjustedClientPosition(int x, int y);
+ public:
+ bool useAntialiasing;
+
private:
+// QBrush * backgroundBrush;
+ QPixmap gridBackground;
double scale; // Window scaling factor
int32_t offsetX, offsetY; // Window offsets
+ public:
Container document;
- double gridSpacing;
- bool collided;
-/* QSize minimumSizeHint() const;
- QSize sizeHint() const;
-
+ double gridSpacing; // Grid spacing in base units
+ uint32_t gridPixels; // Grid size in pixels
+// double gridBaseUnits; // Grid size in base units
private:
- void CreateCursors(void);
- QPoint GetAdjustedMousePosition(QMouseEvent * event);
- QPoint GetAdjustedClientPosition(int x, int y);
-
- QImage image;
- QPoint pt, ptOffset, ptPrevious;
- ToolType tool; // Current tool
- GlyphPoints pts; // Glyph point structure
- int32 ptHighlight, oldPtHighlight, ptNextHighlight, oldPtNextHighlight;
- bool polyFirstPoint;
+ bool collided;
+//Should this go into Object's class variables???
+ bool rotateTool;
+ double rx, ry;
+ bool scrollDrag;
+ Vector oldPoint;
+ bool addLineTool;
+ bool addCircleTool;
+ bool addDimensionTool;
+// bool selectionInProgress;
+// QRectF selection;
- ToolWindow * toolPalette;
- QCursor cur[8];
-*/
+ public:
+ Action * toolAction;
};
#endif // __DRAWINGVIEW_H__