00001 #ifndef IGUANA_STUDIO_IG_APP_ACTIVE_SERVICE_H 00002 # define IGUANA_STUDIO_IG_APP_ACTIVE_SERVICE_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "Iguana/Studio/interface/config.h" 00007 # include "Iguana/Framework/interface/IgDispatcher.h" 00008 # include "Iguana/Framework/interface/IgStateElement.h" 00009 00010 //<<<<<< PUBLIC DEFINES >>>>>> 00011 //<<<<<< PUBLIC CONSTANTS >>>>>> 00012 //<<<<<< PUBLIC TYPES >>>>>> 00013 00014 class QWidget; 00015 00016 //<<<<<< PUBLIC VARIABLES >>>>>> 00017 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00018 //<<<<<< CLASS DECLARATIONS >>>>>> 00019 00020 00021 class IGUANA_STUDIO_API IgQtAppActiveMessage 00022 { 00023 public: 00024 IgQtAppActiveMessage (QWidget *widget, bool active) 00025 : m_widget (widget), 00026 m_active (active) 00027 { } 00028 00029 // implicit copy constructor 00030 // implicit assignment operator 00031 // implicit destructor 00032 00033 QWidget* widget (void) const 00034 { return m_widget; } 00035 00036 bool active (void) const 00037 { return m_active; } 00038 00039 private: 00040 QWidget * m_widget; 00041 bool m_active; 00042 }; 00043 00044 class IGUANA_STUDIO_API IgQtAppActiveService 00045 : public IgStateElement, public IgDispatcher<IgQtAppActiveMessage> 00046 { 00047 IG_DECLARE_STATE_ELEMENT (IgQtAppActiveService); 00048 public: 00049 IgQtAppActiveService (IgState *state); 00050 00051 private: 00052 IgState *m_state; 00053 }; 00054 00055 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00056 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00057 00058 #endif // IGUANA_STUDIO_IG_APP_ACTIVE_SERVICE_H