00001 #ifndef CSMessageBox_h 00002 #define CSMessageBox_h 00003 00004 #ifdef WIN32 00005 #pragma warning(disable : 4786 ) 00006 #endif 00007 00008 #include <vector> 00009 #include <string> 00010 00011 #include "CSPicture.h" 00012 #include "CSGrafikElement.h" 00013 #include "CSDesktop.h" 00014 #include "CSWindow.h" 00015 #include "CSLog.h" 00016 #include "CSTextarea.h" 00017 #include "CSIcon.h" 00018 00019 class CSMessageBox; 00020 typedef std::vector<CSMessageBox *> CSMessageBoxs; 00021 00022 const int WARN_ICON = 0; 00023 const int ERROR_ICON = 1; 00024 const int INFO_ICON = 2; 00025 const int QUESTION_ICON = 3; 00026 00027 class CSMessageBox : public CSWindow 00028 { 00029 private: 00030 CSIcons *mAttentionIcon; 00031 std::string mMessage; 00032 int mKind; 00033 CSTextarea *mTextarea; 00034 CSIcon *mIcon; 00035 00036 protected: 00037 GuiMessage MESSAGE_WINDOW_CLOSE; 00038 void layoutSetupMessageBox(); 00039 virtual void rebuildElement(); 00040 00041 public: 00042 static const char *CLASS; 00043 virtual std::string getType() {return (std::string) CLASS;} 00044 00045 CSMessageBox(std::string message, std::string title, int kind); 00046 virtual ~CSMessageBox(); 00047 virtual void layoutSetup() {layoutSetupMessageBox();} 00048 }; 00049 00050 #endif // CSMessageBox_h