mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-14 02:03:12 +02:00
Wait for chooser to finish initializing before enabling char hook (KICAD-BJ0).
This commit is contained in:
parent
4137b9d31c
commit
5d4eb2cce6
@ -119,6 +119,8 @@ DIALOG_SYMBOL_CHOOSER::~DIALOG_SYMBOL_CHOOSER()
|
|||||||
cfg->m_SymChooserPanel.keep_symbol = m_keepSymbol->GetValue();
|
cfg->m_SymChooserPanel.keep_symbol = m_keepSymbol->GetValue();
|
||||||
cfg->m_SymChooserPanel.place_all_units = m_useUnits->GetValue();
|
cfg->m_SymChooserPanel.place_all_units = m_useUnits->GetValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Unbind( wxEVT_CHAR_HOOK, &PANEL_SYMBOL_CHOOSER::OnChar, m_chooserPanel );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -113,12 +113,17 @@ SYMBOL_CHOOSER_FRAME::SYMBOL_CHOOSER_FRAME( KIWAY* aKiway, wxWindow* aParent, bo
|
|||||||
frameSizer->Add( bottomPanel, 0, wxEXPAND );
|
frameSizer->Add( bottomPanel, 0, wxEXPAND );
|
||||||
|
|
||||||
SetSizer( frameSizer );
|
SetSizer( frameSizer );
|
||||||
|
SetTitle( GetTitle() + wxString::Format( _( " (%d items loaded)" ), m_chooserPanel->GetItemCount() ) );
|
||||||
SetTitle( GetTitle() + wxString::Format( _( " (%d items loaded)" ),
|
|
||||||
m_chooserPanel->GetItemCount() ) );
|
|
||||||
|
|
||||||
Layout();
|
Layout();
|
||||||
m_chooserPanel->FinishSetup();
|
m_chooserPanel->FinishSetup();
|
||||||
|
|
||||||
|
Bind( wxEVT_CHAR_HOOK, &PANEL_SYMBOL_CHOOSER::OnChar, m_chooserPanel );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
SYMBOL_CHOOSER_FRAME::~SYMBOL_CHOOSER_FRAME()
|
||||||
|
{
|
||||||
|
Unbind( wxEVT_CHAR_HOOK, &PANEL_SYMBOL_CHOOSER::OnChar, m_chooserPanel );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ public:
|
|||||||
*/
|
*/
|
||||||
SYMBOL_CHOOSER_FRAME( KIWAY* aKiway, wxWindow* aParent, bool& aCancelled );
|
SYMBOL_CHOOSER_FRAME( KIWAY* aKiway, wxWindow* aParent, bool& aCancelled );
|
||||||
|
|
||||||
~SYMBOL_CHOOSER_FRAME() {};
|
~SYMBOL_CHOOSER_FRAME();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runs the symbol viewer as a modal dialog.
|
* Runs the symbol viewer as a modal dialog.
|
||||||
|
@ -271,7 +271,6 @@ PANEL_SYMBOL_CHOOSER::PANEL_SYMBOL_CHOOSER( SCH_BASE_FRAME* aFrame, wxWindow* aP
|
|||||||
Bind( wxEVT_TIMER, &PANEL_SYMBOL_CHOOSER::onOpenLibsTimer, this, m_open_libs_timer->GetId() );
|
Bind( wxEVT_TIMER, &PANEL_SYMBOL_CHOOSER::onOpenLibsTimer, this, m_open_libs_timer->GetId() );
|
||||||
Bind( EVT_LIBITEM_SELECTED, &PANEL_SYMBOL_CHOOSER::onSymbolSelected, this );
|
Bind( EVT_LIBITEM_SELECTED, &PANEL_SYMBOL_CHOOSER::onSymbolSelected, this );
|
||||||
Bind( EVT_LIBITEM_CHOSEN, &PANEL_SYMBOL_CHOOSER::onSymbolChosen, this );
|
Bind( EVT_LIBITEM_CHOSEN, &PANEL_SYMBOL_CHOOSER::onSymbolChosen, this );
|
||||||
Bind( wxEVT_CHAR_HOOK, &PANEL_SYMBOL_CHOOSER::OnChar, this );
|
|
||||||
aFrame->Bind( wxEVT_MENU_OPEN, &PANEL_SYMBOL_CHOOSER::onMenuOpen, this );
|
aFrame->Bind( wxEVT_MENU_OPEN, &PANEL_SYMBOL_CHOOSER::onMenuOpen, this );
|
||||||
aFrame->Bind( wxEVT_MENU_CLOSE, &PANEL_SYMBOL_CHOOSER::onMenuClose, this );
|
aFrame->Bind( wxEVT_MENU_CLOSE, &PANEL_SYMBOL_CHOOSER::onMenuClose, this );
|
||||||
|
|
||||||
@ -302,7 +301,6 @@ PANEL_SYMBOL_CHOOSER::~PANEL_SYMBOL_CHOOSER()
|
|||||||
Unbind( wxEVT_TIMER, &PANEL_SYMBOL_CHOOSER::onCloseTimer, this );
|
Unbind( wxEVT_TIMER, &PANEL_SYMBOL_CHOOSER::onCloseTimer, this );
|
||||||
Unbind( EVT_LIBITEM_SELECTED, &PANEL_SYMBOL_CHOOSER::onSymbolSelected, this );
|
Unbind( EVT_LIBITEM_SELECTED, &PANEL_SYMBOL_CHOOSER::onSymbolSelected, this );
|
||||||
Unbind( EVT_LIBITEM_CHOSEN, &PANEL_SYMBOL_CHOOSER::onSymbolChosen, this );
|
Unbind( EVT_LIBITEM_CHOSEN, &PANEL_SYMBOL_CHOOSER::onSymbolChosen, this );
|
||||||
Unbind( wxEVT_CHAR_HOOK, &PANEL_SYMBOL_CHOOSER::OnChar, this );
|
|
||||||
|
|
||||||
// Stop the timer during destruction early to avoid potential race conditions (that do happen)
|
// Stop the timer during destruction early to avoid potential race conditions (that do happen)
|
||||||
m_dbl_click_timer->Stop();
|
m_dbl_click_timer->Stop();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user