Loading common/draw_panel.cpp +6 −0 Original line number Original line Diff line number Diff line Loading @@ -183,6 +183,12 @@ EDA_DRAW_FRAME* EDA_DRAW_PANEL::GetParent() const } } void* EDA_DRAW_PANEL::GetDisplayOptions() { return GetParent()->GetDisplayOptions(); } BASE_SCREEN* EDA_DRAW_PANEL::GetScreen() BASE_SCREEN* EDA_DRAW_PANEL::GetScreen() { { EDA_DRAW_FRAME* parentFrame = GetParent(); EDA_DRAW_FRAME* parentFrame = GetParent(); Loading cvpcb/class_DisplayFootprintsFrame.cpp +24 −23 Original line number Original line Diff line number Diff line Loading @@ -53,9 +53,6 @@ #include <3d_viewer.h> #include <3d_viewer.h> DISPLAY_OPTIONS DisplayOpt; // General display options BEGIN_EVENT_TABLE( DISPLAY_FOOTPRINTS_FRAME, PCB_BASE_FRAME ) BEGIN_EVENT_TABLE( DISPLAY_FOOTPRINTS_FRAME, PCB_BASE_FRAME ) EVT_CLOSE( DISPLAY_FOOTPRINTS_FRAME::OnCloseWindow ) EVT_CLOSE( DISPLAY_FOOTPRINTS_FRAME::OnCloseWindow ) EVT_SIZE( DISPLAY_FOOTPRINTS_FRAME::OnSize ) EVT_SIZE( DISPLAY_FOOTPRINTS_FRAME::OnSize ) Loading Loading @@ -100,10 +97,11 @@ DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME( KIWAY* aKiway, CVPCB_MAINFRA GetScreen()->SetGrid( ID_POPUP_GRID_LEVEL_1000 + m_LastGridSizeId ); GetScreen()->SetGrid( ID_POPUP_GRID_LEVEL_1000 + m_LastGridSizeId ); // Initialize some display options // Initialize some display options DisplayOpt.DisplayPadIsol = false; // Pad clearance has no meaning here DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); displ_opts->m_DisplayPadIsol = false; // Pad clearance has no meaning here // Track and via clearance has no meaning here. // Track and via clearance has no meaning here. DisplayOpt.ShowTrackClearanceMode = DO_NOT_SHOW_CLEARANCE; displ_opts->m_ShowTrackClearanceMode = DO_NOT_SHOW_CLEARANCE; SetSize( m_FramePos.x, m_FramePos.y, m_FrameSize.x, m_FrameSize.y ); SetSize( m_FramePos.x, m_FramePos.y, m_FrameSize.x, m_FrameSize.y ); ReCreateHToolbar(); ReCreateHToolbar(); Loading Loading @@ -248,34 +246,36 @@ void DISPLAY_FOOTPRINTS_FRAME::ReCreateHToolbar() void DISPLAY_FOOTPRINTS_FRAME::OnUpdateTextDrawMode( wxUpdateUIEvent& aEvent ) void DISPLAY_FOOTPRINTS_FRAME::OnUpdateTextDrawMode( wxUpdateUIEvent& aEvent ) { { wxString msgTextsFill[3] = { _( "Show texts in line mode" ), DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); _( "Show texts in filled mode" ), wxString msgTextsFill[2] = { _( "Show texts in filled mode" ), _( "Show texts in sketch mode" ) }; _( "Show texts in sketch mode" ) }; unsigned i = m_DisplayModText + 1; unsigned i = displ_opts->m_DisplayModText + 1; if ( i > 2 ) if ( i > 2 ) i = 0; i = 1; aEvent.Check( m_DisplayModText == 0 ); aEvent.Check( displ_opts->m_DisplayModText == 1 ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH, msgTextsFill[i] ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH, msgTextsFill[i-1] ); } } void DISPLAY_FOOTPRINTS_FRAME::OnUpdateLineDrawMode( wxUpdateUIEvent& aEvent ) void DISPLAY_FOOTPRINTS_FRAME::OnUpdateLineDrawMode( wxUpdateUIEvent& aEvent ) { { wxString msgEdgesFill[3] = { _( "Show outlines in line mode" ), DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); _( "Show outlines in filled mode" ), wxString msgEdgesFill[3] = { _( "Show outlines in filled mode" ), _( "Show outlines in sketch mode" ) }; _( "Show outlines in sketch mode" ) }; int i = m_DisplayModEdge + 1; int i = displ_opts->m_DisplayModEdge + 1; if ( i > 2 ) if ( i > 2 ) i = 0; i = 1; aEvent.Check( m_DisplayModEdge == 0 ); aEvent.Check( displ_opts->m_DisplayModEdge == 2 ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH, msgEdgesFill[i] ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH, msgEdgesFill[i-1] ); } } Loading @@ -298,23 +298,24 @@ bool DISPLAY_FOOTPRINTS_FRAME::OnRightClick( const wxPoint& MousePos, wxMenu* Po void DISPLAY_FOOTPRINTS_FRAME::OnSelectOptionToolbar( wxCommandEvent& event ) void DISPLAY_FOOTPRINTS_FRAME::OnSelectOptionToolbar( wxCommandEvent& event ) { { int id = event.GetId(); int id = event.GetId(); DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); switch( id ) switch( id ) { { case ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH: case ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH: m_DisplayModText++; displ_opts->m_DisplayModText++; if( m_DisplayModText > 2 ) if( displ_opts->m_DisplayModText > 2 ) m_DisplayModText = 0; displ_opts->m_DisplayModText = 0; m_canvas->Refresh( ); m_canvas->Refresh( ); break; break; case ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH: case ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH: m_DisplayModEdge++; displ_opts->m_DisplayModEdge++; if( m_DisplayModEdge > 2 ) if( displ_opts->m_DisplayModEdge > 2 ) m_DisplayModEdge = 0; displ_opts->m_DisplayModEdge = 0; m_canvas->Refresh(); m_canvas->Refresh(); break; break; Loading cvpcb/dialogs/dialog_display_options.cpp +12 −8 Original line number Original line Diff line number Diff line Loading @@ -72,10 +72,12 @@ void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::initDialog() /* mandatory to use escape key as cancel under wxGTK. */ /* mandatory to use escape key as cancel under wxGTK. */ SetFocus(); SetFocus(); m_EdgesDisplayOption->SetSelection( m_Parent->m_DisplayModEdge ); DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)m_Parent->GetDisplayOptions(); m_TextDisplayOption->SetSelection( m_Parent->m_DisplayModText ); m_IsShowPadFill->SetValue( m_Parent->m_DisplayPadFill ); m_EdgesDisplayOption->SetSelection( displ_opts->m_DisplayModEdge ); m_IsShowPadNum->SetValue( m_Parent->m_DisplayPadNum ); m_TextDisplayOption->SetSelection( displ_opts->m_DisplayModText ); m_IsShowPadFill->SetValue( displ_opts->m_DisplayPadFill ); m_IsShowPadNum->SetValue( displ_opts->m_DisplayPadNum ); m_IsZoomNoCenter->SetValue( m_Parent->GetCanvas()->GetEnableZoomNoCenter() ); m_IsZoomNoCenter->SetValue( m_Parent->GetCanvas()->GetEnableZoomNoCenter() ); m_IsMiddleButtonPan->SetValue( m_Parent->GetCanvas()->GetEnableMiddleButtonPan() ); m_IsMiddleButtonPan->SetValue( m_Parent->GetCanvas()->GetEnableMiddleButtonPan() ); m_IsMiddleButtonPanLimited->SetValue( m_Parent->GetCanvas()->GetMiddleButtonPanLimited() ); m_IsMiddleButtonPanLimited->SetValue( m_Parent->GetCanvas()->GetMiddleButtonPanLimited() ); Loading @@ -90,10 +92,12 @@ void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::initDialog() void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::UpdateObjectSettings( void ) void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::UpdateObjectSettings( void ) { { m_Parent->m_DisplayModEdge = m_EdgesDisplayOption->GetSelection(); DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)m_Parent->GetDisplayOptions(); m_Parent->m_DisplayModText = m_TextDisplayOption->GetSelection(); m_Parent->m_DisplayPadNum = m_IsShowPadNum->GetValue(); displ_opts->m_DisplayModEdge = m_EdgesDisplayOption->GetSelection(); m_Parent->m_DisplayPadFill = m_IsShowPadFill->GetValue(); displ_opts->m_DisplayModText = m_TextDisplayOption->GetSelection(); displ_opts->m_DisplayPadNum = m_IsShowPadNum->GetValue(); displ_opts->m_DisplayPadFill = m_IsShowPadFill->GetValue(); m_Parent->GetCanvas()->SetEnableZoomNoCenter( m_IsZoomNoCenter->GetValue() ); m_Parent->GetCanvas()->SetEnableZoomNoCenter( m_IsZoomNoCenter->GetValue() ); m_Parent->GetCanvas()->SetEnableMiddleButtonPan( m_IsMiddleButtonPan->GetValue() ); m_Parent->GetCanvas()->SetEnableMiddleButtonPan( m_IsMiddleButtonPan->GetValue() ); m_Parent->GetCanvas()->SetMiddleButtonPanLimited( m_IsMiddleButtonPanLimited->GetValue() ); m_Parent->GetCanvas()->SetMiddleButtonPanLimited( m_IsMiddleButtonPanLimited->GetValue() ); Loading eeschema/hotkeys.cpp +13 −7 Original line number Original line Diff line number Diff line Loading @@ -31,6 +31,7 @@ #include <eeschema_id.h> #include <eeschema_id.h> #include <hotkeys.h> #include <hotkeys.h> #include <wxEeschemaStruct.h> #include <wxEeschemaStruct.h> #include <class_drawpanel.h> #include <general.h> #include <general.h> #include <libeditframe.h> #include <libeditframe.h> Loading Loading @@ -348,8 +349,6 @@ bool SCH_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, wxCommandEvent cmd( wxEVT_COMMAND_MENU_SELECTED ); wxCommandEvent cmd( wxEVT_COMMAND_MENU_SELECTED ); cmd.SetEventObject( this ); SCH_SCREEN* screen = GetScreen(); SCH_SCREEN* screen = GetScreen(); // itemInEdit == false means no item currently edited. We can ask for editing a new item // itemInEdit == false means no item currently edited. We can ask for editing a new item Loading Loading @@ -393,12 +392,19 @@ bool SCH_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, break; break; case HK_LEFT_CLICK: case HK_LEFT_CLICK: OnLeftClick( aDC, aPosition ); break; case HK_LEFT_DCLICK: // Simulate a double left click: generate 2 events case HK_LEFT_DCLICK: // Simulate a double left click: generate 2 events if( screen->m_BlockLocate.GetState() == STATE_BLOCK_MOVE ) { GetCanvas()->SetAutoPanRequest( false ); HandleBlockPlace( aDC ); } else if( screen->m_BlockLocate.GetState() == STATE_NO_BLOCK ) { OnLeftClick( aDC, aPosition ); OnLeftClick( aDC, aPosition ); if( hotKey->m_Idcommand == HK_LEFT_DCLICK ) OnLeftDClick( aDC, aPosition ); OnLeftDClick( aDC, aPosition ); } break; break; case HK_ZOOM_IN: case HK_ZOOM_IN: Loading include/class_drawpanel.h +7 −0 Original line number Original line Diff line number Diff line Loading @@ -122,6 +122,13 @@ public: EDA_DRAW_PANEL( EDA_DRAW_FRAME* parent, int id, const wxPoint& pos, const wxSize& size ); EDA_DRAW_PANEL( EDA_DRAW_FRAME* parent, int id, const wxPoint& pos, const wxSize& size ); ~EDA_DRAW_PANEL(); ~EDA_DRAW_PANEL(); /** * Function GetDisplayOptions * A way to pass info to draw functions. * this is just an accessor to the GetDisplayOptions() parent frame function. */ void* GetDisplayOptions(); BASE_SCREEN* GetScreen(); BASE_SCREEN* GetScreen(); EDA_DRAW_FRAME* GetParent() const; EDA_DRAW_FRAME* GetParent() const; Loading Loading
common/draw_panel.cpp +6 −0 Original line number Original line Diff line number Diff line Loading @@ -183,6 +183,12 @@ EDA_DRAW_FRAME* EDA_DRAW_PANEL::GetParent() const } } void* EDA_DRAW_PANEL::GetDisplayOptions() { return GetParent()->GetDisplayOptions(); } BASE_SCREEN* EDA_DRAW_PANEL::GetScreen() BASE_SCREEN* EDA_DRAW_PANEL::GetScreen() { { EDA_DRAW_FRAME* parentFrame = GetParent(); EDA_DRAW_FRAME* parentFrame = GetParent(); Loading
cvpcb/class_DisplayFootprintsFrame.cpp +24 −23 Original line number Original line Diff line number Diff line Loading @@ -53,9 +53,6 @@ #include <3d_viewer.h> #include <3d_viewer.h> DISPLAY_OPTIONS DisplayOpt; // General display options BEGIN_EVENT_TABLE( DISPLAY_FOOTPRINTS_FRAME, PCB_BASE_FRAME ) BEGIN_EVENT_TABLE( DISPLAY_FOOTPRINTS_FRAME, PCB_BASE_FRAME ) EVT_CLOSE( DISPLAY_FOOTPRINTS_FRAME::OnCloseWindow ) EVT_CLOSE( DISPLAY_FOOTPRINTS_FRAME::OnCloseWindow ) EVT_SIZE( DISPLAY_FOOTPRINTS_FRAME::OnSize ) EVT_SIZE( DISPLAY_FOOTPRINTS_FRAME::OnSize ) Loading Loading @@ -100,10 +97,11 @@ DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME( KIWAY* aKiway, CVPCB_MAINFRA GetScreen()->SetGrid( ID_POPUP_GRID_LEVEL_1000 + m_LastGridSizeId ); GetScreen()->SetGrid( ID_POPUP_GRID_LEVEL_1000 + m_LastGridSizeId ); // Initialize some display options // Initialize some display options DisplayOpt.DisplayPadIsol = false; // Pad clearance has no meaning here DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); displ_opts->m_DisplayPadIsol = false; // Pad clearance has no meaning here // Track and via clearance has no meaning here. // Track and via clearance has no meaning here. DisplayOpt.ShowTrackClearanceMode = DO_NOT_SHOW_CLEARANCE; displ_opts->m_ShowTrackClearanceMode = DO_NOT_SHOW_CLEARANCE; SetSize( m_FramePos.x, m_FramePos.y, m_FrameSize.x, m_FrameSize.y ); SetSize( m_FramePos.x, m_FramePos.y, m_FrameSize.x, m_FrameSize.y ); ReCreateHToolbar(); ReCreateHToolbar(); Loading Loading @@ -248,34 +246,36 @@ void DISPLAY_FOOTPRINTS_FRAME::ReCreateHToolbar() void DISPLAY_FOOTPRINTS_FRAME::OnUpdateTextDrawMode( wxUpdateUIEvent& aEvent ) void DISPLAY_FOOTPRINTS_FRAME::OnUpdateTextDrawMode( wxUpdateUIEvent& aEvent ) { { wxString msgTextsFill[3] = { _( "Show texts in line mode" ), DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); _( "Show texts in filled mode" ), wxString msgTextsFill[2] = { _( "Show texts in filled mode" ), _( "Show texts in sketch mode" ) }; _( "Show texts in sketch mode" ) }; unsigned i = m_DisplayModText + 1; unsigned i = displ_opts->m_DisplayModText + 1; if ( i > 2 ) if ( i > 2 ) i = 0; i = 1; aEvent.Check( m_DisplayModText == 0 ); aEvent.Check( displ_opts->m_DisplayModText == 1 ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH, msgTextsFill[i] ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH, msgTextsFill[i-1] ); } } void DISPLAY_FOOTPRINTS_FRAME::OnUpdateLineDrawMode( wxUpdateUIEvent& aEvent ) void DISPLAY_FOOTPRINTS_FRAME::OnUpdateLineDrawMode( wxUpdateUIEvent& aEvent ) { { wxString msgEdgesFill[3] = { _( "Show outlines in line mode" ), DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); _( "Show outlines in filled mode" ), wxString msgEdgesFill[3] = { _( "Show outlines in filled mode" ), _( "Show outlines in sketch mode" ) }; _( "Show outlines in sketch mode" ) }; int i = m_DisplayModEdge + 1; int i = displ_opts->m_DisplayModEdge + 1; if ( i > 2 ) if ( i > 2 ) i = 0; i = 1; aEvent.Check( m_DisplayModEdge == 0 ); aEvent.Check( displ_opts->m_DisplayModEdge == 2 ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH, msgEdgesFill[i] ); m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH, msgEdgesFill[i-1] ); } } Loading @@ -298,23 +298,24 @@ bool DISPLAY_FOOTPRINTS_FRAME::OnRightClick( const wxPoint& MousePos, wxMenu* Po void DISPLAY_FOOTPRINTS_FRAME::OnSelectOptionToolbar( wxCommandEvent& event ) void DISPLAY_FOOTPRINTS_FRAME::OnSelectOptionToolbar( wxCommandEvent& event ) { { int id = event.GetId(); int id = event.GetId(); DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions(); switch( id ) switch( id ) { { case ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH: case ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH: m_DisplayModText++; displ_opts->m_DisplayModText++; if( m_DisplayModText > 2 ) if( displ_opts->m_DisplayModText > 2 ) m_DisplayModText = 0; displ_opts->m_DisplayModText = 0; m_canvas->Refresh( ); m_canvas->Refresh( ); break; break; case ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH: case ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH: m_DisplayModEdge++; displ_opts->m_DisplayModEdge++; if( m_DisplayModEdge > 2 ) if( displ_opts->m_DisplayModEdge > 2 ) m_DisplayModEdge = 0; displ_opts->m_DisplayModEdge = 0; m_canvas->Refresh(); m_canvas->Refresh(); break; break; Loading
cvpcb/dialogs/dialog_display_options.cpp +12 −8 Original line number Original line Diff line number Diff line Loading @@ -72,10 +72,12 @@ void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::initDialog() /* mandatory to use escape key as cancel under wxGTK. */ /* mandatory to use escape key as cancel under wxGTK. */ SetFocus(); SetFocus(); m_EdgesDisplayOption->SetSelection( m_Parent->m_DisplayModEdge ); DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)m_Parent->GetDisplayOptions(); m_TextDisplayOption->SetSelection( m_Parent->m_DisplayModText ); m_IsShowPadFill->SetValue( m_Parent->m_DisplayPadFill ); m_EdgesDisplayOption->SetSelection( displ_opts->m_DisplayModEdge ); m_IsShowPadNum->SetValue( m_Parent->m_DisplayPadNum ); m_TextDisplayOption->SetSelection( displ_opts->m_DisplayModText ); m_IsShowPadFill->SetValue( displ_opts->m_DisplayPadFill ); m_IsShowPadNum->SetValue( displ_opts->m_DisplayPadNum ); m_IsZoomNoCenter->SetValue( m_Parent->GetCanvas()->GetEnableZoomNoCenter() ); m_IsZoomNoCenter->SetValue( m_Parent->GetCanvas()->GetEnableZoomNoCenter() ); m_IsMiddleButtonPan->SetValue( m_Parent->GetCanvas()->GetEnableMiddleButtonPan() ); m_IsMiddleButtonPan->SetValue( m_Parent->GetCanvas()->GetEnableMiddleButtonPan() ); m_IsMiddleButtonPanLimited->SetValue( m_Parent->GetCanvas()->GetMiddleButtonPanLimited() ); m_IsMiddleButtonPanLimited->SetValue( m_Parent->GetCanvas()->GetMiddleButtonPanLimited() ); Loading @@ -90,10 +92,12 @@ void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::initDialog() void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::UpdateObjectSettings( void ) void DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::UpdateObjectSettings( void ) { { m_Parent->m_DisplayModEdge = m_EdgesDisplayOption->GetSelection(); DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)m_Parent->GetDisplayOptions(); m_Parent->m_DisplayModText = m_TextDisplayOption->GetSelection(); m_Parent->m_DisplayPadNum = m_IsShowPadNum->GetValue(); displ_opts->m_DisplayModEdge = m_EdgesDisplayOption->GetSelection(); m_Parent->m_DisplayPadFill = m_IsShowPadFill->GetValue(); displ_opts->m_DisplayModText = m_TextDisplayOption->GetSelection(); displ_opts->m_DisplayPadNum = m_IsShowPadNum->GetValue(); displ_opts->m_DisplayPadFill = m_IsShowPadFill->GetValue(); m_Parent->GetCanvas()->SetEnableZoomNoCenter( m_IsZoomNoCenter->GetValue() ); m_Parent->GetCanvas()->SetEnableZoomNoCenter( m_IsZoomNoCenter->GetValue() ); m_Parent->GetCanvas()->SetEnableMiddleButtonPan( m_IsMiddleButtonPan->GetValue() ); m_Parent->GetCanvas()->SetEnableMiddleButtonPan( m_IsMiddleButtonPan->GetValue() ); m_Parent->GetCanvas()->SetMiddleButtonPanLimited( m_IsMiddleButtonPanLimited->GetValue() ); m_Parent->GetCanvas()->SetMiddleButtonPanLimited( m_IsMiddleButtonPanLimited->GetValue() ); Loading
eeschema/hotkeys.cpp +13 −7 Original line number Original line Diff line number Diff line Loading @@ -31,6 +31,7 @@ #include <eeschema_id.h> #include <eeschema_id.h> #include <hotkeys.h> #include <hotkeys.h> #include <wxEeschemaStruct.h> #include <wxEeschemaStruct.h> #include <class_drawpanel.h> #include <general.h> #include <general.h> #include <libeditframe.h> #include <libeditframe.h> Loading Loading @@ -348,8 +349,6 @@ bool SCH_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, wxCommandEvent cmd( wxEVT_COMMAND_MENU_SELECTED ); wxCommandEvent cmd( wxEVT_COMMAND_MENU_SELECTED ); cmd.SetEventObject( this ); SCH_SCREEN* screen = GetScreen(); SCH_SCREEN* screen = GetScreen(); // itemInEdit == false means no item currently edited. We can ask for editing a new item // itemInEdit == false means no item currently edited. We can ask for editing a new item Loading Loading @@ -393,12 +392,19 @@ bool SCH_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, break; break; case HK_LEFT_CLICK: case HK_LEFT_CLICK: OnLeftClick( aDC, aPosition ); break; case HK_LEFT_DCLICK: // Simulate a double left click: generate 2 events case HK_LEFT_DCLICK: // Simulate a double left click: generate 2 events if( screen->m_BlockLocate.GetState() == STATE_BLOCK_MOVE ) { GetCanvas()->SetAutoPanRequest( false ); HandleBlockPlace( aDC ); } else if( screen->m_BlockLocate.GetState() == STATE_NO_BLOCK ) { OnLeftClick( aDC, aPosition ); OnLeftClick( aDC, aPosition ); if( hotKey->m_Idcommand == HK_LEFT_DCLICK ) OnLeftDClick( aDC, aPosition ); OnLeftDClick( aDC, aPosition ); } break; break; case HK_ZOOM_IN: case HK_ZOOM_IN: Loading
include/class_drawpanel.h +7 −0 Original line number Original line Diff line number Diff line Loading @@ -122,6 +122,13 @@ public: EDA_DRAW_PANEL( EDA_DRAW_FRAME* parent, int id, const wxPoint& pos, const wxSize& size ); EDA_DRAW_PANEL( EDA_DRAW_FRAME* parent, int id, const wxPoint& pos, const wxSize& size ); ~EDA_DRAW_PANEL(); ~EDA_DRAW_PANEL(); /** * Function GetDisplayOptions * A way to pass info to draw functions. * this is just an accessor to the GetDisplayOptions() parent frame function. */ void* GetDisplayOptions(); BASE_SCREEN* GetScreen(); BASE_SCREEN* GetScreen(); EDA_DRAW_FRAME* GetParent() const; EDA_DRAW_FRAME* GetParent() const; Loading