Don't update thickness unless it really changed.
Otherwise we're going to generate a continuous stream of OnUpdateUI events.... Fixes https://gitlab.com/kicad/code/kicad/issues/5049
This commit is contained in:
parent
75c0dc7454
commit
91350ec9ea
|
@ -222,7 +222,7 @@ void PANEL_SETUP_BOARD_STACKUP::onRemoveDielectricLayer( wxCommandEvent& event )
|
||||||
int ui_row = 0; // The row index in m_rowUiItemsList of items in choice list
|
int ui_row = 0; // The row index in m_rowUiItemsList of items in choice list
|
||||||
|
|
||||||
// Build the list of dielectric layers:
|
// Build the list of dielectric layers:
|
||||||
for( auto item : m_stackup.GetList() )
|
for( BOARD_STACKUP_ITEM* item : m_stackup.GetList() )
|
||||||
{
|
{
|
||||||
if( !item->IsEnabled() || item->GetType() != BS_ITEM_TYPE_DIELECTRIC ||
|
if( !item->IsEnabled() || item->GetType() != BS_ITEM_TYPE_DIELECTRIC ||
|
||||||
item->GetSublayersCount() <= 1 )
|
item->GetSublayersCount() <= 1 )
|
||||||
|
@ -265,7 +265,7 @@ void PANEL_SETUP_BOARD_STACKUP::onRemoveDielUI( wxUpdateUIEvent& event )
|
||||||
{
|
{
|
||||||
// The m_buttonRemoveDielectricLayer wxButton is enabled only if a dielectric
|
// The m_buttonRemoveDielectricLayer wxButton is enabled only if a dielectric
|
||||||
// layer can be removed, i.e. if dielectric layers have sublayers
|
// layer can be removed, i.e. if dielectric layers have sublayers
|
||||||
for( auto item : m_stackup.GetList() )
|
for( BOARD_STACKUP_ITEM* item : m_stackup.GetList() )
|
||||||
{
|
{
|
||||||
if( !item->IsEnabled() || item->GetType() != BS_ITEM_TYPE_DIELECTRIC )
|
if( !item->IsEnabled() || item->GetType() != BS_ITEM_TYPE_DIELECTRIC )
|
||||||
continue;
|
continue;
|
||||||
|
@ -335,7 +335,10 @@ void PANEL_SETUP_BOARD_STACKUP::onUpdateThicknessValue( wxUpdateUIEvent& event )
|
||||||
thickness += item_thickness;
|
thickness += item_thickness;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_tcCTValue->SetValue( StringFromValue( m_units, thickness, true ) );
|
wxString thicknessStr = StringFromValue( m_units, thickness, true );
|
||||||
|
|
||||||
|
if( m_tcCTValue->GetValue() != thicknessStr )
|
||||||
|
m_tcCTValue->SetValue( thicknessStr );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue