X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8b089c5e8c8a2140258d150ca1ce42afd3b79e1b..6ce8b8484654b5ab073951373c93d9bdd8221881:/samples/opengl/cube/cube.h?ds=sidebyside diff --git a/samples/opengl/cube/cube.h b/samples/opengl/cube/cube.h index 66732f2453..f50ea2a049 100644 --- a/samples/opengl/cube/cube.h +++ b/samples/opengl/cube/cube.h @@ -6,88 +6,99 @@ // Created: 04/01/98 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_CUBE_H_ #define _WX_CUBE_H_ -#include +#include "wx/glcanvas.h" // Define a new application type class MyApp: public wxApp { public: - bool OnInit(void); + bool OnInit(); }; // Define a new frame type class TestGLCanvas; + class MyFrame: public wxFrame { public: - MyFrame(wxFrame *frame, const wxString& title, const wxPoint& pos, - const wxSize& size, long style = wxDEFAULT_FRAME_STYLE); + static MyFrame *Create(MyFrame *parentFrame, bool isCloneWindow = false); void OnExit(wxCommandEvent& event); - void OnNewWindow(); - void OnDefRotateLeftKey(); - void OnDefRotateRightKey(); - -public: - TestGLCanvas* m_canvas; + void OnNewWindow(wxCommandEvent& event); + void OnDefRotateLeftKey(wxCommandEvent& event); + void OnDefRotateRightKey(wxCommandEvent& event); -DECLARE_EVENT_TABLE() +private: + + MyFrame(wxWindow *parent, const wxString& title, const wxPoint& pos, + const wxSize& size, long style = wxDEFAULT_FRAME_STYLE); + + + TestGLCanvas *m_canvas; + + DECLARE_EVENT_TABLE() }; +#if wxUSE_GLCANVAS + class TestGLCanvas: public wxGLCanvas { - friend class MyFrame; + friend class MyFrame; public: - TestGLCanvas(wxWindow *parent, const wxWindowID id = -1, - const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = 0, const wxString& name = "TestGLCanvas"); - TestGLCanvas(wxWindow *parent, const TestGLCanvas &other, - const wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = 0, - const wxString& name = "TestGLCanvas" ); - - ~TestGLCanvas(void); - - void OnPaint(wxPaintEvent& event); - void OnSize(wxSizeEvent& event); - void OnEraseBackground(wxEraseEvent& event); - void OnKeyDown(wxKeyEvent& event); - void OnKeyUp(wxKeyEvent& event); - void OnEnterWindow( wxMouseEvent& event ); - - void Render( void ); - void InitGL(void); - void Rotate( GLfloat deg ); - static GLfloat CalcRotateSpeed( unsigned long acceltime ); - static GLfloat CalcRotateAngle( unsigned long lasttime, - unsigned long acceltime ); - void Action( long code, unsigned long lasttime, - unsigned long acceltime ); - + TestGLCanvas( wxWindow *parent, wxWindowID id = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, const wxString& name = _T("TestGLCanvas") ); + + TestGLCanvas( wxWindow *parent, const TestGLCanvas *other, + wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = 0, + const wxString& name = _T("TestGLCanvas") ); + + ~TestGLCanvas(); + + void OnPaint(wxPaintEvent& event); + void OnSize(wxSizeEvent& event); + void OnEraseBackground(wxEraseEvent& event); + void OnKeyDown(wxKeyEvent& event); + void OnKeyUp(wxKeyEvent& event); + void OnEnterWindow(wxMouseEvent& event); + + void Render(); + void InitGL(); + void Rotate(GLfloat deg); + static GLfloat CalcRotateSpeed(unsigned long acceltime); + static GLfloat CalcRotateAngle( unsigned long lasttime, + unsigned long acceltime ); + void Action( long code, unsigned long lasttime, + unsigned long acceltime ); + private: - bool m_init; - GLuint m_gllist; - long m_rleft; - long m_rright; - - static unsigned long m_secbase; - static int m_TimeInitialized; - static unsigned long m_xsynct; - static unsigned long m_gsynct; - - long m_Key; - unsigned long m_StartTime; - unsigned long m_LastTime; - unsigned long m_LastRedraw; + bool m_init; + GLuint m_gllist; + long m_rleft; + long m_rright; + + static unsigned long m_secbase; + static int m_TimeInitialized; + static unsigned long m_xsynct; + static unsigned long m_gsynct; + + long m_Key; + unsigned long m_StartTime; + unsigned long m_LastTime; + unsigned long m_LastRedraw; DECLARE_EVENT_TABLE() }; -#endif +#endif // #if wxUSE_GLCANVAS + +#endif // #ifndef _WX_CUBE_H_