From ac09cfaef42d5ff5478db3724dbb51896dc464dd Mon Sep 17 00:00:00 2001 From: Jeff Young <jeff@rokeby.ie> Date: Mon, 12 Feb 2018 22:48:37 +0000 Subject: [PATCH] Wire up <return> for eeschema find dialog. Fixes: lp:1749026 * https://bugs.launchpad.net/kicad/+bug/1749026 --- eeschema/dialogs/dialog_schematic_find.cpp | 6 ++++++ eeschema/dialogs/dialog_schematic_find.h | 1 + eeschema/dialogs/dialog_schematic_find_base.cpp | 12 ++++++++---- eeschema/dialogs/dialog_schematic_find_base.fbp | 12 ++++++++---- eeschema/dialogs/dialog_schematic_find_base.h | 7 +++---- 5 files changed, 26 insertions(+), 12 deletions(-) diff --git a/eeschema/dialogs/dialog_schematic_find.cpp b/eeschema/dialogs/dialog_schematic_find.cpp index f1dda197a9..320546856a 100644 --- a/eeschema/dialogs/dialog_schematic_find.cpp +++ b/eeschema/dialogs/dialog_schematic_find.cpp @@ -132,6 +132,12 @@ void DIALOG_SCH_FIND::OnUpdateWildcardUI( wxUpdateUIEvent& aEvent ) } +void DIALOG_SCH_FIND::OnTextEnter( wxCommandEvent& aEvent ) +{ + OnFind( aEvent ); +} + + void DIALOG_SCH_FIND::OnFind( wxCommandEvent& aEvent ) { int index = m_comboFind->FindString( m_comboFind->GetValue(), true ); diff --git a/eeschema/dialogs/dialog_schematic_find.h b/eeschema/dialogs/dialog_schematic_find.h index 3bd91a5a7d..4a25ccddb3 100644 --- a/eeschema/dialogs/dialog_schematic_find.h +++ b/eeschema/dialogs/dialog_schematic_find.h @@ -155,6 +155,7 @@ class DIALOG_SCH_FIND : public DIALOG_SCH_FIND_BASE protected: // Handlers for DIALOG_SCH_FIND_BASE events. void OnClose( wxCloseEvent& aEvent ) override; + void OnTextEnter( wxCommandEvent& event ) override; void OnUpdateFindUI( wxUpdateUIEvent& aEvent ) override; void OnUpdateReplaceUI( wxUpdateUIEvent& aEvent ) override; void OnUpdateReplaceAllUI( wxUpdateUIEvent& aEvent ) override; diff --git a/eeschema/dialogs/dialog_schematic_find_base.cpp b/eeschema/dialogs/dialog_schematic_find_base.cpp index 4b47a50ada..e87712a69e 100644 --- a/eeschema/dialogs/dialog_schematic_find_base.cpp +++ b/eeschema/dialogs/dialog_schematic_find_base.cpp @@ -1,8 +1,8 @@ /////////////////////////////////////////////////////////////////////////// -// C++ code generated with wxFormBuilder (version Mar 28 2015) +// C++ code generated with wxFormBuilder (version Dec 30 2017) // http://www.wxformbuilder.org/ // -// PLEASE DO "NOT" EDIT THIS FILE! +// PLEASE DO *NOT* EDIT THIS FILE! /////////////////////////////////////////////////////////////////////////// #include "dialog_schematic_find_base.h" @@ -29,7 +29,7 @@ DIALOG_SCH_FIND_BASE::DIALOG_SCH_FIND_BASE( wxWindow* parent, wxWindowID id, con m_staticText1->Wrap( -1 ); leftGridSizer->Add( m_staticText1, 0, wxEXPAND|wxLEFT|wxRIGHT, 6 ); - m_comboFind = new wxComboBox( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN ); + m_comboFind = new wxComboBox( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN|wxTE_PROCESS_ENTER ); m_comboFind->SetToolTip( _("Text with optional wildcards") ); m_comboFind->SetMinSize( wxSize( 125,-1 ) ); @@ -41,7 +41,7 @@ DIALOG_SCH_FIND_BASE::DIALOG_SCH_FIND_BASE( wxWindow* parent, wxWindowID id, con leftGridSizer->Add( m_staticReplace, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - m_comboReplace = new wxComboBox( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); + m_comboReplace = new wxComboBox( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxTE_PROCESS_ENTER ); m_comboReplace->Hide(); leftGridSizer->Add( m_comboReplace, 0, wxALL|wxEXPAND, 5 ); @@ -137,7 +137,9 @@ DIALOG_SCH_FIND_BASE::DIALOG_SCH_FIND_BASE( wxWindow* parent, wxWindowID id, con // Connect Events this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_SCH_FIND_BASE::OnClose ) ); + m_comboFind->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SCH_FIND_BASE::OnTextEnter ), NULL, this ); m_comboFind->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateDrcUI ), NULL, this ); + m_comboReplace->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SCH_FIND_BASE::OnTextEnter ), NULL, this ); m_comboReplace->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateDrcUI ), NULL, this ); m_checkWholeWord->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateWholeWordUI ), NULL, this ); m_checkWildcardMatch->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateWildcardUI ), NULL, this ); @@ -154,7 +156,9 @@ DIALOG_SCH_FIND_BASE::~DIALOG_SCH_FIND_BASE() { // Disconnect Events this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_SCH_FIND_BASE::OnClose ) ); + m_comboFind->Disconnect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SCH_FIND_BASE::OnTextEnter ), NULL, this ); m_comboFind->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateDrcUI ), NULL, this ); + m_comboReplace->Disconnect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SCH_FIND_BASE::OnTextEnter ), NULL, this ); m_comboReplace->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateDrcUI ), NULL, this ); m_checkWholeWord->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateWholeWordUI ), NULL, this ); m_checkWildcardMatch->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SCH_FIND_BASE::OnUpdateWildcardUI ), NULL, this ); diff --git a/eeschema/dialogs/dialog_schematic_find_base.fbp b/eeschema/dialogs/dialog_schematic_find_base.fbp index 01d8b72ec6..7f9bc3cd89 100644 --- a/eeschema/dialogs/dialog_schematic_find_base.fbp +++ b/eeschema/dialogs/dialog_schematic_find_base.fbp @@ -252,7 +252,7 @@ <property name="selection">-1</property> <property name="show">1</property> <property name="size"></property> - <property name="style">wxCB_DROPDOWN</property> + <property name="style">wxCB_DROPDOWN|wxTE_PROCESS_ENTER</property> <property name="subclass"></property> <property name="toolbar_pane">0</property> <property name="tooltip">Text with optional wildcards</property> @@ -266,6 +266,8 @@ <property name="window_style"></property> <event name="OnChar"></event> <event name="OnCombobox"></event> + <event name="OnComboboxCloseup"></event> + <event name="OnComboboxDropdown"></event> <event name="OnEnterWindow"></event> <event name="OnEraseBackground"></event> <event name="OnKeyDown"></event> @@ -288,7 +290,7 @@ <event name="OnSetFocus"></event> <event name="OnSize"></event> <event name="OnText"></event> - <event name="OnTextEnter"></event> + <event name="OnTextEnter">OnTextEnter</event> <event name="OnUpdateUI">OnUpdateDrcUI</event> </object> </object> @@ -426,7 +428,7 @@ <property name="selection">-1</property> <property name="show">1</property> <property name="size"></property> - <property name="style"></property> + <property name="style">wxTE_PROCESS_ENTER</property> <property name="subclass"></property> <property name="toolbar_pane">0</property> <property name="tooltip"></property> @@ -440,6 +442,8 @@ <property name="window_style"></property> <event name="OnChar"></event> <event name="OnCombobox"></event> + <event name="OnComboboxCloseup"></event> + <event name="OnComboboxDropdown"></event> <event name="OnEnterWindow"></event> <event name="OnEraseBackground"></event> <event name="OnKeyDown"></event> @@ -462,7 +466,7 @@ <event name="OnSetFocus"></event> <event name="OnSize"></event> <event name="OnText"></event> - <event name="OnTextEnter"></event> + <event name="OnTextEnter">OnTextEnter</event> <event name="OnUpdateUI">OnUpdateDrcUI</event> </object> </object> diff --git a/eeschema/dialogs/dialog_schematic_find_base.h b/eeschema/dialogs/dialog_schematic_find_base.h index 88d8d9033c..706ed73130 100644 --- a/eeschema/dialogs/dialog_schematic_find_base.h +++ b/eeschema/dialogs/dialog_schematic_find_base.h @@ -1,8 +1,8 @@ /////////////////////////////////////////////////////////////////////////// -// C++ code generated with wxFormBuilder (version Mar 28 2015) +// C++ code generated with wxFormBuilder (version Dec 30 2017) // http://www.wxformbuilder.org/ // -// PLEASE DO "NOT" EDIT THIS FILE! +// PLEASE DO *NOT* EDIT THIS FILE! /////////////////////////////////////////////////////////////////////////// #ifndef __DIALOG_SCHEMATIC_FIND_BASE_H__ @@ -11,8 +11,6 @@ #include <wx/artprov.h> #include <wx/xrc/xmlres.h> #include <wx/intl.h> -class DIALOG_SHIM; - #include "dialog_shim.h" #include <wx/string.h> #include <wx/stattext.h> @@ -61,6 +59,7 @@ class DIALOG_SCH_FIND_BASE : public DIALOG_SHIM // Virtual event handlers, overide them in your derived class virtual void OnClose( wxCloseEvent& event ) { event.Skip(); } + virtual void OnTextEnter( wxCommandEvent& event ) { event.Skip(); } virtual void OnUpdateDrcUI( wxUpdateUIEvent& event ) { event.Skip(); } virtual void OnUpdateWholeWordUI( wxUpdateUIEvent& event ) { event.Skip(); } virtual void OnUpdateWildcardUI( wxUpdateUIEvent& event ) { event.Skip(); }