]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/vlbox.tex
Added wxDataViewTreeCtrl
[wxWidgets.git] / docs / latex / wx / vlbox.tex
index b2d16c7d77236f1134e6918d2eb6c6ef1f146365..81e19d59661e90b60accfdc99601a32a6358b01e 100644 (file)
@@ -13,9 +13,9 @@
 
 wxVListBox is a listbox-like control with the following two main differences
 from a regular listbox: it can have an arbitrarily huge number of items because
-it doesn't store them itself but uses \helpref{OnDrawItem()}{wxvlistboxondrawitem} 
+it doesn't store them itself but uses \helpref{OnDrawItem()}{wxvlistboxondrawitem}
 callback to draw them (so it is a {\Large V}irtual listbox) and its items can
-have variable height as determined by 
+have variable height as determined by
 \helpref{OnMeasureItem()}{wxvlistboxonmeasureitem} (so it is also a listbox
 with the lines of {\Large V}ariable height).
 
@@ -27,16 +27,30 @@ use this class directly because it has pure virtual functions, but will need to
 derive your own class, such as \helpref{wxHtmlListBox}{wxhtmllistbox}, from it.
 
 However it emits the same events as \helpref{wxListBox}{wxlistbox} and the same
-event macros may be used with it.
+event macros may be used with it. Since wxVListBox does not store its items
+itself, the events will only contain the index, not any contents such as the
+string of an item.
+
 \wxheading{Derived from}
 
-\helpref{wxVScrolledWindow}{wxvscrolledwindow}
+\helpref{wxVScrolledWindow}{wxvscrolledwindow}\\
+\helpref{wxPanel}{wxpanel}\\
+\helpref{wxWindow}{wxwindow}\\
+\helpref{wxEvtHandler}{wxevthandler}\\
+\helpref{wxObject}{wxobject}
 
 \wxheading{Include files}
 
 <wx/vlbox.h>
 
+\wxheading{Library}
+
+\helpref{wxCore}{librarieslist}
+
+\wxheading{See also}
+
+\helpref{wxSimpleHtmlListBox}{wxsimplehtmllistbox}, \helpref{wxHtmlListBox}{wxhtmllistbox}
+
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
@@ -62,11 +76,11 @@ Deletes all items from the control.
 
 \func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = wxID\_ANY}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = 0}, \param{const wxString\& }{name = wxVListBoxNameStr}}
 
-Creates the control. To finish creating it you also should call 
+Creates the control. To finish creating it you also should call
 \helpref{SetItemCount()}{wxvlistboxsetitemcount} to let it know about the
 number of items it contains.
 
-The only special style which may be used with wxVListBox is {\tt wxLB\_MULTIPLE} 
+The only special style which may be used with wxVListBox is {\tt wxLB\_MULTIPLE}
 which indicates that the listbox should support multiple selection.
 
 Returns {\tt true} on success or {\tt false} if the control couldn't be created
@@ -92,10 +106,10 @@ This method is only valid for multi selection listboxes.
 
 \constfunc{int}{GetFirstSelected}{\param{unsigned long\& }{cookie}}
 
-Returns the index of the first selected item in the listbox or 
+Returns the index of the first selected item in the listbox or
 {\tt wxNOT\_FOUND} if no items are currently selected.
 
-{\it cookie} is an opaque parameter which should be passed to the subsequent
+\arg{cookie} is an opaque parameter which should be passed to the subsequent
 calls to \helpref{GetNextSelected}{wxvlistboxgetnextselected}. It is needed in
 order to allow parallel iterations over the selected items.
 
@@ -129,7 +143,7 @@ Get the number of items in the control.
 \constfunc{wxPoint}{GetMargins}{\void}
 
 Returns the margins used by the control. The {\tt x} field of the returned
-point is the horizontal margine and the {\tt y} field is the vertical one.
+point is the horizontal margin and the {\tt y} field is the vertical one.
 
 \wxheading{See also}
 
@@ -170,7 +184,7 @@ may only return $0$ or $1$ however.
 
 \constfunc{int}{GetSelection}{\void}
 
-Get the currently selected item or $-1$ if there is no selection.
+Get the currently selected item or {\tt wxNOT\_FOUND} if there is no selection.
 
 
 \membersection{wxVListBox::GetSelectionBackground}\label{wxvlistboxgetselectionbackground}
@@ -202,7 +216,7 @@ listbox.
 Returns {\tt true} if this item is the current one, {\tt false} otherwise.
 
 Current item is always the same as selected one for the single selection
-listbox and in this case this method is equivalent to 
+listbox and in this case this method is equivalent to
 \helpref{IsSelected}{wxvlistboxisselected} but they are different for multi
 selection listboxes where many items may be selected but only one (at most) is
 current.
@@ -215,6 +229,19 @@ current.
 Returns {\tt true} if this item is selected, {\tt false} otherwise.
 
 
+\membersection{wxVListBox::OnDrawBackground}\label{wxvlistboxondrawbackground}
+
+\constfunc{void}{OnDrawBackground}{\param{wxDC\& }{dc}, \param{const wxRect\& }{rect}, \param{size\_t }{n}}
+
+This method is used to draw the items background and, maybe, a border
+around it.
+
+The base class version implements a reasonable default behaviour which
+consists in drawing the selected item with the standard background
+colour and drawing a border around the item if it is either selected or
+current.
+
+
 \membersection{wxVListBox::OnDrawItem}\label{wxvlistboxondrawitem}
 
 \constfunc{void}{OnDrawItem}{\param{wxDC\& }{dc}, \param{const wxRect\& }{rect}, \param{size\_t }{n}}
@@ -269,7 +296,7 @@ equal to {\tt wxNOT\_FOUND}).
 Return {\tt true} if the items selection status has changed or {\tt false}
 otherwise.
 
-This function is only valid for the multiple selection listboxes, use 
+This function is only valid for the multiple selection listboxes, use
 \helpref{SetSelection}{wxvlistboxsetselection} for the single selection ones.
 
 
@@ -304,13 +331,14 @@ This method is only valid for multi selection listboxes.
 
 \helpref{SelectAll}{wxvlistboxselectall}, \helpref{Select}{wxvlistboxselect}
 
+\membersection{wxVListBox::SetItemCount}\label{wxvlistboxsetitemcount}
 
 \func{void}{SetItemCount}{\param{size\_t }{count}}
 
 Set the number of items to be shown in the control.
 
 This is just a synonym for
-\helpref{wxVScrolledWindow::SetLineCount()}{wxvscrolledwindowsetlinecount}.
+\helpref{wxVScrolledWindow::SetRowCount()}{wxvarvscrollhelpersetrowcount}.
 
 
 \membersection{wxVListBox::SetMargins}\label{wxvlistboxsetmargins}
@@ -342,9 +370,13 @@ This method may be used both with single and multiple selection listboxes.
 \func{void}{SetSelectionBackground}{\param{const wxColour\& }{col}}
 
 Sets the colour to be used for the selected cells background. The background of
-the standard cells may be changed by simply calling 
+the standard cells may be changed by simply calling
 \helpref{SetBackgroundColour}{wxwindowsetbackgroundcolour}.
 
+Notice that using non-default background colour may result in control having
+appearance different from the similar native controls and so should in general
+be avoided.
+
 \wxheading{See also}
 
 \helpref{GetSelectionBackground}{wxvlistboxgetselectionbackground}
@@ -354,7 +386,7 @@ the standard cells may be changed by simply calling
 
 \func{void}{Toggle}{\param{size\_t }{item}}
 
-Toggles the state of the specified {\it item}, i.e. selects it if it was
+Toggles the state of the specified \arg{item}, i.e. selects it if it was
 unselected and deselects it if it was selected.
 
 This method is only valid for multi selection listboxes.