Loading common/drawpanel_gal.cpp +7 −0 Original line number Diff line number Diff line Loading @@ -184,6 +184,13 @@ void EDA_DRAW_PANEL_GAL::Refresh( bool eraseBackground, const wxRect* rect ) } void EDA_DRAW_PANEL_GAL::StopDrawing() { Disconnect( wxEVT_PAINT, wxPaintEventHandler( EDA_DRAW_PANEL_GAL::onPaint ), NULL, this ); m_refreshTimer.Stop(); } void EDA_DRAW_PANEL_GAL::SwitchBackend( GalType aGalType ) { // Protect from refreshing during backend switch Loading include/class_drawpanel_gal.h +6 −0 Original line number Diff line number Diff line Loading @@ -111,6 +111,12 @@ public: m_eventDispatcher = aEventDispatcher; } /** * Function StopDrawing() * Prevents the GAL canvas from further drawing till it is recreated. */ void StopDrawing(); protected: void onPaint( wxPaintEvent& WXUNUSED( aEvent ) ); void onSize( wxSizeEvent& aEvent ); Loading pcbnew/pcbframe.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -556,6 +556,7 @@ void PCB_EDIT_FRAME::OnQuit( wxCommandEvent& event ) void PCB_EDIT_FRAME::OnCloseWindow( wxCloseEvent& Event ) { m_canvas->SetAbortRequest( true ); m_galCanvas->StopDrawing(); if( GetScreen()->IsModify() ) { Loading Loading
common/drawpanel_gal.cpp +7 −0 Original line number Diff line number Diff line Loading @@ -184,6 +184,13 @@ void EDA_DRAW_PANEL_GAL::Refresh( bool eraseBackground, const wxRect* rect ) } void EDA_DRAW_PANEL_GAL::StopDrawing() { Disconnect( wxEVT_PAINT, wxPaintEventHandler( EDA_DRAW_PANEL_GAL::onPaint ), NULL, this ); m_refreshTimer.Stop(); } void EDA_DRAW_PANEL_GAL::SwitchBackend( GalType aGalType ) { // Protect from refreshing during backend switch Loading
include/class_drawpanel_gal.h +6 −0 Original line number Diff line number Diff line Loading @@ -111,6 +111,12 @@ public: m_eventDispatcher = aEventDispatcher; } /** * Function StopDrawing() * Prevents the GAL canvas from further drawing till it is recreated. */ void StopDrawing(); protected: void onPaint( wxPaintEvent& WXUNUSED( aEvent ) ); void onSize( wxSizeEvent& aEvent ); Loading
pcbnew/pcbframe.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -556,6 +556,7 @@ void PCB_EDIT_FRAME::OnQuit( wxCommandEvent& event ) void PCB_EDIT_FRAME::OnCloseWindow( wxCloseEvent& Event ) { m_canvas->SetAbortRequest( true ); m_galCanvas->StopDrawing(); if( GetScreen()->IsModify() ) { Loading