00001 #ifndef GUIFRAMELISTENER_H 00002 #define GUIFRAMELISTENER_H 00003 00004 #include <CEGUI/CEGUIImageset.h> 00005 #include <CEGUI/CEGUISystem.h> 00006 #include <CEGUI/CEGUILogger.h> 00007 #include <CEGUI/CEGUISchemeManager.h> 00008 #include <CEGUI/CEGUIWindowManager.h> 00009 #include <CEGUI/CEGUIWindow.h> 00010 #include <CEGUI/elements/CEGUICombobox.h> 00011 #include <CEGUI/elements/CEGUIListbox.h> 00012 #include <CEGUI/elements/CEGUIListboxTextItem.h> 00013 #include <CEGUI/elements/CEGUIPushButton.h> 00014 #include <CEGUI/elements/CEGUIScrollbar.h> 00015 #include <CEGUI/elements/CEGUIStaticImage.h> 00016 #include <CEGUI/elements/CEGUIFrameWindow.h> 00017 #include <CEGUI/elements/CEGUIEditbox.h> 00018 #include <CEGUI/elements/CEGUISlider.h> 00019 #include <CEGUI/elements/CEGUIStaticText.h> 00020 #include "OgreCEGUIRenderer.h" 00021 #include "OgreCEGUIResourceProvider.h" 00022 00023 #include "MyFrameListener.h" 00024 00026 00027 class GUIFrameListener : public MyFrameListener, public MouseMotionListener, public MouseListener 00028 { 00029 00030 private: 00031 00032 CEGUI::Renderer* mGUIRenderer; 00033 00034 CEGUI::System* mGUISystem; 00035 00036 CEGUI::Window* mEditorGuiSheet; 00037 00038 SceneManager* mSceneMgr; 00039 00040 Camera* mCamera; 00041 00042 RaySceneQuery* mRaySceneQuery; 00043 00044 bool mShutdownRequested; 00045 00046 CEGUI::MouseButton convertOgreButtonToCegui(int buttonID); 00047 00048 protected: 00049 00050 public: 00051 00052 GUIFrameListener(RenderWindow* win, Camera* cam, CEGUI::Renderer* renderer, SceneManager* sceneMgr, CEGUI::System* mGUISystem, CEGUI::Window* guiSheet); 00053 00055 void requestShutdown(void); 00056 00058 bool frameEnded(const FrameEvent& evt); 00059 00061 void mouseMoved(MouseEvent *e); 00062 00064 void mouseDragged(MouseEvent *e); 00065 00067 void mousePressed(MouseEvent *e); 00068 00070 void mouseReleased(MouseEvent *e); 00071 00073 void mouseClicked(MouseEvent* e); 00074 00075 void mouseEntered(MouseEvent* e); 00076 00077 void mouseExited(MouseEvent* e); 00078 00080 void keyPressed(KeyEvent* e); 00081 00082 void keyReleased(KeyEvent* e); 00083 00084 void keyClicked(KeyEvent* e); 00085 00086 void onLeftPressed(MouseEvent* e); 00087 00089 void updateSlider(); 00090 00091 }; 00092 00093 #endif