F:/KPlato/koffice/libs/kofficecore/tests/Tool.h

Aller à la documentation de ce fichier.
00001 #ifndef TOOL_H
00002 #define TOOL_H
00003 
00004 #include <QRectF>
00005 
00006 class QMouseEvent;
00007 class QPainter;
00008 
00009 class Canvas;
00010 
00011 class Tool
00012 {
00013 public:    
00014     Tool( Canvas * canvas )
00015     : m_canvas ( canvas )
00016     , m_buttonPressed( false )
00017     {}
00018     virtual ~Tool() {}
00019 
00020     virtual void mouseMoveEvent(QMouseEvent *e);
00021     virtual void mousePressEvent(QMouseEvent *e);
00022     virtual void mouseReleaseEvent(QMouseEvent *e) = 0;
00023 
00024     virtual void paint( QPainter & p ) = 0;
00025 
00026 protected:
00027     Canvas * m_canvas;
00028     bool m_buttonPressed;
00029     QRectF m_rect;
00030 };
00031 
00032 class CreateTool : public Tool
00033 {
00034 public:    
00035     CreateTool( Canvas * canvas );
00036     virtual ~CreateTool();
00037 
00038     virtual void mouseReleaseEvent(QMouseEvent *e);
00039 
00040     virtual void paint( QPainter & p );
00041 
00042 protected:
00043 };
00044 
00045 class SelectTool : public Tool
00046 {
00047 public:    
00048     SelectTool( Canvas * canvas );
00049     virtual ~SelectTool();
00050 
00051     virtual void mouseReleaseEvent(QMouseEvent *e);
00052 
00053     virtual void paint( QPainter & p );
00054 
00055 protected:
00056 };
00057 
00058 class RemoveTool : public Tool
00059 {
00060 public:    
00061     RemoveTool( Canvas * canvas );
00062     virtual ~RemoveTool();
00063 
00064     virtual void mouseReleaseEvent(QMouseEvent *e);
00065 
00066     virtual void paint( QPainter & p );
00067 
00068 protected:
00069 };
00070 
00071 #endif /* TOOL_H */

Généré le Wed Nov 22 23:41:04 2006 pour KPlato par  doxygen 1.5.1-p1