00001 #ifndef IGUANA_STUDIO_IG_QT_APP_IMAGE_SERVICE_H 00002 # define IGUANA_STUDIO_IG_QT_APP_IMAGE_SERVICE_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "Iguana/Studio/interface/config.h" 00007 # include "Iguana/Framework/interface/IgStateElement.h" 00008 # include <map> 00009 00010 //<<<<<< PUBLIC DEFINES >>>>>> 00011 //<<<<<< PUBLIC CONSTANTS >>>>>> 00012 //<<<<<< PUBLIC TYPES >>>>>> 00013 class IgState; 00014 class QPixmap; 00015 class QString; 00016 00017 //<<<<<< PUBLIC VARIABLES >>>>>> 00018 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00019 //<<<<<< CLASS DECLARATIONS >>>>>> 00020 00021 class IGUANA_STUDIO_API IgQtAppImageService : public IgStateElement 00022 { 00023 IG_DECLARE_STATE_ELEMENT (IgQtAppImageService); 00024 public: 00025 IgQtAppImageService (IgState *state); 00026 ~IgQtAppImageService (void); 00027 // implicit copy constructor 00028 // implicit assignment operator 00029 // implicit destructor 00030 00031 void registerImage (const char *data[], 00032 const int id); 00033 void registerImage (const QString &filename, 00034 const int id); 00035 void registerImage (const QPixmap *, 00036 const int id); 00037 QPixmap *pixmapById (const int id); 00038 private: 00039 IgState *m_state; 00040 typedef std::map<int, QPixmap *> ImageMap; 00041 ImageMap m_images; 00042 }; 00043 00044 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00045 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00046 00047 #endif // IGUANA_STUDIO_IG_QT_APP_IMAGE_SERVICE_H