From e2b383694b240dff0becb725a97a3d56b7b9341c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 7 Mar 2007 23:47:54 +0000 Subject: [PATCH] update the value shown in the combobox itself correctly in SetValue() (patch 1669275; bug 1667563) [backport from HEAD] git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@44670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/combocmn.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/common/combocmn.cpp b/src/common/combocmn.cpp index 2595b6ad92..d1c34dfbeb 100644 --- a/src/common/combocmn.cpp +++ b/src/common/combocmn.cpp @@ -2191,16 +2191,18 @@ void wxComboCtrlBase::SetValueWithEvent(const wxString& value, bool withEvent) m_text->SelectAll(); } - m_valueString = value; - - Refresh(); - // Since wxComboPopup may want to paint the combo as well, we need // to set the string value here (as well as sometimes in ShowPopup). - if ( m_valueString != value && m_popupInterface ) + if ( m_valueString != value ) { + m_valueString = value; + + EnsurePopupControl(); + m_popupInterface->SetStringValue(value); } + + Refresh(); } void wxComboCtrlBase::SetValue(const wxString& value)