Go to the documentation of this file.
16 class ServiceInterface;
18 class ViewMgrInterface;
19 class BehaviorModeNotification;
59 virtual const char*
subject_name(
void) {
return "AbstractBehaviorMode"; };
97 virtual int getId(
void)
const = 0;
112 UNBLOCK_MOUSE_REQUEST
132 static std::map<std::string, BehaviorModeFactory*>
_registry;
144 #define ADD_BEHAVIORMODE_FACTORY(_factoryName_, _class_) \
145 class _factoryName_ : public Core::BehaviorModeFactory \
148 virtual Core::AbstractBehaviorMode* createByFactory(Core::ViewMgrInterface* vi, Core::GUIInterface* gi, Core::ServiceInterface* si) \
150 Core::AbstractBehaviorMode* o = new _class_; \
151 o->setInterfaces(vi, gi, si); \
157 #define REGISTER_BEHAVIORMODE_FACTORY(_factoryName_, _class_) \
158 Core::BehaviorModeFactory::_registry[#_class_] = (Core::BehaviorModeFactory*)new _factoryName_();
BaseClass class and root of the type system.
Definition: Base.h:78
virtual void finalProcedure(void)=0
static std::map< std::string, BehaviorModeFactory * > _registry
Definition: AbstractBehaviorMode.h:132
virtual ~AbstractBehaviorMode(void)
virtual AbstractBehaviorMode * createByFactory(ViewMgrInterface *vi, GUIInterface *gi, ServiceInterface *si)=0
virtual void wheel(const MWheelEvent &event)
~BehaviorModeFactory(void)
Definition: AbstractBehaviorMode.h:106
virtual void reset(void)=0
virtual void mouseMove(const MouseEvent &event)
Definition: GUIInterface.h:20
Definition: EventInterface.h:116
ViewMgrInterface * _view_i
Definition: AbstractBehaviorMode.h:59
virtual void mouseEnter(void)
ServiceInterface * _service_i
Definition: AbstractBehaviorMode.h:66
virtual void mouseLeave(void)
virtual void wheel(const MWheelEvent &event)
Reason
Definition: AbstractBehaviorMode.h:109
BehaviorModeFactory(void)
Reason _why
Definition: AbstractBehaviorMode.h:115
void setViewInterface(ViewMgrInterface *vi)
virtual void mousePress(const MouseEvent &event)
virtual void mouseLeave(void)
virtual void setTextInput(const std::string &input)
virtual void mouseRelease(const MouseEvent &event)
Definition: EventInterface.h:137
virtual void setAttributes(const BehaviorAttributeMap &attributes)
void setInterfaces(ViewMgrInterface *vi, GUIInterface *gi, ServiceInterface *si)
virtual void keyPress(const KeyEvent &event)
virtual void mouseMove(const MouseEvent &event)
virtual void initialProcedure(void)=0
Definition: ServiceInterface.h:97
int _old_mouse_y
Definition: AbstractBehaviorMode.h:70
Definition: EventInterface.h:85
void setGuiInterface(GUIInterface *gi)
Definition: AbstractBehaviorMode.h:125
virtual void mouseEnter(void)
@ BEHAVIOR_MODE_ENDS
Definition: AbstractBehaviorMode.h:110
virtual void keyRelease(const KeyEvent &event)
@ BLOCK_MOUSE_REQUEST
Definition: AbstractBehaviorMode.h:111
GUIInterface * _gui_i
Definition: AbstractBehaviorMode.h:65
Definition: AbstractBehaviorMode.h:83
Definition: AbstractBehaviorMode.h:29
virtual ~AbstractBehaviorSubMode(void)
virtual void resize(const ResizeEvent &event)
int _old_mouse_x
Definition: AbstractBehaviorMode.h:69
virtual void keyPress(const KeyEvent &event)
void setServiceInterface(ServiceInterface *si)
virtual void setTextInput(const std::string &input)
static bool registerFactory(const std::string &name, BehaviorModeFactory *fact)
virtual int getId(void) const =0
#define TYPESYSTEM_HEADER()
define for subclassing Base::BaseClass
Definition: Base.h:12
Definition: ViewInterface.h:32
virtual void mousePress(const MouseEvent &event)
static AbstractBehaviorMode * create(ViewMgrInterface *vi, GUIInterface *gi, ServiceInterface *si, const std::string &type)
virtual void mouseRelease(const MouseEvent &event)
virtual const char * subject_name(void)
Definition: AbstractBehaviorMode.h:59
AbstractBehaviorSubMode(void)
Definition: EventInterface.h:146
std::map< std::string, bool > BehaviorAttributeMap
Definition: AbstractBehaviorMode.h:19