From ccba4b14629d548827b2b76c35661aab3c4248a7 Mon Sep 17 00:00:00 2001 From: Jon Evans Date: Sat, 27 Feb 2021 14:28:17 -0500 Subject: [PATCH] Pcbnew: don't show project warning on stackup pages Fixes https://gitlab.com/kicad/code/kicad/-/issues/5568 --- pcbnew/dialogs/dialog_board_setup.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pcbnew/dialogs/dialog_board_setup.cpp b/pcbnew/dialogs/dialog_board_setup.cpp index 32effc3115..4f3daa01d9 100644 --- a/pcbnew/dialogs/dialog_board_setup.cpp +++ b/pcbnew/dialogs/dialog_board_setup.cpp @@ -110,9 +110,6 @@ DIALOG_BOARD_SETUP::DIALOG_BOARD_SETUP( PCB_EDIT_FRAME* aFrame ) : m_treebook->Connect( wxEVT_TREEBOOK_PAGE_CHANGED, wxBookCtrlEventHandler( DIALOG_BOARD_SETUP::OnPageChange ), NULL, this ); - if( Prj().IsReadOnly() ) - m_infoBar->ShowMessage( _( "Project is missing or read-only. Changes will not be saved." ) ); - finishDialogSettings(); } @@ -127,9 +124,20 @@ DIALOG_BOARD_SETUP::~DIALOG_BOARD_SETUP() void DIALOG_BOARD_SETUP::OnPageChange( wxBookCtrlEvent& event ) { if( event.GetSelection() == m_physicalStackupPage ) + { m_physicalStackup->OnLayersOptionsChanged( m_layers->GetUILayerMask() ); + m_infoBar->Dismiss(); + } else if( event.GetSelection() == m_layerSetupPage ) + { m_layers->SyncCopperLayers( m_physicalStackup->GetCopperLayerCount() ); + m_infoBar->Dismiss(); + } + else if( Prj().IsReadOnly() ) + { + m_infoBar->ShowMessage( + _( "Project is missing or read-only. Changes will not be saved." ) ); + } #ifdef __WXMAC__ // Work around an OSX bug where the wxGrid children don't get placed correctly until