UIndicator.h
00001 #ifndef _UINDICATOR_H
00002 #define _UINDICATOR_H
00003
00004 #include <gtkmm.h>
00005 #include <gdkmm.h>
00006 #include "UEventBox.h"
00007 #include "SensorProperty.h"
00008 #include "global_macros.h"
00009
00014 class UIndicator : public UEventBox{
00015 private:
00016 Gtk::Label lbl;
00017
00018 void ctor();
00019 void draw_state(bool);
00020
00021 Gdk::Color bg_col_0;
00022 Gdk::Color fg_col_0;
00023 Gdk::Color bg_col_1;
00024 Gdk::Color fg_col_1;
00025
00026
00027 public:
00028 UIndicator();
00029 explicit UIndicator(GtkmmBaseType::BaseObjectType* gobject);
00030 ~UIndicator();
00031 virtual void init_widget();
00032
00033 virtual void sensorInfo(UniSetTypes::SensorMessage *sm);
00034 virtual void askSensors(UniversalIO::UIOCommand cmd);
00035
00036 protected:
00037 void on_text_prop_changed();
00038 void on_pango_prop_changed();
00039 void on_state_changed();
00040 void on_line_wrap_changed();
00041
00042
00043 public:
00044 Glib::Property<USensorProperty> di;
00045
00046 ADD_PROPERTY( prop_text, Glib::ustring )
00047 ADD_PROPERTY( prop_pango, Glib::ustring )
00048 ADD_PROPERTY( line_wrap, bool )
00049
00050 ADD_PROPERTY( bgcolor_true, Glib::ustring )
00051 ADD_PROPERTY( bgcolor_false, Glib::ustring )
00052 ADD_PROPERTY( fgcolor_true, Glib::ustring )
00053 ADD_PROPERTY( fgcolor_false, Glib::ustring )
00054 ADD_PROPERTY( state, bool )
00055 };
00056 #endif