]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/combobox.tex
added missing brace after wxTB_NO_TOOLTIPS
[wxWidgets.git] / docs / latex / wx / combobox.tex
index 14a6978125d9aea59c008a8d0dc696b2415d49bf..9f87526fde26fd2e27da142cd33658a2dd8f884d 100644 (file)
@@ -8,40 +8,69 @@ A combobox permits a single selection only. Combobox items are numbered from zer
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
-\helpref{wxChoice}{wxchoice}\\
+\helpref{wxControlWithItems}{wxcontrolwithitems}\\
 \helpref{wxControl}{wxcontrol}\\
 \helpref{wxWindow}{wxwindow}\\
 \helpref{wxEvtHandler}{wxevthandler}\\
 \helpref{wxObject}{wxobject}
 
 \helpref{wxControl}{wxcontrol}\\
 \helpref{wxWindow}{wxwindow}\\
 \helpref{wxEvtHandler}{wxevthandler}\\
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<wx/combobox.h>
+
 \wxheading{Window styles}
 
 \begin{twocollist}\itemsep=0pt
 \wxheading{Window styles}
 
 \begin{twocollist}\itemsep=0pt
-\twocolitem{\windowstyle{wxCB\_SIMPLE}}{Creates a combobox with a permanently displayed list.}
+\twocolitem{\windowstyle{wxCB\_SIMPLE}}{Creates a combobox with a permanently displayed list. Windows only. }
 \twocolitem{\windowstyle{wxCB\_DROPDOWN}}{Creates a combobox with a drop-down list.}
 \twocolitem{\windowstyle{wxCB\_DROPDOWN}}{Creates a combobox with a drop-down list.}
-\twocolitem{\windowstyle{wxCB\_READONLY}}{Creates a combo box consisting of a drop-down list and static text item
-displaying the current selection.}
+\twocolitem{\windowstyle{wxCB\_READONLY}}{Same as wxCB\_DROPDOWN but only the
+strings specified as the combobox choices can be selected, it is impossible to
+select (even from a program) a string which is not in the choices list.}
 \twocolitem{\windowstyle{wxCB\_SORT}}{Sorts the entries in the list alphabetically.}
 \twocolitem{\windowstyle{wxCB\_SORT}}{Sorts the entries in the list alphabetically.}
+\twocolitem{\windowstyle{wxPROCESS\_ENTER}}{The control will generate
+the event wxEVT\_COMMAND\_TEXT\_ENTER (otherwise pressing Enter key
+is either processed internally by the control or used for navigation between
+dialog controls). Windows only.}
 \end{twocollist}
 
 See also \helpref{window styles overview}{windowstyles}.
 
 \end{twocollist}
 
 See also \helpref{window styles overview}{windowstyles}.
 
+\wxheading{Event handling}
+
+\twocolwidtha{7cm}
+\begin{twocollist}\itemsep=0pt
+\twocolitem{{\bf EVT\_COMBOBOX(id, func)}}{Process a wxEVT\_COMMAND\_COMBOBOX\_SELECTED event,
+when an item on the list is selected. Note that calling
+\helpref{GetValue}{wxcomboboxgetvalue} returns the new value of selection.}
+\twocolitem{{\bf EVT\_TEXT(id, func)}}{Process a wxEVT\_COMMAND\_TEXT\_UPDATED event,
+when the combobox text changes.}
+\twocolitem{{\bf EVT\_TEXT\_ENTER(id, func)}}{Process a wxEVT\_COMMAND\_TEXT\_ENTER event,
+when <RETURN> is pressed in the combobox.}
+\end{twocollist}
+
 \wxheading{See also}
 
 \wxheading{See also}
 
-\helpref{wxListBox}{wxlistbox}, \helpref{wxTextCtrl}{wxtextctrl}, \helpref{wxChoice}{wxchoice}
+\helpref{wxListBox}{wxlistbox}, \helpref{wxTextCtrl}{wxtextctrl}, \helpref{wxChoice}{wxchoice},
+\rtfsp\helpref{wxCommandEvent}{wxcommandevent}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
-\membersection{wxComboBox::wxComboBox}\label{wxcomboboxconstr}
+
+\membersection{wxComboBox::wxComboBox}\label{wxcomboboxctor}
 
 \func{}{wxComboBox}{\void}
 
 Default constructor.
 
 
 \func{}{wxComboBox}{\void}
 
 Default constructor.
 
-\func{}{wxComboBox}{\param{wxWindow*}{ parent}, \param{const wxWindowID}{ id},\rtfsp
+\func{}{wxComboBox}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
 \param{const wxString\& }{value = ``"}, \param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
 \param{const wxString\& }{value = ``"}, \param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
-\param{const int}{ n}, \param{const wxString }{choices[]},\rtfsp
-\param{const long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``comboBox"}}
+\param{int}{ n = 0}, \param{const wxString }{choices[] = NULL},\rtfsp
+\param{long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``comboBox"}}
+
+\func{}{wxComboBox}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
+\param{const wxString\& }{value}, \param{const wxPoint\&}{ pos}, \param{const wxSize\&}{ size},\rtfsp
+\param{const wxArrayString\& }{choices},\rtfsp
+\param{long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``comboBox"}}
 
 Constructor, creating and showing a combobox.
 
 
 Constructor, creating and showing a combobox.
 
@@ -51,6 +80,8 @@ Constructor, creating and showing a combobox.
 
 \docparam{id}{Window identifier. A value of -1 indicates a default value.}
 
 
 \docparam{id}{Window identifier. A value of -1 indicates a default value.}
 
+\docparam{value}{Initial selection string. An empty string indicates no selection.}
+
 \docparam{pos}{Window position.}
 
 \docparam{size}{Window size. If the default size (-1, -1) is specified then the window is sized
 \docparam{pos}{Window position.}
 
 \docparam{size}{Window size. If the default size (-1, -1) is specified then the window is sized
@@ -70,105 +101,91 @@ appropriately.}
 
 \helpref{wxComboBox::Create}{wxcomboboxcreate}, \helpref{wxValidator}{wxvalidator}
 
 
 \helpref{wxComboBox::Create}{wxcomboboxcreate}, \helpref{wxValidator}{wxvalidator}
 
-\membersection{wxComboBox::\destruct{wxComboBox}}
-
-\func{}{\destruct{wxComboBox}}{\void}
-
-Destructor, destroying the combobox.
-
-\membersection{wxComboBox::Append}\label{wxcomboboxappend}
-
-\func{void}{Append}{\param{const wxString\& }{item}}
+\pythonnote{The wxComboBox constructor in wxPython reduces the {\tt n}
+and {\tt choices} arguments are to a single argument, which is
+a list of strings.}
 
 
-Adds the item to the end of the combobox.
+\perlnote{In wxPerl there is just an array reference in place of {\tt n}
+and {\tt choices}.}
 
 
-\func{void}{Append}{\param{const wxString\& }{ item}, \param{char* }{clientData}}
 
 
-Adds the item to the end of the combobox, associating the given data
-with the item.
+\membersection{wxComboBox::\destruct{wxComboBox}}\label{wxcomboboxdtor}
 
 
-\wxheading{Parameters}
-
-\docparam{item}{The string to add.}
-
-\docparam{clientData}{Client data to associate with the item.}
-
-\membersection{wxComboBox::Clear}\label{wxcomboboxclear}
+\func{}{\destruct{wxComboBox}}{\void}
 
 
-\func{void}{Clear}{\void}
+Destructor, destroying the combobox.
 
 
-Clears all strings from the combobox.
 
 \membersection{wxComboBox::Create}\label{wxcomboboxcreate}
 
 
 \membersection{wxComboBox::Create}\label{wxcomboboxcreate}
 
-\func{bool}{Create}{\param{wxWindow*}{ parent}, \param{const wxWindowID}{ id},\rtfsp
+\func{bool}{Create}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
 \param{const wxString\& }{value = ``"}, \param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
 \param{const wxString\& }{value = ``"}, \param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
-\param{const int}{ n}, \param{const wxString }{choices[]},\rtfsp
-\param{const long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``comboBox"}}
+\param{int}{ n}, \param{const wxString }{choices[]},\rtfsp
+\param{long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``comboBox"}}
+
+\func{bool}{Create}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
+\param{const wxString\& }{value}, \param{const wxPoint\&}{ pos}, \param{const wxSize\&}{ size},\rtfsp
+\param{const wxArrayString\& }{choices},\rtfsp
+\param{long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``comboBox"}}
 
 Creates the combobox for two-step construction. Derived classes
 
 Creates the combobox for two-step construction. Derived classes
-should call or replace this function. See \helpref{wxComboBox::wxComboBox}{wxcomboboxconstr}\rtfsp
+should call or replace this function. See \helpref{wxComboBox::wxComboBox}{wxcomboboxctor}\rtfsp
 for further details.
 
 for further details.
 
-\membersection{wxComboBox::Copy}\label{wxcomboboxcopy}
-
-\func{void}{Copy}{\void}
 
 
-Copies the selected text to the clipboard.
+\membersection{wxComboBox::CanCopy}\label{wxcomboboxcancopy}
 
 
-\membersection{wxComboBox::Cut}\label{wxcomboboxcut}
+\constfunc{bool}{CanCopy}{\void}
 
 
-\func{void}{Cut}{\void}
+Returns true if the combobox is editable and there is a text selection to copy to the clipboard.
+Only available on Windows.
 
 
-Copies the selected text to the clipboard and removes the selection.
 
 
-\membersection{wxComboBox::Delete}\label{wxcomboboxdelete}
+\membersection{wxComboBox::CanCut}\label{wxcomboboxcancut}
 
 
-\func{void}{Delete}{\param{const int}{ n}}
+\constfunc{bool}{CanCut}{\void}
 
 
-Deletes an item from the combobox.
+Returns true if the combobox is editable and there is a text selection to copy to the clipboard.
+Only available on Windows.
 
 
-\wxheading{Parameters}
 
 
-\docparam{n}{The item to delete, starting from zero.}
+\membersection{wxComboBox::CanPaste}\label{wxcomboboxcanpaste}
 
 
-\membersection{wxComboBox::Deselect}\label{wxcomboboxdeselect}
+\constfunc{bool}{CanPaste}{\void}
 
 
-\func{void}{Deselect}{\param{const int}{ n}}
+Returns true if the combobox is editable and there is text on the clipboard that can be pasted into the
+text field. Only available on Windows.
 
 
-Deselects an item in the combobox.
 
 
-\wxheading{Parameters}
+\membersection{wxComboBox::CanRedo}\label{wxcomboboxcanredo}
 
 
-\docparam{n}{The item to deselect, starting from zero.}
+\constfunc{bool}{CanRedo}{\void}
 
 
-\membersection{wxComboBox::FindString}\label{wxcomboboxfindstring}
+Returns true if the combobox is editable and the last undo can be redone.
+Only available on Windows.
 
 
-\func{int}{FindString}{\param{const wxString\& }{string}}
 
 
-Finds a choice matching the given string.
+\membersection{wxComboBox::CanUndo}\label{wxcomboboxcanundo}
 
 
-\wxheading{Parameters}
+\constfunc{bool}{CanUndo}{\void}
 
 
-\docparam{string}{The item to find.}
+Returns true if the combobox is editable and the last edit can be undone.
+Only available on Windows.
 
 
-\wxheading{Return value}
 
 
-The position if found, or -1 if not found.
+\membersection{wxComboBox::Copy}\label{wxcomboboxcopy}
 
 
-\membersection{wxComboBox::GetClientData}\label{wxcomboboxgetclientdata}
+\func{void}{Copy}{\void}
 
 
-\constfunc{char*}{GetClientData}{\param{const int}{ n}}
+Copies the selected text to the clipboard.
 
 
-Returns a pointer to the client data associated with the given item (if any).
 
 
-\wxheading{Parameters}
+\membersection{wxComboBox::Cut}\label{wxcomboboxcut}
 
 
-\docparam{n}{An item, starting from zero.}
+\func{void}{Cut}{\void}
 
 
-\wxheading{Return value}
+Copies the selected text to the clipboard and removes the selection.
 
 
-A pointer to the client data, or NULL if the item was not found.
 
 \membersection{wxComboBox::GetInsertionPoint}\label{wxcomboboxgetinsertionpoint}
 
 
 \membersection{wxComboBox::GetInsertionPoint}\label{wxcomboboxgetinsertionpoint}
 
@@ -176,37 +193,16 @@ A pointer to the client data, or NULL if the item was not found.
 
 Returns the insertion point for the combobox's text field.
 
 
 Returns the insertion point for the combobox's text field.
 
-\membersection{wxComboBox::GetLastPosition}\label{wxcomboboxgetlastposition}
-
-\constfunc{long}{GetLastPosition}{\void}
-
-Returns the last position in the combobox text field.
-
-\membersection{wxComboBox::GetSelection}\label{wxcomboboxgetselection}
-
-\constfunc{int}{GetSelection}{\void}
-
-Gets the position of the selected string, or -1 if there is no selection.
-
-\membersection{wxComboBox::GetString}\label{wxcomboboxgetstring}
-
-\constfunc{wxString}{GetString}{\param{int}{ n}}
-
-Returns the string at position {\it n}.
-
-\wxheading{Parameters}
-
-\docparam{n}{The item position, starting from zero.}
+\textbf{Note:} Under wxMSW, this function always returns $0$ if the combobox
+doesn't have the focus.
 
 
-\wxheading{Return value}
 
 
-The string if the item is found, otherwise the empty string.
+\membersection{wxComboBox::GetLastPosition}\label{wxcomboboxgetlastposition}
 
 
-\membersection{wxComboBox::GetStringSelection}\label{wxcomboboxgetstringselection}
+\constfunc{virtual wxTextPos}{GetLastPosition}{\void}
 
 
-\constfunc{wxString}{GetStringSelection}{\void}
+Returns the last position in the combobox text field.
 
 
-Gets the selected string.
 
 \membersection{wxComboBox::GetValue}\label{wxcomboboxgetvalue}
 
 
 \membersection{wxComboBox::GetValue}\label{wxcomboboxgetvalue}
 
@@ -214,13 +210,6 @@ Gets the selected string.
 
 Returns the current value in the combobox text field.
 
 
 Returns the current value in the combobox text field.
 
-\membersection{wxComboBox::Number}\label{wxcomboboxnumber}
-
-\constfunc{int}{Number}{\void}
-
-Returns the number of items in the combobox list.
-
-TODO: make this GetNumber or GetCount?
 
 \membersection{wxComboBox::Paste}\label{wxcomboboxpaste}
 
 
 \membersection{wxComboBox::Paste}\label{wxcomboboxpaste}
 
@@ -228,9 +217,17 @@ TODO: make this GetNumber or GetCount?
 
 Pastes text from the clipboard to the text field.
 
 
 Pastes text from the clipboard to the text field.
 
+
+\membersection{wxComboBox::Redo}\label{wxcomboboxredo}
+
+\func{void}{Redo}{\void}
+
+Redoes the last undo in the text field. Windows only.
+
+
 \membersection{wxComboBox::Replace}\label{wxcomboboxreplace}
 
 \membersection{wxComboBox::Replace}\label{wxcomboboxreplace}
 
-\func{void}{Replace}{\param{const long}{ from}, \param{const long}{ to}, \param{const wxString\& }{text}}
+\func{void}{Replace}{\param{long}{ from}, \param{long}{ to}, \param{const wxString\& }{text}}
 
 Replaces the text between two positions with the given text, in the combobox text field.
 
 
 Replaces the text between two positions with the given text, in the combobox text field.
 
@@ -242,9 +239,10 @@ Replaces the text between two positions with the given text, in the combobox tex
 
 \docparam{text}{The text to insert.}
 
 
 \docparam{text}{The text to insert.}
 
+
 \membersection{wxComboBox::Remove}\label{wxcomboboxremove}
 
 \membersection{wxComboBox::Remove}\label{wxcomboboxremove}
 
-\func{void}{Remove}{\param{const long}{ from}, \param{const long}{ to}}
+\func{void}{Remove}{\param{long}{ from}, \param{long}{ to}}
 
 Removes the text between the two positions in the combobox text field.
 
 
 Removes the text between the two positions in the combobox text field.
 
@@ -254,21 +252,10 @@ Removes the text between the two positions in the combobox text field.
 
 \docparam{to}{The last position.}
 
 
 \docparam{to}{The last position.}
 
-\membersection{wxComboBox::SetClientData}\label{wxcomboboxsetclientdata}
-
-\func{void}{SetClientData}{\param{const int}{ n}, \param{char* }{data}}
-
-Associates the given client data pointer with the given item.
-
-\wxheading{Parameters}
-
-\docparam{n}{The zero-based item.}
-
-\docparam{data}{The client data.}
 
 \membersection{wxComboBox::SetInsertionPoint}\label{wxcomboboxsetinsertionpoint}
 
 
 \membersection{wxComboBox::SetInsertionPoint}\label{wxcomboboxsetinsertionpoint}
 
-\func{void}{SetInsertionPoint}{\param{const long}{ pos}}
+\func{void}{SetInsertionPoint}{\param{long}{ pos}}
 
 Sets the insertion point in the combobox text field.
 
 
 Sets the insertion point in the combobox text field.
 
@@ -276,38 +263,48 @@ Sets the insertion point in the combobox text field.
 
 \docparam{pos}{The new insertion point.}
 
 
 \docparam{pos}{The new insertion point.}
 
+
 \membersection{wxComboBox::SetInsertionPointEnd}\label{wxcomboboxsetinsertionpointend}
 
 \func{void}{SetInsertionPointEnd}{\void}
 
 Sets the insertion point at the end of the combobox text field.
 
 \membersection{wxComboBox::SetInsertionPointEnd}\label{wxcomboboxsetinsertionpointend}
 
 \func{void}{SetInsertionPointEnd}{\void}
 
 Sets the insertion point at the end of the combobox text field.
 
-\membersection{wxComboBox::SetSelection}\label{wxcomboboxsetselection}
-
-\func{void}{SetSelection}{\param{const int}{ n}}
 
 
-Selects the given item in the combobox list.
+\membersection{wxComboBox::SetSelection}\label{wxcomboboxsetselection}
 
 
-\func{void}{SetSelection}{\param{const long}{ from}, \param{const long}{ to}}
+\func{void}{SetSelection}{\param{long}{ from}, \param{long}{ to}}
 
 Selects the text between the two positions, in the combobox text field.
 
 \wxheading{Parameters}
 
 
 Selects the text between the two positions, in the combobox text field.
 
 \wxheading{Parameters}
 
-\docparam{n}{The zero-based item to select.}
-
 \docparam{from}{The first position.}
 
 \docparam{to}{The second position.}
 
 \docparam{from}{The first position.}
 
 \docparam{to}{The second position.}
 
+\pythonnote{This method is called {\tt SetMark} in wxPython, {\tt SetSelection}
+name is kept for
+\helpref{wxControlWithItems::SetSelection}{wxcontrolwithitemssetselection}.}
+
+
 \membersection{wxComboBox::SetValue}\label{wxcomboboxsetvalue}
 
 \func{void}{SetValue}{\param{const wxString\& }{text}}
 
 Sets the text for the combobox text field.
 
 \membersection{wxComboBox::SetValue}\label{wxcomboboxsetvalue}
 
 \func{void}{SetValue}{\param{const wxString\& }{text}}
 
 Sets the text for the combobox text field.
 
+{\bf NB:} For a combobox with {\tt wxCB\_READONLY} style the string must be in
+the combobox choices list, otherwise the call to SetValue() is ignored.
+
 \wxheading{Parameters}
 
 \docparam{text}{The text to set.}
 
 
 \wxheading{Parameters}
 
 \docparam{text}{The text to set.}
 
 
+\membersection{wxComboBox::Undo}\label{wxcomboboxundo}
+
+\func{void}{Undo}{\void}
+
+Undoes the last edit in the text field. Windows only.
+