|
UniWidgets
1.0.0
|
00001 #ifndef _INDICATORSTATELOGIC_H 00002 #define _INDICATORSTATELOGIC_H 00003 // ------------------------------------------------------------------------- 00004 #include <objects/AbstractLogic.h> 00005 #include <UniSetTypes.h> 00006 #include <uniwidgets/USignals.h> 00007 #include <global_macros.h> 00008 // ------------------------------------------------------------------------- 00009 namespace UniWidgets 00010 { 00011 class IndicatorShowLogic; 00022 class IndicatorStateLogic : public AbstractLogic 00023 { 00024 public: 00025 IndicatorStateLogic(); 00026 explicit IndicatorStateLogic(Gtk::EventBox::BaseObjectType* gobject); 00027 virtual ~IndicatorStateLogic(); 00028 00029 virtual void connect(); 00030 protected: 00031 /* Methods */ 00032 virtual void on_init(); 00034 private: 00035 /* Variables */ 00036 IndicatorShowLogic* current_indicator_; 00037 long current_value_; 00038 /* Methods */ 00039 void constructor(); 00040 void init_state(); 00041 void set_state(const long value); 00042 void set_current_state(); 00044 void set_message_handler(); 00045 void set_confirm_handler(UMessages::MessageId id); 00046 void set_sensor_handler(); 00047 00048 /* Handlers */ 00049 void confirm_handler(UMessages::MessageId id, time_t sec); 00050 void message_handler(UMessages::MessageId id, Glib::ustring msg); 00051 void sensor_handler(UniSetTypes::ObjectId sensor, UniSetTypes::ObjectId node, long value); 00052 00053 DISALLOW_COPY_AND_ASSIGN(IndicatorStateLogic); 00054 /* Properties */ 00055 ADD_PROPERTY( state_di, UniSetTypes::ObjectId ) 00056 ADD_PROPERTY( state_obj_ai, UniSetTypes::ObjectId ) 00057 ADD_PROPERTY( mode, UniSetTypes::ObjectId ) 00058 ADD_PROPERTY( blinking, bool ) 00059 ADD_PROPERTY( threshold, UniSetTypes::ObjectId ) 00060 ADD_PROPERTY( node, UniSetTypes::ObjectId ) 00061 }; 00062 00063 } 00064 00065 #endif
1.7.6.1