X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/659334e17f17fda066ba322178f72bb474c3010c..d3fa4bc22e84e3ca4d88cc1772f2d414140a1017:/interface/wx/listbox.h?ds=sidebyside diff --git a/interface/wx/listbox.h b/interface/wx/listbox.h index e9e3524b7a..4f559e706f 100644 --- a/interface/wx/listbox.h +++ b/interface/wx/listbox.h @@ -17,11 +17,18 @@ (clicking an item toggles the item on or off independently of other selections). - List box elements are numbered from zero. - Their number may be limited under some platforms. - - A listbox callback gets an event @c wxEVT_COMMAND_LISTBOX_SELECTED for - single clicks, and @c wxEVT_COMMAND_LISTBOX_DOUBLECLICKED for double clicks. + List box elements are numbered from zero and while the maximal number of + elements is unlimited, it is usually better to use a virtual control, not + requiring to add all the items to it at once, such as wxDataViewCtrl or + wxListCtrl with @c wxLC_VIRTUAL style, once more than a few hundreds items + need to be displayed because this control is not optimized, neither from + performance nor from user interface point of view, for large number of + items. + + Notice that currently @c TAB characters in list box items text are not + handled consistently under all platforms, so they should be replaced by + spaces to display strings properly everywhere. The list box doesn't + support any other control characters at all. @beginStyleTable @style{wxLB_SINGLE} @@ -51,20 +58,21 @@ @beginEventEmissionTable{wxCommandEvent} @event{EVT_LISTBOX(id, func)} - Process a @c wxEVT_COMMAND_LISTBOX_SELECTED event, when an item on the + Process a @c wxEVT_LISTBOX event, when an item on the list is selected or the selection changes. @event{EVT_LISTBOX_DCLICK(id, func)} - Process a @c wxEVT_COMMAND_LISTBOX_DOUBLECLICKED event, when the listbox + Process a @c wxEVT_LISTBOX_DCLICK event, when the listbox is double-clicked. @endEventTable @library{wxcore} @category{ctrl} - @appearance{listbox.png} + @appearance{listbox} @see wxEditableListBox, wxChoice, wxComboBox, wxListCtrl, wxCommandEvent */ -class wxListBox : public wxControlWithItems +class wxListBox : public wxControl, + public wxItemContainer { public: /** @@ -293,5 +301,13 @@ public: This method is mostly meant for internal use only. */ virtual bool IsSorted() const; + + + // NOTE: Phoenix needs to see the implementation of pure virtuals so it + // knows that this class is not abstract. + virtual unsigned int GetCount() const; + virtual wxString GetString(unsigned int n) const; + virtual void SetString(unsigned int n, const wxString& s); + virtual int FindString(const wxString& s, bool bCase = false) const; };