git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39942
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
//
// List functions: see wxChoice
//
//
// List functions: see wxChoice
//
- inline wxString GetValue(void) const { return GetLabel(); }
- virtual void SetValue(const wxString& rsValue);
+ virtual wxString GetValue(void) const;
+ virtual void SetValue(const wxString& rsValue);
//
// Clipboard operations
//
// Clipboard operations
-protected:
- virtual void DoSetSize( int nX
- ,int nY
- ,int nWidth
- ,int nHeight
- ,int nSizeFlags = wxSIZE_AUTO
- );
private:
DECLARE_DYNAMIC_CLASS(wxComboBox)
}; // end of CLASS wxComboBox
private:
DECLARE_DYNAMIC_CLASS(wxComboBox)
}; // end of CLASS wxComboBox
bool wxComboBox::OS2Command( WXUINT uParam, WXWORD WXUNUSED(wId) )
{
bool wxComboBox::OS2Command( WXUINT uParam, WXWORD WXUNUSED(wId) )
{
+ long lSel = GetSelection();
wxString sValue;
switch (uParam)
{
case CBN_LBSELECT:
wxString sValue;
switch (uParam)
{
case CBN_LBSELECT:
- if (GetSelection() > -1)
{
wxCommandEvent vEvent( wxEVT_COMMAND_COMBOBOX_SELECTED, GetId() );
{
wxCommandEvent vEvent( wxEVT_COMMAND_COMBOBOX_SELECTED, GetId() );
- vEvent.SetInt(GetSelection());
vEvent.SetEventObject(this);
vEvent.SetString(GetStringSelection());
vEvent.SetEventObject(this);
vEvent.SetString(GetStringSelection());
if (lSel == -1L)
sValue = GetValue();
else
if (lSel == -1L)
sValue = GetValue();
else
- SetValue(sValue);
- vEvent.SetString(GetValue());
+ sValue = GetStringSelection();
+ vEvent.SetString(sValue);
vEvent.SetEventObject(this);
ProcessCommand(vEvent);
}
vEvent.SetEventObject(this);
ProcessCommand(vEvent);
}
+
+ // Set height to use with sizers i.e. without the dropdown listbox
+ wxFont vFont = GetFont();
+ int nCx,nCy;
+ wxGetCharSize( GetHWND(), &nCx, &nCy, &vFont );
+ int nEditHeight = EDIT_HEIGHT_FROM_CHAR_HEIGHT(nCy);
+ SetBestFittingSize(wxSize(-1,nEditHeight));
+
if (!rsValue.empty())
{
SetValue(rsValue);
if (!rsValue.empty())
{
SetValue(rsValue);
return true;
} // end of wxComboBox::Create
return true;
} // end of wxComboBox::Create
+wxString wxComboBox::GetValue() const
+{
+ return wxGetWindowText(GetHwnd());
+}
+
void wxComboBox::SetValue(
const wxString& rsValue
)
void wxComboBox::SetValue(
const wxString& rsValue
)
);
} // end of wxComboBox::SetSelection
);
} // end of wxComboBox::SetSelection
-void wxComboBox::DoSetSize(
- int nX
-, int nY
-, int nWidth
-, int nHeight
-, int nSizeFlags
-)
-{
- wxControl::DoSetSize( nX
- ,nY
- ,nWidth
- ,nHeight
- ,nSizeFlags
- );
-} // end of wxComboBox::DoSetSize
-
bool wxComboBox::ProcessEditMsg(
WXUINT uMsg
, WXWPARAM wParam
bool wxComboBox::ProcessEditMsg(
WXUINT uMsg
, WXWPARAM wParam