My Project
D:/source/c++/Programme/sally/sally/sallyAPI/Window.h
Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 #pragma once
00029 #include "Define.h"
00030 #include <list>
00031 #include "GUIBaseObject.h"
00032 #include "Control.h"
00033 #include "WindowMessage.h"
00034 
00035 namespace SallyAPI
00036 {
00037         namespace GUI
00038         {
00047 
00048                 class DLL_API_SALLY CWindow
00049                         : public SallyAPI::GUI::CGUIBaseObject
00050                 {
00051                 protected:
00052                         std::list<CControl*>            m_GUIControlList;
00053                         std::list<CWindowMessage*>      m_iMessages;
00054                         
00055                         virtual void    RenderControl();
00056                         virtual void    UpdateControl();
00057                 public:
00058                         CWindow();
00059                         virtual ~CWindow();
00060 
00061                         virtual void                    ProcessKeyboard(char KeyboardState[256], char KeyboardStatePressed[256]);
00062 
00063                         virtual bool                    CharInputPressed(char c);
00064                         virtual bool                    KeyDown(int c);
00065                         virtual bool                    ProcessMouseDoubleClick(int x, int y);
00066                         virtual bool                    ProcessMouseUp(int x, int y);
00067                         virtual bool                    ProcessMouseDown(int x, int y);
00068                         virtual bool                    ProcessMouseMove(int x, int y);
00069 
00070                         virtual void                    SendMessageToParent(SallyAPI::GUI::CGUIBaseObject* reporter, int reporterId, int messageId, SallyAPI::GUI::SendMessage::CParameterBase* messageParameter = NULL);
00071                         virtual void                    SendMessageToChilds(SallyAPI::GUI::CGUIBaseObject* reporter, int reporterId, int messageId, SallyAPI::GUI::SendMessage::CParameterBase* messageParameter = NULL);
00072                         virtual CWindowMessage  GetMessage();
00073                         virtual void                    Timer(float timeDelta);
00074 
00075                         virtual void    GetAbsolutPosition(int* x, int* y);
00076 
00077                         virtual void    Render();
00078                         virtual void    Update();
00079                         virtual void    SaveConfig();
00080 
00081                         void                    AddChild(SallyAPI::GUI::CControl* control);
00082                         void                    RemoveChild(std::list<SallyAPI::GUI::CControl*>::iterator iter);
00083                         void                    RemoveChild(SallyAPI::GUI::CControl* control);
00084                 };
00085         }
00086 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines