// Name: choice.h
// Purpose: interface of wxChoice
// Author: wxWidgets team
-// RCS-ID: $Id$
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
Sorts the entries alphabetically.
@endStyleTable
- @beginEventTable{wxCommandEvent}
+ @beginEventEmissionTable{wxCommandEvent}
@event{EVT_CHOICE(id, func)}
- Process a wxEVT_COMMAND_CHOICE_SELECTED event, when an item on the
+ Process a @c wxEVT_CHOICE event, when an item on the
list is selected.
@endEventTable
@library{wxcore}
@category{ctrl}
- <!-- @appearance{choice.png} -->
+ @appearance{choice}
@see wxListBox, wxComboBox, wxCommandEvent
*/
-class wxChoice : public wxControlWithItems
+class wxChoice : public wxControl,
+ public wxItemContainer
{
public:
/**
*/
wxChoice();
- //@{
/**
Constructor, creating and showing a choice.
Window identifier. The value wxID_ANY indicates a default value.
@param pos
Window position.
+ If ::wxDefaultPosition is specified then a default position is chosen.
@param size
- Window size. If wxDefaultSize is specified then the choice is sized
- appropriately.
+ Window size.
+ If ::wxDefaultSize is specified then the choice is sized appropriately.
@param n
Number of strings with which to initialise the choice control.
@param choices
@see Create(), wxValidator
- @beginWxPythonOnly
-
- The wxChoice constructor in wxPython reduces the @a n and @a choices
- arguments to a single argument, which is a list of strings.
-
- @endWxPythonOnly
+ @beginWxPerlOnly
+ Not supported by wxPerl.
+ @endWxPerlOnly
*/
- wxChoice(wxWindow* parent, wxWindowID id,
- const wxPoint& pos,
- const wxSize& size, int n,
- const wxString choices[],
- long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = "choice");
+ wxChoice( wxWindow *parent, wxWindowID id,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ int n = 0, const wxString choices[] = NULL,
+ long style = 0,
+ const wxValidator& validator = wxDefaultValidator,
+ const wxString& name = wxChoiceNameStr );
/**
Constructor, creating and showing a choice.
@see Create(), wxValidator
- @beginWxPythonOnly
-
- The wxChoice constructor in wxPython reduces the @a n and @a choices
- arguments to a single argument, which is a list of strings.
-
- @endWxPythonOnly
+ @beginWxPerlOnly
+ Use an array reference for the @a choices parameter.
+ @endWxPerlOnly
*/
- wxChoice(wxWindow* parent, wxWindowID id,
- const wxPoint& pos,
- const wxSize& size,
- const wxArrayString& choices,
- long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = "choice");
- //@}
+ wxChoice( wxWindow *parent, wxWindowID id,
+ const wxPoint& pos,
+ const wxSize& size,
+ const wxArrayString& choices,
+ long style = 0,
+ const wxValidator& validator = wxDefaultValidator,
+ const wxString& name = wxChoiceNameStr );
/**
Destructor, destroying the choice item.
*/
- ~wxChoice();
+ virtual ~wxChoice();
//@{
/**
Creates the choice for two-step construction. See wxChoice().
*/
- bool Create(wxWindow* parent, wxWindowID id, const wxPoint& pos,
- const wxSize& size, int n,
- const wxString choices[],
- long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = "choice");
- bool Create(wxWindow* parent, wxWindowID id,
- const wxPoint& pos,
- const wxSize& size,
- const wxArrayString& choices,
- long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = "choice");
+ bool Create( wxWindow *parent, wxWindowID id,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ int n = 0, const wxString choices[] = NULL,
+ long style = 0,
+ const wxValidator& validator = wxDefaultValidator,
+ const wxString& name = wxChoiceNameStr );
+ bool Create( wxWindow *parent, wxWindowID id,
+ const wxPoint& pos,
+ const wxSize& size,
+ const wxArrayString& choices,
+ long style = 0,
+ const wxValidator& validator = wxDefaultValidator,
+ const wxString& name = wxChoiceNameStr );
//@}
/**
Gets the number of columns in this choice item.
- @remarks This is implemented for GTK and Motif only and always
+ @remarks This is implemented for GTK and Motif only and always
returns 1 for the other platforms.
*/
- int GetColumns() const;
+ virtual int GetColumns() const;
/**
Unlike wxControlWithItems::GetSelection() which only returns the
In older versions, wxControlWithItems::GetSelection() itself
behaved like this.
*/
- int GetCurrentSelection() const;
+ virtual int GetCurrentSelection() const;
/**
Sets the number of columns in this choice item.
@param n
Number of columns.
- @remarks This is implemented for GTK and Motif only and doesn’t do
+ @remarks This is implemented for GTK and Motif only and doesn’t do
anything under other platforms.
*/
- void SetColumns(int n = 1);
+ virtual void SetColumns(int n = 1);
+
+ virtual bool IsSorted() const;
+
+ virtual unsigned int GetCount() const ;
+ virtual int GetSelection() const ;
+ virtual void SetSelection(int n);
+
+ virtual int FindString(const wxString& s, bool bCase = false) const;
+ virtual wxString GetString(unsigned int n) const ;
+ virtual void SetString(unsigned int pos, const wxString& s);
};