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