]> git.saurik.com Git - wxWidgets.git/blobdiff - src/univ/combobox.cpp
Allow absent checkbox when transferring dimension data
[wxWidgets.git] / src / univ / combobox.cpp
index 0cfcbcdd71bdd17a00901c79f254633e1b55c239..a153ca50d50f12f0609420c7e9d3ea818844a656 100644 (file)
@@ -4,7 +4,6 @@
 // Author:      Vadim Zeitlin
 // Modified by:
 // Created:     15.12.00
 // Author:      Vadim Zeitlin
 // Modified by:
 // Created:     15.12.00
-// RCS-ID:      $Id$
 // Copyright:   (c) 2000 SciTech Software, Inc. (www.scitechsoft.com)
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 // Copyright:   (c) 2000 SciTech Software, Inc. (www.scitechsoft.com)
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
@@ -180,7 +179,7 @@ void wxComboListBox::OnLeftUp(wxMouseEvent& event)
     m_combo->SetValue(wxListBox::GetStringSelection());
 
     // next let the user code have the event
     m_combo->SetValue(wxListBox::GetStringSelection());
 
     // next let the user code have the event
-    wxCommandEvent evt(wxEVT_COMMAND_COMBOBOX_SELECTED,m_combo->GetId());
+    wxCommandEvent evt(wxEVT_COMBOBOX,m_combo->GetId());
     evt.SetInt(wxListBox::GetSelection());
     evt.SetEventObject(m_combo);
     m_combo->ProcessWindowEvent(evt);
     evt.SetInt(wxListBox::GetSelection());
     evt.SetEventObject(m_combo);
     m_combo->ProcessWindowEvent(evt);
@@ -273,13 +272,15 @@ wxComboBox::~wxComboBox()
 
 wxString wxComboBox::DoGetValue() const
 {
 
 wxString wxComboBox::DoGetValue() const
 {
-    return GetTextCtrl() ? GetTextCtrl()->GetValue() : wxString();
+    return GetTextCtrl() ? GetTextCtrl()->GetValue() : m_valueString;
 }
 
 void wxComboBox::SetValue(const wxString& value)
 {
     if ( GetTextCtrl() )
         GetTextCtrl()->SetValue(value);
 }
 
 void wxComboBox::SetValue(const wxString& value)
 {
     if ( GetTextCtrl() )
         GetTextCtrl()->SetValue(value);
+    else
+        m_valueString = value;
 }
 
 void wxComboBox::WriteText(const wxString& value)
 }
 
 void wxComboBox::WriteText(const wxString& value)
@@ -358,7 +359,7 @@ void wxComboBox::SetEditable(bool editable)
 void wxComboBox::DoClear()
 {
     GetLBox()->Clear();
 void wxComboBox::DoClear()
 {
     GetLBox()->Clear();
-    if ( GetTextCtrl() ) GetTextCtrl()->SetValue(wxEmptyString);
+    SetValue(wxEmptyString);
 }
 
 void wxComboBox::DoDeleteOneItem(unsigned int n)
 }
 
 void wxComboBox::DoDeleteOneItem(unsigned int n)
@@ -366,7 +367,7 @@ void wxComboBox::DoDeleteOneItem(unsigned int n)
     wxCHECK_RET( IsValid(n), wxT("invalid index in wxComboBox::Delete") );
 
     if (GetSelection() == (int)n)
     wxCHECK_RET( IsValid(n), wxT("invalid index in wxComboBox::Delete") );
 
     if (GetSelection() == (int)n)
-        if ( GetTextCtrl() ) GetTextCtrl()->SetValue(wxEmptyString);
+        SetValue(wxEmptyString);
 
     GetLBox()->Delete(n);
 }
 
     GetLBox()->Delete(n);
 }