From 286cb97fcf65da6eeb70e7035383e4dacb39f0b3 Mon Sep 17 00:00:00 2001 From: "Unknown (NI)" Date: Sat, 22 May 1999 03:01:45 +0000 Subject: [PATCH] Improved keypress handling git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- utils/glcanvas/samples/cube/cube.h | 60 +++++++++++++++++++----------- 1 file changed, 39 insertions(+), 21 deletions(-) diff --git a/utils/glcanvas/samples/cube/cube.h b/utils/glcanvas/samples/cube/cube.h index 9379861392..ecbabfb177 100644 --- a/utils/glcanvas/samples/cube/cube.h +++ b/utils/glcanvas/samples/cube/cube.h @@ -26,8 +26,8 @@ class TestGLCanvas; class MyFrame: public wxFrame { public: - MyFrame(wxFrame *frame, const wxString& title, const wxPoint& pos, const wxSize& size, - long style = wxDEFAULT_FRAME_STYLE); + MyFrame(wxFrame *frame, const wxString& title, const wxPoint& pos, + const wxSize& size, long style = wxDEFAULT_FRAME_STYLE); void OnExit(wxCommandEvent& event); void OnNewWindow(); @@ -42,31 +42,49 @@ DECLARE_EVENT_TABLE() class TestGLCanvas: public wxGLCanvas { - 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, + 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); + ~TestGLCanvas(void); - void OnPaint(wxPaintEvent& event); - void OnSize(wxSizeEvent& event); - void OnEraseBackground(wxEraseEvent& event); - void OnKeyDown(wxKeyEvent& event); - void OnKeyUp(wxKeyEvent& event); - void InitGL(void); - void Rotate( double deg ); + 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 ); - private: - bool m_init; - GLuint m_gllist; - long m_rleft; - long m_rright; +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; DECLARE_EVENT_TABLE() }; -- 2.45.2