00001 #ifndef _ABSTRACTLOGIC_H 00002 #define _ABSTRACTLOGIC_H 00003 // ------------------------------------------------------------------------- 00004 #include <gtkmm.h> 00005 #include <global_macros.h> 00006 #include <objects/SimpleObject.h> 00007 // ------------------------------------------------------------------------- 00008 namespace UniWidgets 00009 { 00010 // class SimpleObject; 00020 class AbstractLogic : public Gtk::EventBox 00021 { 00022 public: 00023 AbstractLogic(); 00024 explicit AbstractLogic(Gtk::EventBox::BaseObjectType* gobject); 00025 virtual ~AbstractLogic(); 00026 00027 /* Methods */ 00028 void init(SimpleObject* object); 00029 virtual void connect() {} 00031 protected: 00032 /* Variables */ 00033 SimpleObject* object_; 00035 /* Methods */ 00036 virtual void set_object(SimpleObject* object); 00037 virtual void on_init() = 0; 00038 virtual bool on_handle_error_message(const long value); 00039 virtual void handle_error(const long value); 00041 private: 00042 DISALLOW_COPY_AND_ASSIGN(AbstractLogic); 00043 }; 00044 00045 } 00046 #endif
1.5.9