584ad2a32f
Added helper class wxCArrayString, better replacement for wxArrayString::GetStringArray. Added overloaded constructors and Create() methods taking a wxArrayString for wxCheckListBox, wxChoice, wxComboBox, wxListBox, wxRadioBox, wxSingleChoiceDialog, wxMultipleChoiceDialog. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
149 lines
4.9 KiB
C++
149 lines
4.9 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: combobox.h
|
|
// Purpose: wxComboBox class
|
|
// Author: David Webster
|
|
// Modified by:
|
|
// Created: 10/13/99
|
|
// RCS-ID: $Id$
|
|
// Copyright: (c) David Webster
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_COMBOBOX_H_
|
|
#define _WX_COMBOBOX_H_
|
|
|
|
#include "wx/choice.h"
|
|
|
|
#if wxUSE_COMBOBOX
|
|
|
|
// Combobox item
|
|
class WXDLLEXPORT wxComboBox : public wxChoice
|
|
{
|
|
|
|
public:
|
|
inline wxComboBox() {}
|
|
|
|
inline wxComboBox( wxWindow* pParent
|
|
,wxWindowID vId
|
|
,const wxString& rsValue = wxEmptyString
|
|
,const wxPoint& rPos = wxDefaultPosition
|
|
,const wxSize& rSize = wxDefaultSize
|
|
,int n = 0
|
|
,const wxString asChoices[] = NULL
|
|
,long lStyle = 0
|
|
,const wxValidator& rValidator = wxDefaultValidator
|
|
,const wxString& rsName = wxComboBoxNameStr
|
|
)
|
|
{
|
|
Create( pParent
|
|
,vId
|
|
,rsValue
|
|
,rPos
|
|
,rSize
|
|
,n
|
|
,asChoices
|
|
,lStyle
|
|
,rValidator
|
|
,rsName
|
|
);
|
|
}
|
|
|
|
inline wxComboBox( wxWindow* pParent
|
|
,wxWindowID vId
|
|
,const wxString& rsValue
|
|
,const wxPoint& rPos
|
|
,const wxSize& rSize
|
|
,const wxArrayString& asChoices
|
|
,long lStyle = 0
|
|
,const wxValidator& rValidator = wxDefaultValidator
|
|
,const wxString& rsName = wxComboBoxNameStr
|
|
)
|
|
{
|
|
Create( pParent
|
|
,vId
|
|
,rsValue
|
|
,rPos
|
|
,rSize
|
|
,asChoices
|
|
,lStyle
|
|
,rValidator
|
|
,rsName
|
|
);
|
|
}
|
|
|
|
bool Create( wxWindow* pParent
|
|
,wxWindowID vId
|
|
,const wxString& rsValue = wxEmptyString
|
|
,const wxPoint& rPos = wxDefaultPosition
|
|
,const wxSize& rSize = wxDefaultSize
|
|
,int n = 0
|
|
,const wxString asChoices[] = NULL
|
|
,long lStyle = 0
|
|
,const wxValidator& rValidator = wxDefaultValidator
|
|
,const wxString& rsName = wxComboBoxNameStr
|
|
);
|
|
|
|
bool Create( wxWindow* pParent
|
|
,wxWindowID vId
|
|
,const wxString& rsValue
|
|
,const wxPoint& rPos
|
|
,const wxSize& rSize
|
|
,const wxArrayString& asChoices
|
|
,long lStyle = 0
|
|
,const wxValidator& rValidator = wxDefaultValidator
|
|
,const wxString& rsName = wxComboBoxNameStr
|
|
);
|
|
|
|
//
|
|
// List functions: see wxChoice
|
|
//
|
|
inline wxString GetValue(void) const { return GetLabel(); }
|
|
virtual void SetValue(const wxString& rsValue);
|
|
|
|
//
|
|
// Clipboard operations
|
|
//
|
|
virtual void Copy();
|
|
virtual void Cut();
|
|
virtual void Paste();
|
|
|
|
virtual void SetInsertionPoint(long lPos);
|
|
virtual void SetInsertionPointEnd(void);
|
|
virtual long GetInsertionPoint(void) const;
|
|
virtual long GetLastPosition(void) const;
|
|
virtual void Replace( long lFrom
|
|
,long lTo
|
|
,const wxString& rsValue
|
|
);
|
|
virtual void Remove( long lFrom
|
|
,long lTo
|
|
);
|
|
inline virtual void SetSelection(int n) { wxChoice::SetSelection(n); }
|
|
virtual void SetSelection( long lFrom
|
|
,long lTo
|
|
);
|
|
virtual void SetEditable(bool bEditable);
|
|
|
|
virtual bool OS2Command( WXUINT uParam
|
|
,WXWORD wId
|
|
);
|
|
bool ProcessEditMsg( WXUINT uMsg
|
|
,WXWPARAM wParam
|
|
,WXLPARAM lParam
|
|
);
|
|
|
|
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
|
|
|
|
#endif // wxUSE_COMBOBOX
|
|
#endif
|
|
// _WX_COMBOBOX_H_
|