StateLogic.h
00001 #ifndef _STATELOGIC_H
00002 #define _STATELOGIC_H
00003
00004 #include <objects/AbstractLogic.h>
00005 #include <USignals.h>
00006 #include <global_macros.h>
00007 #include <types.h>
00008 #include <objects/ShowLogic.h>
00009
00010 namespace UniWidgets
00011 {
00029 class StateLogic : public AbstractLogic
00030 {
00031 public:
00032 StateLogic();
00033 explicit StateLogic(Gtk::EventBox::BaseObjectType* gobject);
00034 virtual ~StateLogic();
00035
00036
00037 virtual void connect();
00038
00039 protected:
00040
00041 virtual void on_init();
00043
00044 long current_value_;
00045 ShowLogic *logic;
00047
00048 void constructor();
00049 void set_message_handler();
00050 void set_confirm_handler(UMessages::MessageId id);
00051 virtual void set_current_state();
00052 void set_state_object();
00054
00055 void confirm_handler(UMessages::MessageId id, time_t sec);
00056 void message_handler(UMessages::MessageId id, Glib::ustring msg);
00058 virtual void sensor_handler(UniSetTypes::ObjectId sensor, UniSetTypes::ObjectId node, long value);
00059 void set_sensor_handler();
00061 DISALLOW_COPY_AND_ASSIGN(StateLogic);
00062
00063
00064 ADD_PROPERTY( state_ai, UniSetTypes::ObjectId )
00065 ADD_PROPERTY( state_obj_ai, UniSetTypes::ObjectId )
00066 ADD_PROPERTY( mode, long )
00067 ADD_PROPERTY( detntr, long )
00069 ADD_PROPERTY( invert_mode, bool )
00070 ADD_PROPERTY( invert_mode_state, UniWidgetsTypes::ThresholdType )
00071 ADD_PROPERTY( blinking, bool )
00072 ADD_PROPERTY( node, UniSetTypes::ObjectId )
00073 ADD_PROPERTY( states_ignore, int )
00074 ADD_PROPERTY( lock_view, bool )
00075 };
00076
00077 }
00078 #endif