kig
base_mode.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef KIG_MODE_BASE_MODE_H
00019 #define KIG_MODE_BASE_MODE_H
00020
00021 #include "mode.h"
00022
00023 #include <qpoint.h>
00024 #include <vector>
00025
00026 class KigWidget;
00027 class ObjectHolder;
00028
00033 class BaseMode
00034 : public KigMode
00035 {
00036 QPoint mplc;
00037 std::vector<ObjectHolder*> moco;
00038
00039 void leftClicked( QMouseEvent* e, KigWidget* v );
00040 void leftMouseMoved( QMouseEvent*, KigWidget* );
00041 void leftReleased( QMouseEvent* e, KigWidget* v );
00042 void midClicked( QMouseEvent* e, KigWidget* v );
00043 void midReleased( QMouseEvent* e, KigWidget* v );
00044 void rightClicked( QMouseEvent*, KigWidget* );
00045 void mouseMoved( QMouseEvent* e, KigWidget* v );
00046
00047 protected:
00048 void enableActions();
00049
00050 std::vector<ObjectHolder*> oco();
00051 QPoint pointLocation();
00052 protected:
00053
00054 virtual void dragRect( const QPoint& p, KigWidget& w );
00055 virtual void dragObject( const std::vector<ObjectHolder*>& os, const QPoint& pointClickedOn, KigWidget& w, bool ctrlOrShiftDown );
00056 virtual void leftClickedObject( ObjectHolder* o, const QPoint& p,
00057 KigWidget& w, bool ctrlOrShiftDown ) = 0;
00058 virtual void midClicked( const QPoint& p, KigWidget& w ) = 0;
00059 virtual void rightClicked( const std::vector<ObjectHolder*>& oco, const QPoint& p, KigWidget& w ) = 0;
00060 virtual void mouseMoved( const std::vector<ObjectHolder*>& os, const QPoint& p, KigWidget& w, bool shiftpressed ) = 0;
00061
00062 protected:
00063 BaseMode( KigPart& );
00064 ~BaseMode();
00065 };
00066
00067 #endif