From b57e9492b1211547989f6e42b0d4576aecb9877f Mon Sep 17 00:00:00 2001 From: Jeff Young Date: Thu, 28 Mar 2019 23:08:37 +0000 Subject: [PATCH] Disable alias controls when no alias is selected. Fixes: lp:1821698 * https://bugs.launchpad.net/kicad/+bug/1821698 --- eeschema/dialogs/dialog_edit_component_in_lib.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/eeschema/dialogs/dialog_edit_component_in_lib.cpp b/eeschema/dialogs/dialog_edit_component_in_lib.cpp index 5e32aa1897..b0af9a3e5c 100644 --- a/eeschema/dialogs/dialog_edit_component_in_lib.cpp +++ b/eeschema/dialogs/dialog_edit_component_in_lib.cpp @@ -223,12 +223,10 @@ bool DIALOG_EDIT_COMPONENT_IN_LIBRARY::TransferDataToWindow() } if( m_aliasListBox->GetCount() ) - { m_aliasListBox->SetSelection( 0 ); - wxCommandEvent dummy; - OnSelectAlias( dummy ); - } + wxCommandEvent dummy; + OnSelectAlias( dummy ); adjustAliasGridColumns( m_aliasGrid->GetClientRect().GetWidth() - 4 ); @@ -625,21 +623,29 @@ void DIALOG_EDIT_COMPONENT_IN_LIBRARY::OnSelectAlias( wxCommandEvent& event ) m_aliasGrid->SetCellValue( VALUE, FDC_VALUE, alias->GetName() ); m_aliasGrid->SetCellValue( DATASHEET, FDC_VALUE, alias->GetDocFileName() ); + m_aliasGrid->Enable( true ); // Use ChangeValue() so we don't generate events m_AliasNameCtrl->ChangeValue( alias->GetName() ); + m_AliasNameCtrl->Enable( true ); m_AliasDescCtrl->ChangeValue( alias->GetDescription() ); + m_AliasDescCtrl->Enable( true ); m_AliasKeywordsCtrl->ChangeValue( alias->GetKeyWords() ); + m_AliasKeywordsCtrl->Enable( true ); } else { m_aliasGrid->SetCellValue( VALUE, FDC_VALUE, wxEmptyString ); m_aliasGrid->SetCellValue( DATASHEET, FDC_VALUE, wxEmptyString ); + m_aliasGrid->Enable( false ); // Use ChangeValue() so we don't generate events m_AliasNameCtrl->ChangeValue( wxEmptyString ); + m_AliasNameCtrl->Enable( false ); m_AliasDescCtrl->ChangeValue( wxEmptyString ); + m_AliasDescCtrl->Enable( false ); m_AliasKeywordsCtrl->ChangeValue( wxEmptyString ); + m_AliasKeywordsCtrl->Enable( false ); } m_currentAlias = newIdx;