summaryrefslogtreecommitdiffstats
path: root/examples/scribble/scribble.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scribble/scribble.h')
-rw-r--r--examples/scribble/scribble.h87
1 files changed, 87 insertions, 0 deletions
diff --git a/examples/scribble/scribble.h b/examples/scribble/scribble.h
new file mode 100644
index 0000000..2b38a61
--- /dev/null
+++ b/examples/scribble/scribble.h
@@ -0,0 +1,87 @@
+/****************************************************************************
+**
+** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
+**
+** This file is part of an example program for Qt. This example
+** program may be used, distributed and modified without limitation.
+**
+*****************************************************************************/
+
+#ifndef SCRIBBLE_H
+#define SCRIBBLE_H
+
+#include <qmainwindow.h>
+#include <qpen.h>
+#include <qpoint.h>
+#include <qpixmap.h>
+#include <qwidget.h>
+#include <qstring.h>
+#include <qpointarray.h>
+
+class QMouseEvent;
+class QResizeEvent;
+class QPaintEvent;
+class QToolButton;
+class QSpinBox;
+
+class Canvas : public QWidget
+{
+ Q_OBJECT
+
+public:
+ Canvas( QWidget *parent = 0, const char *name = 0 );
+
+ void setPenColor( const QColor &c )
+ { pen.setColor( c ); }
+
+ void setPenWidth( int w )
+ { pen.setWidth( w ); }
+
+ QColor penColor()
+ { return pen.color(); }
+
+ int penWidth()
+ { return pen.width(); }
+
+ void save( const QString &filename, const QString &format );
+
+ void clearScreen();
+
+protected:
+ void mousePressEvent( QMouseEvent *e );
+ void mouseReleaseEvent( QMouseEvent *e );
+ void mouseMoveEvent( QMouseEvent *e );
+ void resizeEvent( QResizeEvent *e );
+ void paintEvent( QPaintEvent *e );
+
+ QPen pen;
+ QPointArray polyline;
+
+ bool mousePressed;
+
+ QPixmap buffer;
+
+};
+
+class Scribble : public QMainWindow
+{
+ Q_OBJECT
+
+public:
+ Scribble( QWidget *parent = 0, const char *name = 0 );
+
+protected:
+ Canvas* canvas;
+
+ QSpinBox *bPWidth;
+ QToolButton *bPColor, *bSave, *bClear;
+
+protected slots:
+ void slotSave();
+ void slotColor();
+ void slotWidth( int );
+ void slotClear();
+
+};
+
+#endif