Commit 6601495c authored by charras's avatar charras

Fixed mouse wheel not working if 3D frame under wxWidgets 2.9

parent 6eda97fb
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: 3d_canvas.cpp // Name: 3d_canvas.cpp
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation
#pragma interface
#endif
#include "fctsys.h" #include "fctsys.h"
#include "trigo.h" #include "trigo.h"
...@@ -35,8 +28,13 @@ ...@@ -35,8 +28,13 @@
BEGIN_EVENT_TABLE( Pcb3D_GLCanvas, wxGLCanvas ) BEGIN_EVENT_TABLE( Pcb3D_GLCanvas, wxGLCanvas )
EVT_PAINT( Pcb3D_GLCanvas::OnPaint ) EVT_PAINT( Pcb3D_GLCanvas::OnPaint )
// key event:
EVT_CHAR( Pcb3D_GLCanvas::OnChar ) EVT_CHAR( Pcb3D_GLCanvas::OnChar )
EVT_MOUSE_EVENTS( Pcb3D_GLCanvas::OnMouseEvent ) // mouse events
EVT_RIGHT_DOWN( Pcb3D_GLCanvas::OnRightClick )
EVT_MOUSEWHEEL( Pcb3D_GLCanvas::OnMouseWheel )
EVT_MOTION( Pcb3D_GLCanvas::OnMouseMove )
// other events
EVT_ERASE_BACKGROUND( Pcb3D_GLCanvas::OnEraseBackground ) EVT_ERASE_BACKGROUND( Pcb3D_GLCanvas::OnEraseBackground )
EVT_MENU_RANGE( ID_POPUP_3D_VIEW_START, ID_POPUP_3D_VIEW_END, EVT_MENU_RANGE( ID_POPUP_3D_VIEW_START, ID_POPUP_3D_VIEW_END,
Pcb3D_GLCanvas::OnPopUpMenu ) Pcb3D_GLCanvas::OnPopUpMenu )
...@@ -205,20 +203,10 @@ void Pcb3D_GLCanvas::SetView3D( int keycode ) ...@@ -205,20 +203,10 @@ void Pcb3D_GLCanvas::SetView3D( int keycode )
Refresh( FALSE ); Refresh( FALSE );
} }
void Pcb3D_GLCanvas::OnMouseWheel( wxMouseEvent& event )
void Pcb3D_GLCanvas::OnMouseEvent( wxMouseEvent& event )
{ {
wxSize size( GetClientSize() ); wxSize size( GetClientSize() );
double spin_quat[4];
if( event.RightDown() )
{
OnRightClick( event ); return;
}
if( event.m_wheelRotation )
{
if( event.ShiftDown() ) if( event.ShiftDown() )
{ {
if( event.GetWheelRotation() < 0 ) if( event.GetWheelRotation() < 0 )
...@@ -258,7 +246,16 @@ void Pcb3D_GLCanvas::OnMouseEvent( wxMouseEvent& event ) ...@@ -258,7 +246,16 @@ void Pcb3D_GLCanvas::OnMouseEvent( wxMouseEvent& event )
DisplayStatus(); DisplayStatus();
Refresh( FALSE ); Refresh( FALSE );
} }
}
g_Parm_3D_Visu.m_Beginx = event.GetX();
g_Parm_3D_Visu.m_Beginy = event.GetY();
}
void Pcb3D_GLCanvas::OnMouseMove( wxMouseEvent& event )
{
wxSize size( GetClientSize() );
double spin_quat[4];
if( event.Dragging() ) if( event.Dragging() )
{ {
......
...@@ -149,7 +149,8 @@ public: ...@@ -149,7 +149,8 @@ public:
void OnPaint( wxPaintEvent& event ); void OnPaint( wxPaintEvent& event );
void OnEraseBackground( wxEraseEvent& event ); void OnEraseBackground( wxEraseEvent& event );
void OnChar( wxKeyEvent& event ); void OnChar( wxKeyEvent& event );
void OnMouseEvent( wxMouseEvent& event ); void OnMouseWheel( wxMouseEvent& event );
void OnMouseMove( wxMouseEvent& event );
void OnRightClick( wxMouseEvent& event ); void OnRightClick( wxMouseEvent& event );
void OnPopUpMenu( wxCommandEvent& event ); void OnPopUpMenu( wxCommandEvent& event );
void TakeScreenshot( wxCommandEvent& event ); void TakeScreenshot( wxCommandEvent& event );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment