X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0306e73e630bce45a3f56a0616559250fcb8c05e..04fa04d8067d235ab45b5bc05b65f0679634b541:/src/generic/odcombo.cpp diff --git a/src/generic/odcombo.cpp b/src/generic/odcombo.cpp index 557a533268..6425dd145d 100644 --- a/src/generic/odcombo.cpp +++ b/src/generic/odcombo.cpp @@ -371,7 +371,7 @@ bool wxVListBoxComboPopup::HandleKey( int keycode, bool saturate, wxChar keychar return true; if ( value >= 0 ) - m_combo->SetValue(m_strings[value]); + m_combo->ChangeValue(m_strings[value]); // The m_combo->SetValue() call above sets m_value to the index of this // string. But if there are more identical string, the index is of the @@ -545,7 +545,7 @@ int wxVListBoxComboPopup::Append(const wxString& item) for ( i=0; iGetValue(); - if ( strValue.length() ) + if ( !strValue.empty() ) m_value = m_strings.Index(strValue); } @@ -867,21 +877,6 @@ void wxVListBoxComboPopup::Populate( const wxArrayString& choices ) BEGIN_EVENT_TABLE(wxOwnerDrawnComboBox, wxComboCtrl) END_EVENT_TABLE() - -#if wxUSE_EXTENDED_RTTI -IMPLEMENT_DYNAMIC_CLASS2_XTI(wxOwnerDrawnComboBox, wxComboCtrl, wxControlWithItems, "wx/odcombo.h") - -wxBEGIN_PROPERTIES_TABLE(wxOwnerDrawnComboBox) -wxEND_PROPERTIES_TABLE() - -wxBEGIN_HANDLERS_TABLE(wxOwnerDrawnComboBox) -wxEND_HANDLERS_TABLE() - -wxCONSTRUCTOR_5( wxOwnerDrawnComboBox , wxWindow* , Parent , wxWindowID , Id , wxString , Value , wxPoint , Position , wxSize , Size ) -#else -IMPLEMENT_DYNAMIC_CLASS2(wxOwnerDrawnComboBox, wxComboCtrl, wxControlWithItems) -#endif - void wxOwnerDrawnComboBox::Init() { } @@ -907,7 +902,6 @@ wxOwnerDrawnComboBox::wxOwnerDrawnComboBox(wxWindow *parent, long style, const wxValidator& validator, const wxString& name) - : wxComboCtrl() { Init(); @@ -993,6 +987,8 @@ void wxOwnerDrawnComboBox::DoClear() GetVListBoxComboPopup()->Clear(); + // NB: This really needs to be SetValue() instead of ChangeValue(), + // as wxTextEntry API expects an event to be sent. SetValue(wxEmptyString); } @@ -1006,7 +1002,7 @@ void wxOwnerDrawnComboBox::DoDeleteOneItem(unsigned int n) wxCHECK_RET( IsValid(n), wxT("invalid index in wxOwnerDrawnComboBox::Delete") ); if ( GetSelection() == (int) n ) - SetValue(wxEmptyString); + ChangeValue(wxEmptyString); GetVListBoxComboPopup()->Delete(n); } @@ -1060,7 +1056,7 @@ void wxOwnerDrawnComboBox::Select(int n) // Refresh text portion in control if ( m_text ) - m_text->SetValue( str ); + m_text->ChangeValue( str ); else m_valueString = str;