OpenMW
|
00001 #ifndef MWGUI_WINDOW_BASE_H 00002 #define MWGUI_WINDOW_BASE_H 00003 00004 #include <openengine/gui/layout.hpp> 00005 00006 namespace MWBase 00007 { 00008 class WindowManager; 00009 } 00010 00011 namespace MWGui 00012 { 00013 class WindowManager; 00014 00015 class WindowBase: public OEngine::GUI::Layout 00016 { 00017 public: 00018 WindowBase(const std::string& parLayout); 00019 00020 // Events 00021 typedef MyGUI::delegates::CMultiDelegate1<WindowBase*> EventHandle_WindowBase; 00022 00023 virtual void open() {} 00024 virtual void close () {} 00025 virtual void setVisible(bool visible); 00026 void center(); 00027 00031 EventHandle_WindowBase eventDone; 00032 }; 00033 00034 00035 /* 00036 * "Modal" windows cause the rest of the interface to be unaccessible while they are visible 00037 */ 00038 class WindowModal : public WindowBase 00039 { 00040 public: 00041 WindowModal(const std::string& parLayout); 00042 virtual void open(); 00043 virtual void close(); 00044 }; 00045 } 00046 00047 #endif