00001 #ifndef CSCheckBox_h 00002 #define CSCheckBox_h 00003 00004 // USES SDL_Surface 00005 00006 #ifdef WIN32 00007 #pragma warning(disable : 4786 ) 00008 #endif 00009 00010 #include <vector> 00011 #include <string> 00012 00013 #include "CSGrafikElement.h" 00014 #include "CSMessage.h" 00015 #include "CSLog.h" 00016 00017 class CSCheckBox; 00018 typedef std::vector<CSCheckBox *> CSCheckBoxs; 00019 00020 class CSCheckBox : public CSGrafikElement 00021 { 00022 private: 00023 GuiMessage MESSAGE_CHECKBOX_CHANGED; 00024 int mState; 00025 bool mCheckState; 00026 protected: 00027 void layoutSetupCheckBox(); 00028 public: 00029 static const char *CLASS; 00030 virtual std::string getType() {return (std::string) CLASS;} 00031 CSCheckBox(void); 00032 virtual ~CSCheckBox() {} 00033 virtual void paint(SDL_Surface *destination, SDL_Rect *parentViewport); 00034 00035 void reactOnMessageCheckBox(CSMessage *message); 00036 virtual void reactOnMessage(CSMessage *message); 00037 virtual void layoutSetup() {layoutSetupCheckBox();} 00038 }; 00039 00040 #endif // CSCheckBox_h