35 #ifndef ANATOMIST_CONTROLER_CONTROL_H 
   36 #define ANATOMIST_CONTROLER_CONTROL_H 
   41 #include <qtabwidget.h> 
   48 class QTapAndHoldGesture;
 
  108     const std::string& 
name()
 const { 
return myName; }
 
  146         { 
return( !
operator == ( k ) ); }
 
  152           if ( entry1.
key == entry2.
key )
 
  154           return entry1.
key < entry2.
key;
 
  211     virtual void execute( 
int x, 
int y, 
int globalX, 
int globalY ) = 0;
 
  220     typedef void (T:: * 
Callback)( 
int x, 
int y, 
int globalX, 
int globalY );
 
  225     virtual void execute( 
int x, 
int y, 
int globalX, 
int globalY );
 
  240     virtual void execute( 
int delta, 
int x, 
int y, 
int globalX, 
int globalY ) = 0;
 
  248     typedef void (T:: * 
Callback)( 
int delta, 
int x, 
int y, 
int globalX, 
int globalY );
 
  253     virtual void execute( 
int delta, 
int x, 
int y, 
int globalX, 
int globalY );
 
  316     virtual void execute( 
int xOffset, 
int yOffset, 
int height, 
int width ) = 0;
 
  324     typedef void (T:: * 
Callback)( 
int xOffset, 
int yOffset, 
int height, 
int width );
 
  329     virtual void execute( 
int xOffset, 
int yOffset, 
int height, 
int width );
 
  341     virtual void execute( 
int posX = 0, 
int posY = 0, 
int oldPosX = 0, 
int oldPosY = 0 ) = 0;
 
  349     typedef void (T:: * 
Callback)( int, int, int, int );
 
  354     virtual void execute( 
int posX = 0, 
int posY = 0, 
int oldPosX = 0, 
int oldPosY = 0 );
 
  390     virtual void execute( 
int height, 
int width, 
int oldHeight, 
int oldWidth ) = 0;
 
  398       typedef void (T:: * 
Callback)( 
int height, 
int width, 
int oldHeight, 
 
  404       virtual void execute( 
int height, 
int width, 
int oldHeight, 
 
  430       virtual void execute( 
bool spontaneous );
 
  472     template <
typename T>
 
  482       virtual void execute( QPinchGesture * );
 
  498     template <
typename T>
 
  508       virtual void execute( QPanGesture * );
 
  524     template <
typename T>
 
  534       virtual void execute( QTapGesture * );
 
  546       virtual void execute( QTapAndHoldGesture* ) = 0;
 
  550     template <
typename T>
 
  554       typedef void (T:: * 
Callback)( QTapAndHoldGesture* );
 
  560       virtual void execute( QTapAndHoldGesture * );
 
  576     template <
typename T>
 
  586       virtual void execute( QSwipeGesture * );
 
  597     std::map<std::string, anatomist::ActionPtr> 
actions( )
 
  623 #if QT_VERSION >= 0x040600 
  624     virtual void gestureEvent( QGestureEvent * event );
 
  625     virtual bool pinchGesture( QPinchGesture * gesture );
 
  626     virtual bool panGesture( QPanGesture * gesture );
 
  627     virtual bool tapGesture( QTapGesture* gesture );
 
  628     virtual bool tapAndHoldGesture( QTapAndHoldGesture* gesture );
 
  629     virtual bool swipeGesture( QSwipeGesture* gesture );
 
  633                                  Qt::KeyboardModifiers buttonState,
 
  635                                  const std::string & 
name = 
"" );
 
  638                                    Qt::KeyboardModifiers buttonState,
 
  640                                    const std::string & 
name = 
"" );
 
  643                                          Qt::KeyboardModifiers state,
 
  645                                          const std::string & 
name = 
"" );
 
  648                                            Qt::KeyboardModifiers state,
 
  650                                            const std::string & 
name = 
"" );
 
  654                                     Qt::KeyboardModifiers state,
 
  656                                     const std::string & 
name = 
"" );
 
  659                                   Qt::KeyboardModifiers state,
 
  661                                   const std::string & 
name = 
"" );
 
  664       int startingKey, Qt::KeyboardModifiers startingButtonState,
 
  666       Qt::MouseButtons longButton, Qt::KeyboardModifiers longState,
 
  668       int endingKey, Qt::KeyboardModifiers endingButtonState,
 
  670       bool exclusiveAction );
 
  673                                   Qt::KeyboardModifiers startingButtonState,
 
  677                                   bool exclusiveAction );
 
  680                                       Qt::KeyboardModifiers startingButtonState,
 
  684                                       Qt::KeyboardModifiers endingButtonState,
 
  686                                       bool exclusiveAction,
 
  687                                       float temporalStep );
 
  729                                    Qt::KeyboardModifiers buttonState,
 
  732                                    Qt::KeyboardModifiers buttonState);
 
  736                                      Qt::KeyboardModifiers buttonState,
 
  739                                      Qt::KeyboardModifiers buttonState);
 
  743                                            Qt::KeyboardModifiers state,
 
  746                                            Qt::KeyboardModifiers state );
 
  751                                              Qt::KeyboardModifiers state,
 
  754                                              Qt::KeyboardModifiers state );
 
  759                                       Qt::KeyboardModifiers state,
 
  763                                       Qt::KeyboardModifiers state );
 
  767                                     Qt::KeyboardModifiers state,
 
  770                                     Qt::KeyboardModifiers state );
 
  773                                           Qt::KeyboardModifiers startingButtonState,
 
  774                                           Qt::MouseButtons longButton,
 
  775                                           Qt::KeyboardModifiers longState,
 
  777                                           Qt::KeyboardModifiers endingButtonState );
 
  780                                     Qt::KeyboardModifiers startingButtonState );
 
  783                                         Qt::KeyboardModifiers startingButtonState,
 
  785                                         Qt::KeyboardModifiers endingButtonState );
 
  829       const std::string & 
name ) 
const;
 
  831       const std::string & 
name ) 
const;
 
  833       const std::string & 
name ) 
const;
 
  835       const std::string & 
name ) 
const;
 
  837       const std::string & 
name ) 
const;
 
  861     std::map<KeyMapKey, KeyActionLink*, LessKeyMap> myKeyPressActionMap;
 
  862     std::map<KeyMapKey, KeyActionLink*, LessKeyMap> myKeyReleaseActionMap;
 
  863     std::map<MouseButtonMapKey, MouseActionLink*, LessMouseMap>
 
  864       myMousePressButtonActionMap;
 
  865     std::map<MouseButtonMapKey, MouseActionLink*, LessMouseMap>
 
  866       myMouseReleaseButtonActionMap;
 
  867     std::map<MouseButtonMapKey, MouseActionLink*, LessMouseMap>
 
  868       myMouseDoubleClickButtonActionMap;
 
  869     std::map<MouseButtonMapKey, MouseActionLink*, LessMouseMap>
 
  870       myMouseMoveActionMap;
 
  889     std::map<std::string, KeyActionLink*> _keyPressActionsByName;
 
  890     std::map<std::string, KeyActionLink*> _keyReleaseActionsByName;
 
  891     std::map<std::string, MouseActionLink*> _mousePressActionsByName;
 
  892     std::map<std::string, MouseActionLink*> _mouseReleaseActionsByName;
 
  893     std::map<std::string, MouseActionLink*> _mouseDoubleClickActionsByName;
 
  894     std::map<std::string, MouseActionLink*> _mouseMoveActionsByName;
 
  931     bool myExclusiveAction;
 
  951     { 
return myStartingEvent; }
 
  953     { 
return myStartingAction; }
 
  955     { 
return myLongEvent; }
 
  957     { 
return myLongAction; }
 
  959     { 
return myEndingEvent; }
 
  961     { 
return myEndingAction; }
 
  976     bool myExclusiveAction;
 
  996       Qt::KeyboardModifiers startingButtonState,
 
  998       Qt::MouseButtons longButton,
 
  999       Qt::KeyboardModifiers longState,
 
 1002       Qt::KeyboardModifiers endingButtonState,
 
 1004       bool exclusiveAction );
 
 1007       Qt::MouseButtons startingButton,
 
 1008       Qt::KeyboardModifiers startingButtonState,
 
 1012       bool exclusiveAction );
 
 1016       Qt::KeyboardModifiers startingButtonState,
 
 1019       Qt::KeyboardModifiers endingButtonState,
 
 1021       bool exclusiveAction,
 
 1022       float temporalStep );
 
 1026       Qt::KeyboardModifiers startingButtonState,
 
 1027       Qt::MouseButtons longButton,
 
 1028       Qt::KeyboardModifiers longState,
 
 1030       Qt::KeyboardModifiers endingButtonState );
 
 1033       Qt::MouseButtons startingButton,
 
 1034       Qt::KeyboardModifiers startingButtonState );
 
 1038       Qt::KeyboardModifiers startingButtonState,
 
 1040       Qt::KeyboardModifiers endingButtonState );
 
 1045     std::map<Control::KeyMapKey, KeyAndMouseLongEvent*, Control::LessKeyMap>
 
 1046       myKeyAndMouseLongEventMap;
 
 1047     std::map<Control::KeyMapKey, KeyRepetitiveEvent*, Control::LessKeyMap>
 
 1048       myKeyRepetitiveEventMap;
 
 1051     std::map<Control::KeyMapKey, KeyRepetitiveEvent*, Control::LessKeyMap>
 
 1052       myActiveKeyRepetitiveEvents;
 
 1058     int currentMouseGlobalX;
 
 1059     int currentMouseGlobalY;
 
 1078     { 
return myStartingEvent; }
 
 1080     { 
return myStartingAction; }
 
 1084     { 
return myEndingEvent; }
 
 1086     { 
return myEndingAction; }
 
 1099   bool myExclusiveAction;
 
 1100   float myTemporalStep;
 
const anatomist::Control::KeyMapKey & endingEvent() const
float temporalStep() const
bool exclusiveAction() const
const anatomist::Control::KeyActionLink * startingAction() const
KeyRepetitiveEvent(const anatomist::Control::KeyMapKey &startingEvent, const anatomist::Control::KeyActionLink &startingAction, const anatomist::Control::KeyMapKey &endingEvent, const anatomist::Control::KeyActionLink &endingAction, bool exclusiveAction, float temporalStep)
const anatomist::Control::KeyActionLink * endingAction() const
const anatomist::Control::KeyMapKey & startingEvent() const
virtual ~DropActionLinkOf()
void(T::* Callback)(int posX, int posY, Control::DropAction action)
virtual DropActionLink * clone() const
virtual void execute(int posX, int posY, Control::DropAction action)
virtual void execute(int posX, int posY, Control::DropAction action)=0
virtual ~DropActionLink()=0
virtual DropActionLink * clone() const =0
virtual EnterLeaveActionLink * clone() const
virtual ~EnterLeaveActionLinkOf()
virtual EnterLeaveActionLink * clone() const =0
virtual ~EnterLeaveActionLink()=0
virtual FocusActionLink * clone() const
virtual ~FocusActionLinkOf()
virtual FocusActionLink * clone() const =0
virtual ~FocusActionLink()=0
virtual KeyActionLink * clone() const
virtual ~KeyActionLinkOf()
virtual ~KeyActionLink()=0
virtual KeyActionLink * clone() const =0
virtual void execute(int x, int y, int globalX, int globalY)
virtual MouseActionLink * clone() const
virtual ~MouseActionLinkOf()
virtual Action * action()
void(T::* Callback)(int x, int y, int globalX, int globalY)
virtual void execute(int x, int y, int globalX, int globalY)=0
virtual MouseActionLink * clone() const =0
virtual ~MouseActionLink()=0
virtual Action * action()=0
void(T::* Callback)(int, int, int, int)
virtual ~MoveOrDragActionLinkOf()
virtual MoveOrDragActionLink * clone() const
virtual void execute(int posX=0, int posY=0, int oldPosX=0, int oldPosY=0)
virtual void execute(int posX=0, int posY=0, int oldPosX=0, int oldPosY=0)=0
virtual ~MoveOrDragActionLink()=0
virtual MoveOrDragActionLink * clone() const =0
virtual ~PaintActionLinkOf()
void(T::* Callback)(int xOffset, int yOffset, int height, int width)
virtual PaintActionLink * clone() const
virtual void execute(int xOffset, int yOffset, int height, int width)
virtual PaintActionLink * clone() const =0
virtual ~PaintActionLink()=0
virtual void execute(int xOffset, int yOffset, int height, int width)=0
virtual PanActionLink * clone() const
virtual void execute(QPanGesture *)
void(T::* Callback)(QPanGesture *)
virtual ~PanActionLinkOf()
virtual PanActionLink * clone() const =0
virtual ~PanActionLink()=0
virtual void execute(QPanGesture *)=0
virtual PinchActionLink * clone() const
virtual ~PinchActionLinkOf()
void(T::* Callback)(QPinchGesture *)
virtual void execute(QPinchGesture *)
virtual ~PinchActionLink()=0
virtual void execute(QPinchGesture *)=0
virtual PinchActionLink * clone() const =0
virtual void execute(int height, int width, int oldHeight, int oldWidth)
virtual ResizeActionLink * clone() const
void(T::* Callback)(int height, int width, int oldHeight, int oldWidth)
virtual ~ResizeActionLinkOf()
virtual ResizeActionLink * clone() const =0
virtual void execute(int height, int width, int oldHeight, int oldWidth)=0
virtual ~ResizeActionLink()=0
virtual ~SelectionChangedActionLinkOf()
virtual SelectionChangedActionLink * clone() const
SelectionChangedActionLinkOf()
void(T::* Callback)(bool spontaneous)
virtual SelectionChangedActionLink * clone() const =0
virtual ~SelectionChangedActionLink()=0
virtual ShowHideActionLink * clone() const
virtual ~ShowHideActionLinkOf()
void(T::* Callback)(bool spontaneous)
virtual void execute(bool spontaneous)
virtual void execute(bool spontaneous)=0
virtual ShowHideActionLink * clone() const =0
virtual ~ShowHideActionLink()=0
virtual SwipeActionLink * clone() const
virtual void execute(QSwipeGesture *)
void(T::* Callback)(QSwipeGesture *)
virtual ~SwipeActionLinkOf()
virtual void execute(QSwipeGesture *)=0
virtual SwipeActionLink * clone() const =0
virtual ~SwipeActionLink()=0
void(T::* Callback)(QTapGesture *)
virtual TapActionLink * clone() const
virtual void execute(QTapGesture *)
virtual ~TapActionLinkOf()
virtual void execute(QTapGesture *)=0
virtual TapActionLink * clone() const =0
virtual ~TapActionLink()=0
virtual TapAndHoldActionLink * clone() const
virtual ~TapAndHoldActionLinkOf()
void(T::* Callback)(QTapAndHoldGesture *)
virtual void execute(QTapAndHoldGesture *)
virtual void execute(QTapAndHoldGesture *)=0
virtual TapAndHoldActionLink * clone() const =0
virtual ~TapAndHoldActionLink()=0
void(T::* Callback)(int delta, int x, int y, int globalX, int globalY)
virtual void execute(int delta, int x, int y, int globalX, int globalY)
virtual WheelActionLink * clone() const
virtual ~WheelActionLinkOf()
virtual WheelActionLink * clone() const =0
virtual void execute(int delta, int x, int y, int globalX, int globalY)=0
virtual ~WheelActionLink()=0
bool dragEnterEventSubscribe(const MoveOrDragActionLink &actionMethod)
bool paintEventUnsubscribe(const PaintActionLink &actionMethod)
bool hideEventUnsubscribe()
virtual void hideEvent(QHideEvent *event)
bool mouseReleaseButtonEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethods)
obsolete, use the other one
bool mouseDoubleClickEventSubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethod, const std::string &name="")
bool dragMoveEventSubscribe(const MoveOrDragActionLink &actionMethod)
bool hideEventSubscribe(const ShowHideActionLink &actionMethod)
bool selectionChangedEventUnsubscribe()
KeyActionLink * keyPressActionLinkByName(const std::string &name) const
bool tapEventSubscribe(const TapActionLink &startMethod, const TapActionLink &moveMethod, const TapActionLink &stopMethod, const TapActionLink &cancelMethod)
bool dragEnterEventUnsubscribe(const MoveOrDragActionLink &actionMethod)
bool tapEventUnsubscribe()
bool selectionChangedEventUnsubscribe(const SelectionChangedActionLink &actionMethod)
bool mouseMoveEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state)
bool pinchEventSubscribe(const PinchActionLink &startMethod, const PinchActionLink &moveMethod, const PinchActionLink &stopMethod, const PinchActionLink &cancelMethod)
bool tapAndHoldEventSubscribe(const TapAndHoldActionLink &startMethod, const TapAndHoldActionLink &moveMethod, const TapAndHoldActionLink &stopMethod, const TapAndHoldActionLink &cancelMethod)
bool pinchEventUnsubscribe()
bool keyPressEventSubscribe(int key, Qt::KeyboardModifiers buttonState, const KeyActionLink &actionMethod, const std::string &name="")
bool moveEventSubscribe(const MoveOrDragActionLink &actionMethod)
virtual void mousePressEvent(QMouseEvent *)
bool mousePressButtonEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethods)
obsolete, use the other one
virtual void eventAutoSubscription(anatomist::ActionPool *actionPool)
Control(const Control &control)
bool keyPressEventUnsubscribe(int key, Qt::KeyboardModifiers buttonState, const KeyActionLink &actionMethods)
obsolete, use the other one
bool keyPressEventUnsubscribe(int key, Qt::KeyboardModifiers buttonState)
bool mousePressButtonEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state)
bool dragMoveEventUnsubscribe(const MoveOrDragActionLink &actionMethod)
Qt::DropAction DropAction
bool showEventSubscribe(const ShowHideActionLink &actionMethod)
virtual void mouseReleaseEvent(QMouseEvent *)
std::set< std::string > keyReleaseActionLinkNames() const
MouseActionLink * mouseMoveActionLinkByName(const std::string &name) const
bool dropEventUnsubscribe(const DropActionLink &actionMethod)
bool leaveEventSubscribe(const EnterLeaveActionLink &actionMethod)
virtual void keyPressEvent(QKeyEvent *)
MouseActionLink * mousePressActionLinkByName(const std::string &name) const
virtual void moveEvent(QMoveEvent *)
bool keyReleaseEventUnsubscribe(int key, Qt::KeyboardModifiers buttonState)
bool dragEnterEventUnsubscribe()
bool moveEventUnsubscribe(const MoveOrDragActionLink &actionMethod)
bool mouseReleaseButtonEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state)
virtual void dragEnterEvent()
bool panEventUnsubscribe()
virtual void wheelEvent(QWheelEvent *)
bool mouseDoubleClickEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethods)
obsolete, use the other one
bool mouseLongEventUnsubscribe(Qt::MouseButtons startingButton, Qt::KeyboardModifiers startingButtonState)
bool focusOutEventSubscribe(const FocusActionLink &actionMethod)
bool showEventUnsubscribe()
bool wheelEventUnsubscribe(const WheelActionLink &actionMethod)
bool wheelEventUnsubscribeAll()
bool enterEventSubscribe(const EnterLeaveActionLink &actionMethod)
bool hideEventUnsubscribe(const ShowHideActionLink &actionMethod)
virtual void keyReleaseEvent(QKeyEvent *)
virtual std::string description() const
bool mouseDoubleClickEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state)
bool focusInEventSubscribe(const FocusActionLink &actionMethod)
bool resizeEventUnsubscribe()
bool keyReleaseEventSubscribe(int key, Qt::KeyboardModifiers buttonState, const KeyActionLink &actionMethod, const std::string &name="")
bool keyAndMouseLongEventUnsubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, Qt::MouseButtons longButton, Qt::KeyboardModifiers longState, int endingKey, Qt::KeyboardModifiers endingButtonState)
bool mousePressButtonEventSubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethod, const std::string &name="")
bool wheelEventSubscribe(const WheelActionLink &actionMethod)
Control(int priority, std::string name)
bool showEventUnsubscribe(const ShowHideActionLink &actionMethod)
virtual void selectionChangedEvent()
KeyActionLink * keyReleaseActionLinkByName(const std::string &name) const
std::set< std::string > mousePressActionLinkNames() const
bool resizeEventSubscribe(const ResizeActionLink &actionMethod)
virtual void focusOutEvent()
bool resizeEventUnsubscribe(const ResizeActionLink &actionMethod)
bool swipeEventUnsubscribe()
bool leaveEventUnsubscribe()
bool keyRepetitiveEventSubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, const KeyActionLink &startingActionMethod, int endingKey, Qt::KeyboardModifiers endingButtonState, const KeyActionLink &endingActionMethod, bool exclusiveAction, float temporalStep)
bool mouseReleaseButtonEventSubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethod, const std::string &name="")
bool swipeEventSubscribe(const SwipeActionLink &startMethod, const SwipeActionLink &moveMethod, const SwipeActionLink &stopMethod, const SwipeActionLink &cancelMethod)
virtual void paintEvent(QPaintEvent *)
std::map< std::string, anatomist::ActionPtr > myActions
virtual void dragLeaveEvent()
bool keyAndMouseLongEventSubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, const KeyActionLink &startingActionMethod, Qt::MouseButtons longButton, Qt::KeyboardModifiers longState, const MouseActionLink &longActionMethod, int endingKey, Qt::KeyboardModifiers endingButtonState, const KeyActionLink &endingActionMethod, bool exclusiveAction)
bool enterEventUnsubscribe()
void setPriority(int priority)
bool dragLeaveEventUnsubscribe(const MoveOrDragActionLink &actionMethod)
virtual void doAlsoOnDeselect(ActionPool *)
bool dropEventUnsubscribe()
std::set< std::string > mouseReleaseActionLinkNames() const
MouseActionLink * mouseDoubleClickActionLinkByName(const std::string &name) const
bool dropEventSubscribe(const DropActionLink &actionMethod)
virtual void doAlsoOnSelect(ActionPool *)
virtual void showEvent(QShowEvent *event)
bool wheelEventUnsubscribe()
virtual void dropEvent(QDropEvent *)
bool panEventSubscribe(const PanActionLink &startMethod, const PanActionLink &moveMethod, const PanActionLink &stopMethod, const PanActionLink &cancelMethod)
virtual void focusInEvent()
virtual void resizeEvent(QResizeEvent *)
bool enterEventUnsubscribe(const EnterLeaveActionLink &actionMethod)
std::set< std::string > mouseMoveActionLinkNames() const
bool keyRepetitiveEventUnsubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, int endingKey, Qt::KeyboardModifiers endingButtonState)
bool focusInEventUnsubscribe(const FocusActionLink &actionMethod)
bool paintEventUnsubscribe()
std::map< std::string, anatomist::ActionPtr > actions()
virtual void enterEvent()
virtual void mouseMoveEvent(QMouseEvent *)
bool dragLeaveEventUnsubscribe()
bool keyReleaseEventUnsubscribe(int key, Qt::KeyboardModifiers buttonState, const KeyActionLink &actionMethods)
obsolete, use the other one
FocusActionLink * focusOutActionLink() const
WheelActionLink * wheelActionLink() const
bool moveEventUnsubscribe()
virtual void mouseDoubleClickEvent(QMouseEvent *)
bool mouseMoveEventSubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethod, const std::string &name="")
virtual void dragMoveEvent()
bool selectionChangedEventSubscribe(const SelectionChangedActionLink &actionMethod)
void doOnSelect(ActionPool *pool)
const std::string & name() const
bool tapAndHoldEventUnsubscribe()
FocusActionLink * focusInActionLink() const
bool focusOutEventUnsubscribe(const FocusActionLink &actionMethod)
bool dragMoveEventUnsubscribe()
std::set< std::string > keyPressActionLinkNames() const
virtual void leaveEvent()
bool dragLeaveEventSubscribe(const MoveOrDragActionLink &actionMethod)
std::set< std::string > mouseDoubleClickActionLinkNames() const
bool mouseLongEventSubscribe(Qt::MouseButtons startingButton, Qt::KeyboardModifiers startingButtonState, const MouseActionLink &startingActionMethod, const MouseActionLink &longActionMethod, const MouseActionLink &endingActionMethod, bool exclusiveAction)
bool paintEventSubscribe(const PaintActionLink &actionMethod)
static ControlPtr creator(int priority, const std::string &name)
void doOnDeselect(ActionPool *pool)
std::list< std::string > myControlLinksDescription
bool focusInEventUnsubscribe()
MouseActionLink * mouseReleaseActionLinkByName(const std::string &name) const
bool leaveEventUnsubscribe(const EnterLeaveActionLink &actionMethod)
bool mouseMoveEventUnsubscribe(Qt::MouseButtons button, Qt::KeyboardModifiers state, const MouseActionLink &actionMethods)
obsolete, use the other one
bool focusOutEventUnsubscribe()
KeyAndMouseLongEvent(const KeyAndMouseLongEvent &)
const Control::MouseActionLink * longAction() const
KeyAndMouseLongEvent(const Control::KeyMapKey &startingEvent, const Control::KeyActionLink &startingAction, const Control::MouseButtonMapKey &longEvent, const Control::MouseActionLink &longAction, const Control::KeyMapKey &endingEvent, const Control::KeyActionLink &endingAction, bool exclusiveAction)
const Control::KeyActionLink * startingAction() const
bool exclusiveAction() const
const Control::KeyMapKey & endingEvent() const
const Control::MouseButtonMapKey & longEvent() const
const Control::KeyActionLink * endingAction() const
const Control::KeyMapKey & startingEvent() const
void executeLong(int x, int y, int globalX, int globalY)
bool submitKeyReleaseEvent(QKeyEvent *event)
bool mouseLongEventSubscribe(Qt::MouseButtons startingButton, Qt::KeyboardModifiers startingButtonState, const Control::MouseActionLink &startingActionMethod, const Control::MouseActionLink &longActionMethod, const Control::MouseActionLink &endingActionMethod, bool exclusiveAction)
bool keyAndMouseLongEventUnsubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, Qt::MouseButtons longButton, Qt::KeyboardModifiers longState, int endingKey, Qt::KeyboardModifiers endingButtonState)
bool keyAndMouseLongEventSubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, const Control::KeyActionLink &startingActionMethod, Qt::MouseButtons longButton, Qt::KeyboardModifiers longState, const Control::MouseActionLink &longActionMethod, int endingKey, Qt::KeyboardModifiers endingButtonState, const Control::KeyActionLink &endingActionMethod, bool exclusiveAction)
bool submitMouseReleaseEvent(QMouseEvent *event)
bool submitMouseMoveEvent(QMouseEvent *event)
bool mouseLongEventUnsubscribe(Qt::MouseButtons startingButton, Qt::KeyboardModifiers startingButtonState)
bool submitMousePressEvent(QMouseEvent *event)
void setMouseTracking(bool)
bool keyRepetitiveEventSubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, const Control::KeyActionLink &startingActionMethod, int endingKey, Qt::KeyboardModifiers endingButtonState, const Control::KeyActionLink &endingActionMethod, bool exclusiveAction, float temporalStep)
bool submitKeyPressEvent(QKeyEvent *event)
bool keyRepetitiveEventUnsubscribe(int startingKey, Qt::KeyboardModifiers startingButtonState, int endingKey, Qt::KeyboardModifiers endingButtonState)
const Control::MouseButtonMapKey & longEvent() const
void setMouseTracking(bool)
const Control::MouseButtonMapKey & endingEvent() const
const Control::MouseActionLink * endingAction() const
MouseLongEvent(const MouseLongEvent &event)
bool exclusiveAction() const
void executeLong(int x, int y, int globalX, int globalY)
MouseLongEvent(const Control::MouseButtonMapKey &startingEvent, const Control::MouseActionLink &startingAction, const Control::MouseButtonMapKey &longEvent, const Control::MouseActionLink &longAction, const Control::MouseButtonMapKey &endingEvent, const Control::MouseActionLink &endingAction, bool exclusiveAction)
const Control::MouseActionLink * startingAction() const
void executeEnd(int x, int y, int globalX, int globalY)
void executeStart(int x, int y, int globalX, int globalY)
const Control::MouseButtonMapKey & startingEvent() const
const Control::MouseActionLink * longAction() const
bool operator==(const KeyMapKey &k) const
bool operator!=(const KeyMapKey &k) const
bool operator()(KeyMapKey entry1, KeyMapKey entry2) const
bool operator()(MouseButtonMapKey entry1, MouseButtonMapKey entry2) const