|
UniWidgets
1.0.0
|
00001 #ifndef _RTV_H 00002 #define _RTV_H 00003 // ------------------------------------------------------------------------- 00004 #include <string> 00005 #include <map> 00006 #include <components/Image.h> 00007 #include <objects/SimpleObject.h> 00008 #include <objects/LinkLogic.h> 00009 #include <typical/TypicalState.h> 00010 #include <typical/TypicalIndicator.h> 00011 #include <global_macros.h> 00012 // ------------------------------------------------------------------------- 00013 namespace UniWidgets 00014 { 00023 class RTV : public SimpleObject 00024 { 00025 public: 00026 RTV(); 00027 explicit RTV(SimpleObject::BaseObjectType* gobject); 00028 virtual ~RTV(); 00029 00030 /* Constants */ 00031 Gdk::Rectangle* back_rect; 00032 Gdk::Rectangle* backname_rect; 00033 Gdk::Rectangle* stab1_rect; 00034 Gdk::Rectangle* stab2_rect; 00035 Gdk::Rectangle* key1_rect; 00036 Gdk::Rectangle* key2_rect; 00037 Gdk::Rectangle* indicator1_rect; 00038 Gdk::Rectangle* indicator2_rect; 00039 static const string img_back_path; 00040 static const string img_state_back_alarm_path; 00041 static const string img_state_back_warn_path; 00042 static const string img_backname_path; 00043 static const string img_stab_off_path; 00044 static const string img_stab_on_path; 00045 static const string img_stab_warn_path; 00046 static const string img_stab_alarm_path; 00047 static const string img_stab2_off_path; 00048 static const string img_stab2_on_path; 00049 static const string img_stab2_warn_path; 00050 static const string img_stab2_alarm_path; 00051 static const string img_key_off_path; 00052 static const string img_key_on_path; 00053 static const string img_key_warn_path; 00054 static const string img_key_alarm_path; 00055 static const string img_key_undef_path; 00056 static const string img_key_undef_off_path; 00057 static const string img_key_warn_off_path; 00058 static const string img_indicator1_path; 00059 static const string img_indicator2_path; 00061 protected: 00062 /* Handlers */ 00063 virtual void on_realize(); 00064 virtual void on_connect() throw(); 00065 00066 private: 00067 Image back; 00068 Image name; 00069 /* Variables */ 00070 TypicalState state_stab1; 00071 TypicalState state_stab2; 00072 TypicalState state_key1; 00073 TypicalState state_key2; 00074 TypicalState state_back; 00075 TypicalIndicator indicator1_; 00076 TypicalIndicator indicator2_; 00077 LinkLogic link_; 00078 bool is_configured; 00079 00080 /* Methods */ 00081 void constructor(); 00082 void on_rectangle_changed(); 00083 void set_rectangle(Gdk::Rectangle* rect,const long x, const long y, const long w, const long h); 00084 void on_configure(); 00085 00086 DISALLOW_COPY_AND_ASSIGN(RTV); 00087 00088 /* Properties */ 00089 ADD_PROPERTY( u_ai, UniSetTypes::ObjectId ) 00090 ADD_PROPERTY( i_ai, UniSetTypes::ObjectId ) 00091 ADD_PROPERTY( node, UniSetTypes::ObjectId ) 00092 ADD_PROPERTY( property_link_di, UniSetTypes::ObjectId ) 00093 ADD_PROPERTY( svg_path, Glib::ustring ) 00094 ADD_PROPERTY ( backname_path, Glib::ustring ) 00095 ADD_PROPERTY ( key1_ai, UniSetTypes::ObjectId ) 00096 ADD_PROPERTY ( key2_ai, UniSetTypes::ObjectId ) 00097 ADD_PROPERTY ( stab1_ai, UniSetTypes::ObjectId ) 00098 ADD_PROPERTY ( stab2_ai, UniSetTypes::ObjectId ) 00099 ADD_PROPERTY( w_back_rect, long ) 00100 ADD_PROPERTY( h_back_rect, long ) 00101 ADD_PROPERTY( x_back_rect, long ) 00102 ADD_PROPERTY( w_backname_rect, long ) 00103 ADD_PROPERTY( h_backname_rect, long ) 00104 ADD_PROPERTY( x_backname_rect, long ) 00105 ADD_PROPERTY( y_backname_rect, long ) 00106 ADD_PROPERTY( w_stab_rect, long ) 00107 ADD_PROPERTY( h_stab_rect, long ) 00108 ADD_PROPERTY( x_stab_rect, long ) 00109 ADD_PROPERTY( y_stab1_rect, long ) 00110 ADD_PROPERTY( y_stab2_rect, long ) 00111 ADD_PROPERTY( w_key_rect, long ) 00112 ADD_PROPERTY( h_key_rect, long ) 00113 ADD_PROPERTY( x_key1_rect, long ) 00114 ADD_PROPERTY( x_key2_rect, long ) 00115 ADD_PROPERTY( y_key_rect, long ) 00116 ADD_PROPERTY( w_indicator_rect, long ) 00117 ADD_PROPERTY( x_indicator_rect, long ) 00118 ADD_PROPERTY( h_indicator_rect, long ) 00119 ADD_PROPERTY( y_indicator1_rect, long ) 00120 ADD_PROPERTY( y_indicator2_rect, long ) 00121 }; 00122 00123 } 00124 #endif
1.7.6.1