]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/listctrl.tex
Some doc corrections; removed wxDocument arg from wxView constructor;
[wxWidgets.git] / docs / latex / wx / listctrl.tex
CommitLineData
a660d684
KB
1\section{\class{wxListCtrl}}\label{wxlistctrl}
2
3A list control presents lists in a number of formats: list view, report view, icon view
4and small icon view. Elements are numbered from zero.
5
6To intercept events from a list control, use the event table macros described in \helpref{wxListEvent}{wxlistevent}.
7
8\wxheading{Derived from}
9
10\helpref{wxControl}{wxcontrol}\\
11\helpref{wxWindow}{wxwindow}\\
12\helpref{wxEvtHandler}{wxevthandler}\\
13\helpref{wxObject}{wxobject}
14
954b8ae6
JS
15\wxheading{Include files}
16
17<wx/listctrl.h>
18
a660d684
KB
19\wxheading{Window styles}
20
21\twocolwidtha{5cm}
22\begin{twocollist}\itemsep=0pt
23\twocolitem{\windowstyle{wxLC\_LIST}}{multicolumn list view, with optional small icons.
24Columns are computed automatically, i.e. you don't set columns as in wxLC\_REPORT. In other words,
25the list wraps, unlike a wxListBox.}
26\twocolitem{\windowstyle{wxLC\_REPORT}}{single or multicolumn report view, with optional header.}
27\twocolitem{\windowstyle{wxLC\_ICON}}{Large icon view, with optional labels.}
28\twocolitem{\windowstyle{wxLC\_SMALL\_ICON}}{Small icon view, with optional labels.}
29\twocolitem{\windowstyle{wxLC\_ALIGN\_TOP}}{Icons align to the top (default).}
30\twocolitem{\windowstyle{wxLC\_ALIGN\_LEFT}}{Icons align to the left.}
31\twocolitem{\windowstyle{wxLC\_AUTOARRANGE}}{Icons arrange themselves.}
32\twocolitem{\windowstyle{wxLC\_USER\_TEXT}}{The application provides label text on demand, except for column headers.}
33\twocolitem{\windowstyle{wxLC\_EDIT\_LABELS}}{Labels are editable: the application will be notified when editing starts.}
34\twocolitem{\windowstyle{wxLC\_NO\_HEADER}}{No header in report mode.}
35\twocolitem{\windowstyle{wxLC\_SINGLE\_SEL}}{Single selection.}
36\twocolitem{\windowstyle{wxLC\_SORT\_ASCENDING}}{Sort in ascending order (must still supply a comparison callback in SortItems.}
37\twocolitem{\windowstyle{wxLC\_SORT\_DESCENDING}}{Sort in descending order (must still supply a comparison callback in SortItems.}
38\end{twocollist}
39
40See also \helpref{window styles overview}{windowstyles}.
41
5de76427
JS
42\wxheading{Event handling}
43
44To process input from a list control, use these event handler macros to direct input to member
45functions that take a \helpref{wxListEvent}{wxlistevent} argument.
46
47\twocolwidtha{7cm}
48\begin{twocollist}\itemsep=0pt
49\twocolitem{{\bf EVT\_LIST\_BEGIN\_DRAG(id, func)}}{Begin dragging with the left mouse button.}
50\twocolitem{{\bf EVT\_LIST\_BEGIN\_RDRAG(id, func)}}{Begin dragging with the right mouse button.}
51\twocolitem{{\bf EVT\_LIST\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label.}
52\twocolitem{{\bf EVT\_LIST\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label.}
53\twocolitem{{\bf EVT\_LIST\_DELETE\_ITEM(id, func)}}{Delete an item.}
54\twocolitem{{\bf EVT\_LIST\_DELETE\_ALL\_ITEMS(id, func)}}{Delete all items.}
55\twocolitem{{\bf EVT\_LIST\_GET\_INFO(id, func)}}{Request information from the application, usually the item text.}
56\twocolitem{{\bf EVT\_LIST\_SET\_INFO(id, func)}}{Information is being supplied (not implemented).}
57\twocolitem{{\bf EVT\_LIST\_ITEM\_SELECTED(id, func)}}{The item has been selected.}
58\twocolitem{{\bf EVT\_LIST\_ITEM\_DESELECTED(id, func)}}{The item has been deselected.}
59\twocolitem{{\bf EVT\_LIST\_KEY\_DOWN(id, func)}}{A key has been pressed.}
60\twocolitem{{\bf EVT\_LIST\_INSERT\_ITEM(id, func)}}{An item has been inserted.}
61\twocolitem{{\bf EVT\_LIST\_COL\_CLICK(id, func)}}{A column ({\bf m\_col}) has been left-clicked.}
62\end{twocollist}%
63
a660d684
KB
64\wxheading{See also}
65
66\helpref{wxListCtrl overview}{wxlistctrloverview}, \helpref{wxListBox}{wxlistbox}, \helpref{wxTreeCtrl}{wxtreectrl},\rtfsp
67\helpref{wxImageList}{wximagelist}, \helpref{wxListEvent}{wxlistevent}
68
69\latexignore{\rtfignore{\wxheading{Members}}}
70
71\membersection{wxListCtrl::wxListCtrl}\label{wxlistctrlconstr}
72
73\func{}{wxListCtrl}{\void}
74
75Default constructor.
76
eaaa6a06 77\func{}{wxListCtrl}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
a660d684 78\param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
eaaa6a06 79\param{long}{ style = wxLC\_ICON}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``listCtrl"}}
a660d684
KB
80
81Constructor, creating and showing a list control.
82
83\wxheading{Parameters}
84
85\docparam{parent}{Parent window. Must not be NULL.}
86
87\docparam{id}{Window identifier. A value of -1 indicates a default value.}
88
89\docparam{pos}{Window position.}
90
91\docparam{size}{Window size. If the default size (-1, -1) is specified then the window is sized
92appropriately.}
93
94\docparam{style}{Window style. See \helpref{wxListCtrl}{wxlistctrl}.}
95
96\docparam{validator}{Window validator.}
97
98\docparam{name}{Window name.}
99
100\wxheading{See also}
101
102\helpref{wxListCtrl::Create}{wxlistctrlcreate}, \helpref{wxValidator}{wxvalidator}
103
104\membersection{wxListCtrl::\destruct{wxListCtrl}}
105
106\func{void}{\destruct{wxListCtrl}}{\void}
107
108Destructor, destroying the list control.
109
110\membersection{wxListCtrl::Arrange}\label{wxlistctrlarrange}
111
eaaa6a06 112\func{bool}{Arrange}{\param{int }{flag = wxLIST\_ALIGN\_DEFAULT}}
a660d684
KB
113
114Arranges the items in icon or small icon view. {\it flag} is one of:
115
116\twocolwidtha{5cm}
117\begin{twocollist}\itemsep=0pt
118\twocolitem{wxLIST\_ALIGN\_DEFAULT}{Default alignment.}
119\twocolitem{wxLIST\_ALIGN\_LEFT}{Align to the left side of the control.}
120\twocolitem{wxLIST\_ALIGN\_TOP}{Align to the top side of the control.}
121\twocolitem{wxLIST\_ALIGN\_SNAP\_TO\_GRID}{Snap to grid.}
122\end{twocollist}
123
124\membersection{wxListCtrl::Create}\label{wxlistctrlcreate}
125
eaaa6a06 126\func{bool}{Create}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
a660d684 127\param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
eaaa6a06 128\param{long}{ style = wxLC\_ICON}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``listCtrl"}}
a660d684
KB
129
130Creates the list control. See \helpref{wxListCtrl::wxListCtrl}{wxlistctrlconstr} for further details.
131
132\membersection{wxListCtrl::DeleteItem}\label{wxlistctrldeleteitem}
133
eaaa6a06 134\func{bool}{DeleteItem}{\param{long }{item}}
a660d684
KB
135
136Deletes the specified item.
137
138\membersection{wxListCtrl::DeleteAllItems}\label{wxlistctrldeleteallitems}
139
140\func{bool}{DeleteAllItems}{\void}
141
142Deletes all the items in the list control.
143
144\membersection{wxListCtrl::DeleteColumn}\label{wxlistctrldeletecolumn}
145
eaaa6a06 146\func{bool}{DeleteColumn}{\param{int }{col}}
a660d684
KB
147
148Deletes a column.
149
150\membersection{wxListCtrl::Edit}\label{wxlistctrledit}
151
eaaa6a06 152\func{wxTextCtrl\&}{Edit}{\param{long }{item}}
a660d684
KB
153
154Starts editing a label.
155
156\membersection{wxListCtrl::EnsureVisible}\label{wxlistctrlensurevisible}
157
eaaa6a06 158\func{bool}{EnsureVisible}{\param{long }{item}}
a660d684
KB
159
160Ensures this item is visible.
161
162\membersection{wxListCtrl::FindItem}\label{wxlistctrlfinditem}
163
eaaa6a06 164\func{long}{FindItem}{\param{long }{start}, \param{const wxString\& }{str}, \param{const bool }{partial = FALSE}}
a660d684
KB
165
166Find an item whose label matches this string, starting from the item after {\it start} or
167the beginning if {\it start} is -1.
168
eaaa6a06 169\func{long}{FindItem}{\param{long }{start}, \param{long }{data}}
a660d684
KB
170
171Find an item whose data matches this data, starting from the item after {\it start} or
172the beginning if 'start' is -1.
173
eaaa6a06 174\func{long}{FindItem}{\param{long }{start}, \param{const wxPoint\& }{pt}, \param{int }{direction}}
a660d684
KB
175
176Find an item nearest this position in the specified direction, starting from
177the item after {\it start} or the beginning if {\it start} is -1.
178
179\membersection{wxListCtrl::GetColumn}\label{wxlistctrlgetcolumn}
180
eaaa6a06 181\constfunc{bool}{GetColumn}{\param{int }{col}, \param{wxListItem\& }{item}}
a660d684
KB
182
183Gets information about this column. See \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem} for more
184information.
185
186\membersection{wxListCtrl::GetColumnWidth}\label{wxlistctrlgetcolumnwidth}
187
eaaa6a06 188\constfunc{int}{GetColumnWidth}{\param{int }{col}}
a660d684
KB
189
190Gets the column width (report view only).
191
192\membersection{wxListCtrl::GetCountPerPage}\label{wxlistctrlgetcountperpage}
193
194\constfunc{int}{GetCountPerPage}{\void}
195
196Gets the number of items that can fit vertically in the
197visible area of the list control (list or report view)
198or the total number of items in the list control (icon
199or small icon view).
200
201\membersection{wxListCtrl::GetEditControl}\label{wxlistctrlgeteditcontrol}
202
203\constfunc{wxTextCtrl\&}{GetEditControl}{\void}
204
205Gets the edit control for editing labels.
206
207\membersection{wxListCtrl::GetImageList}\label{wxlistctrlgetimagelist}
208
eaaa6a06 209\constfunc{wxImageList*}{GetImageList}{\param{int }{which}}
a660d684
KB
210
211Returns the specified image list. {\it which} may be one of:
212
213\twocolwidtha{5cm}
214\begin{twocollist}\itemsep=0pt
215\twocolitem{\windowstyle{wxIMAGE\_LIST\_NORMAL}}{The normal (large icon) image list.}
216\twocolitem{\windowstyle{wxIMAGE\_LIST\_SMALL}}{The small icon image list.}
217\twocolitem{\windowstyle{wxIMAGE\_LIST\_STATE}}{The user-defined state image list (unimplemented).}
218\end{twocollist}
219
220\membersection{wxListCtrl::GetItem}\label{wxlistctrlgetitem}
221
222\constfunc{bool}{GetItem}{\param{wxListItem\& }{info}}
223
224Gets information about the item. See \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem} for more
225information.
226
227\membersection{wxListCtrl::GetItemData}\label{wxlistctrlgetitemdata}
228
eaaa6a06 229\constfunc{long}{GetItemData}{\param{long }{item}}
a660d684
KB
230
231Gets the application-defined data associated with this item.
232
233\membersection{wxListCtrl::GetItemPosition}\label{wxlistctrlgetitemposition}
234
eaaa6a06 235\constfunc{bool}{GetItemPosition}{\param{long }{item}, \param{wxPoint\& }{pos}}
a660d684
KB
236
237Returns the position of the item, in icon or small icon view.
238
239\membersection{wxListCtrl::GetItemRect}\label{wxlistctrlgetitemrect}
240
eaaa6a06 241\constfunc{bool}{GetItemRect}{\param{long }{item}, \param{wxRect\& }{rect}, \param{int }{code = wxLIST\_RECT\_BOUNDS}}
a660d684
KB
242
243Returns the rectangle representing the item's size and position, in client coordinates.
244
245{\it code} is one of wxLIST\_RECT\_BOUNDS, wxLIST\_RECT\_ICON, wxLIST\_RECT\_LABEL.
246
247\membersection{wxListCtrl::GetItemState}\label{wxlistctrlgetitemstate}
248
eaaa6a06 249\constfunc{int}{GetItemState}{\param{long }{item}, \param{long }{stateMask}}
a660d684
KB
250
251Gets the item state. For a list of state flags, see \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem}.
252
253The {\bf stateMask} indicates which state flags are of interest.
254
255\membersection{wxListCtrl::GetItemCount}\label{wxlistctrlgetitemcount}
256
257\constfunc{int}{GetItemCount}{\void}
258
259Returns the number of items in the list control.
260
261\membersection{wxListCtrl::GetItemSpacing}\label{wxlistctrlgetitemspacing}
262
263\constfunc{int}{GetItemSpacing}{\param{bool }{isSmall}}
264
265Retrieves the spacing between icons in pixels.
266If {\it small} is TRUE, gets the spacing for the small icon
267view, otherwise the large icon view.
268
269\membersection{wxListCtrl::GetItemText}\label{wxlistctrlgetitemtext}
270
eaaa6a06 271\constfunc{wxString}{GetItemText}{\param{long }{item}}
a660d684
KB
272
273Gets the item text for this item.
274
275\membersection{wxListCtrl::GetNextItem}\label{wxlistctrlgetnextitem}
276
eaaa6a06 277\constfunc{long}{GetNextItem}{\param{long }{item}, \param{int }{geometry = wxLIST\_NEXT\_ALL}, \param{int }{state = wxLIST\_STATE\_DONTCARE}}
a660d684
KB
278
279Searches for an item with the given goemetry or state, starting from {\it item}. {\it item} can be -1
280to find the first item that matches the specified flags.
281
282Returns the item or -1 if unsuccessful.
283
284{\it geometry} can be one of:
285
286\twocolwidtha{5cm}
287\begin{twocollist}\itemsep=0pt
288\twocolitem{wxLIST\_NEXT\_ABOVE}{Searches for an item above the specified item.}
289\twocolitem{wxLIST\_NEXT\_ALL}{Searches for subsequent item by index.}
290\twocolitem{wxLIST\_NEXT\_BELOW}{Searches for an item below the specified item.}
291\twocolitem{wxLIST\_NEXT\_LEFT}{Searches for an item to the left of the specified item.}
292\twocolitem{wxLIST\_NEXT\_RIGHT}{Searches for an item to the right of the specified item.}
293\end{twocollist}
294
295{\it state} can be a bitlist of the following:
296
297\twocolwidtha{5cm}
298\begin{twocollist}\itemsep=0pt
299\twocolitem{wxLIST\_STATE\_DONTCARE}{Don't care what the state is.}
300\twocolitem{wxLIST\_STATE\_DROPHILITED}{The item indicates it is a drop target.}
301\twocolitem{wxLIST\_STATE\_FOCUSED}{The item has the focus.}
302\twocolitem{wxLIST\_STATE\_SELECTED}{The item is selected.}
303\twocolitem{wxLIST\_STATE\_CUT}{The item is selected as part of a cut and paste operation.}
304\end{twocollist}
305
306\membersection{wxListCtrl::GetSelectedItemCount}\label{wxlistctrlgetselecteditemcount}
307
308\constfunc{int}{GetSelectedItemCount}{\void}
309
310Returns the number of selected items in the list control.
311
312\membersection{wxListCtrl::GetTextColour}\label{wxlistctrlgettextcolour}
313
314\constfunc{wxColour}{GetTextColour}{\void}
315
316Gets the text colour of the list control.
317
318\membersection{wxListCtrl::GetTopItem}\label{wxlistctrlgettopitem}
319
320\constfunc{long}{GetTopItem}{\void}
321
322Gets the index of the topmost visible item when in
323list or report view.
324
325\membersection{wxListCtrl::HitTest}\label{wxlistctrlhittest}
326
327\func{long}{HitTest}{\param{const wxPoint\& }{point}, \param{int\& }{flags}}
328
329Determines which item (if any) is at the specified point,
330giving details in {\it flags}. {\it flags} will be a combination of the following flags:
331
332\twocolwidtha{5cm}
333\begin{twocollist}\itemsep=0pt
334\twocolitem{wxLIST\_HITTEST\_ABOVE}{Above the client area.}
335\twocolitem{wxLIST\_HITTEST\_BELOW}{Below the client area.}
336\twocolitem{wxLIST\_HITTEST\_NOWHERE}{In the client area but below the last item.}
337\twocolitem{wxLIST\_HITTEST\_ONITEMICON}{On the bitmap associated with an item.}
338\twocolitem{wxLIST\_HITTEST\_ONITEMLABEL}{On the label (string) associated with an item.}
339\twocolitem{wxLIST\_HITTEST\_ONITEMRIGHT}{In the area to the right of an item.}
340\twocolitem{wxLIST\_HITTEST\_ONITEMSTATEICON}{On the state icon for a tree view item that is in a user-defined state.}
341\twocolitem{wxLIST\_HITTEST\_TOLEFT}{To the right of the client area.}
342\twocolitem{wxLIST\_HITTEST\_TORIGHT}{To the left of the client area.}
343\twocolitem{wxLIST\_HITTEST\_ONITEM}{Combination of wxLIST\_HITTEST\_ONITEMICON, wxLIST\_HITTEST\_ONITEMLABEL,
344wxLIST\_HITTEST\_ONITEMSTATEICON.}
345\end{twocollist}
346
347\membersection{wxListCtrl::InsertColumn}\label{wxlistctrlinsertcolumn}
348
eaaa6a06 349\func{long}{InsertColumn}{\param{long }{col}, \param{wxListItem\& }{info}}
a660d684
KB
350
351For list view mode (only), inserts a column. For more details, see \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem}.
352
eaaa6a06
JS
353\func{long}{InsertColumn}{\param{long }{col}, \param{const wxString\& }{heading}, \param{int }{format = wxLIST\_FORMAT\_LEFT},\rtfsp
354\param{int }{width = -1}}
a660d684
KB
355
356For list view mode (only), inserts a column. For more details, see \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem}.
357
358\membersection{wxListCtrl::InsertItem}\label{wxlistctrlinsertitem}
359
360\func{long}{InsertItem}{\param{wxListItem\& }{info}}
361
362Inserts an item, returning the index of the new item if successful,
363-1 otherwise.
364
eaaa6a06 365\func{long}{InsertItem}{\param{long }{index}, \param{const wxString\& }{label}}
a660d684
KB
366
367Inserts a string item.
368
eaaa6a06 369\func{long}{InsertItem}{\param{long }{index}, \param{int }{imageIndex}}
a660d684
KB
370
371Inserts an image item.
372
eaaa6a06 373\func{long}{InsertItem}{\param{long }{index}, \param{const wxString\& }{label}, \param{int }{imageIndex}}
a660d684
KB
374
375Insert an image/string item.
376
884360bc
JS
377\wxheading{Parameters}
378
379\docparam{info}{wxListItem object}
380
381\docparam{index}{Index of the new item, supplied by the application}
382
383\docparam{label}{String label}
384
385\docparam{imageIndex}{index into the image list associated with this control and view style}
386
a660d684
KB
387\membersection{wxListCtrl::ScrollList}\label{wxlistctrlscrolllist}
388
eaaa6a06 389\func{bool}{ScrollList}{\param{int }{dx}, \param{int }{dy}}
a660d684
KB
390
391Scrolls the list control. If in icon, small icon or report view mode,
392dx specifies the number of pixels to scroll. If in list view mode, dx
393specifies the number of columns to scroll.
394
395If in icon, small icon or list view mode, dy specifies the number of pixels
396to scroll. If in report view mode, dy specifies the number of lines to scroll.
397
398\membersection{wxListCtrl::SetBackgroundColour}\label{wxlistctrlsetbackgroundcolour}
399
400\func{void}{SetBackgroundColour}{\param{const wxColour\& }{col}}
401
402Sets the background colour (GetBackgroundColour already implicit in
403wxWindow class).
404
405\membersection{wxListCtrl::SetColumn}\label{wxlistctrlsetcolumn}
406
eaaa6a06 407\func{bool}{SetColumn}{\param{int }{col}, \param{wxListItem\& }{item}}
a660d684
KB
408
409Sets information about this column. See \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem} for more
410information.
411
412\membersection{wxListCtrl::SetColumnWidth}\label{wxlistctrlsetcolumnwidth}
413
eaaa6a06 414\func{bool}{SetColumnWidth}{\param{int }{col}, \param{int }{width}}
a660d684 415
884360bc 416Sets the column width.
a660d684
KB
417
418{\it width} can be a width in pixels or wxLIST\_AUTOSIZE (-1) or wxLIST\_AUTOSIZE\_USEHEADER (-2).
884360bc
JS
419
420In small or normal icon view, {\it col} must be -1, and the column width is set for all columns.
a660d684
KB
421
422\membersection{wxListCtrl::SetImageList}\label{wxlistctrlsetimagelist}
423
eaaa6a06 424\func{void}{SetImageList}{\param{wxImageList*}{ imageList}, \param{int }{which}}
a660d684
KB
425
426Sets the image list associated with the control. {\it which} is one of
427wxIMAGE\_LIST\_NORMAL, wxIMAGE\_LIST\_SMALL, wxIMAGE\_LIST\_STATE (the last is unimplemented).
428
429\membersection{wxListCtrl::SetItem}\label{wxlistctrlsetitem}
430
431\func{bool}{SetItem}{\param{wxListItem\& }{info}}
432
433Sets information about the item.
434
435wxListItem is a class with the following members:
436
437\twocolwidtha{5cm}
438\begin{twocollist}\itemsep=0pt
439\twocolitem{long m\_mask}{Indicates which fields are valid. See the list of valid mask flags below.}
440\twocolitem{long m\_itemId}{The zero-based item position.}
441\twocolitem{int m\_col}{Zero-based column, if in report mode.}
442\twocolitem{long m\_state}{The state of the item. See the list of valid state flags below.}
443\twocolitem{long m\_stateMask}{A mask indicating which state flags are valid. See the list of valid state flags below.}
444\twocolitem{wxString m\_text}{The label/header text.}
445\twocolitem{int m\_image}{The zero-based index into an image list.}
446\twocolitem{long m\_data}{Application-defined data.}
447\twocolitem{int m\_format}{For columns only: the format. Can be wxLIST\_FORMAT\_LEFT, wxLIST\_FORMAT\_RIGHT or
448wxLIST\_FORMAT\_CENTRE.}
449\twocolitem{int m\_width}{For columns only: the column width.}
450\end{twocollist}
451
452The {\bf m\_mask} member contains a bitlist specifying which of the other fields are valid. The flags are:
453
454\twocolwidtha{5cm}
455\begin{twocollist}\itemsep=0pt
456\twocolitem{wxLIST\_MASK\_STATE}{The {\bf m\_state} field is valid.}
457\twocolitem{wxLIST\_MASK\_TEXT}{The {\bf m\_text} field is valid.}
458\twocolitem{wxLIST\_MASK\_IMAGE}{The {\bf m\_image} field is valid.}
459\twocolitem{wxLIST\_MASK\_DATA}{The {\bf m\_data} field is valid.}
460\twocolitem{wxLIST\_MASK\_WIDTH}{The {\bf m\_width} field is valid.}
461\twocolitem{wxLIST\_MASK\_FORMAT}{The {\bf m\_format} field is valid.}
462\end{twocollist}
463
464The {\bf m\_stateMask} and {\bf m\_state} members take flags from the following:
465
466\twocolwidtha{5cm}
467\begin{twocollist}\itemsep=0pt
468\twocolitem{wxLIST\_STATE\_DONTCARE}{Don't care what the state is.}
469\twocolitem{wxLIST\_STATE\_DROPHILITED}{The item is highlighted to receive a drop event.}
470\twocolitem{wxLIST\_STATE\_FOCUSED}{The item has the focus.}
471\twocolitem{wxLIST\_STATE\_SELECTED}{The item is selected.}
472\twocolitem{wxLIST\_STATE\_CUT}{The item is in the cut state.}
473\end{twocollist}
474
eaaa6a06 475\func{long}{SetItem}{\param{long }{index}, \param{int }{col}, \param{const wxString\& }{label}, \param{int }{imageId = -1}}
a660d684
KB
476
477Sets a string field at a particular column.
478
479\membersection{wxListCtrl::SetItemData}\label{wxlistctrlsetitemdata}
480
eaaa6a06 481\func{bool}{SetItemData}{\param{long }{item}, \param{long }{data}}
a660d684
KB
482
483Associates application-defined data with this item.
484
485\membersection{wxListCtrl::SetItemImage}\label{wxlistctrlsetitemimage}
486
eaaa6a06 487\func{bool}{SetItemImage}{\param{long }{item}, \param{int }{image}, \param{int }{selImage}}
a660d684
KB
488
489Sets the unselected and selected images associated with the item. The images are indices into the
490image list associated with the list control.
491
492\membersection{wxListCtrl::SetItemPosition}\label{wxlistctrlsetitemposition}
493
eaaa6a06 494\func{bool}{SetItemPosition}{\param{long }{item}, \param{const wxPoint\& }{pos}}
a660d684
KB
495
496Sets the position of the item, in icon or small icon view.
497
498\membersection{wxListCtrl::SetItemState}\label{wxlistctrlsetitemstate}
499
eaaa6a06 500\func{bool}{SetItemState}{\param{long }{item}, \param{long }{state}, \param{long }{stateMask}}
a660d684
KB
501
502Sets the item state. For a list of state flags, see \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem}.
503
504The {\bf stateMask} indicates which state flags are valid.
505
506\membersection{wxListCtrl::SetItemText}\label{wxlistctrlsetitemtext}
507
eaaa6a06 508\func{void}{SetItemText}{\param{long }{item}, \param{const wxString\& }{text}}
a660d684
KB
509
510Sets the item text for this item.
511
512\membersection{wxListCtrl::SetSingleStyle}\label{wxlistctrlsetsinglestyle}
513
eaaa6a06 514\func{void}{SetSingleStyle}{\param{long }{style}, \param{const bool }{add = TRUE}}
a660d684
KB
515
516Adds or removes a single window style.
517
518\membersection{wxListCtrl::SetTextColour}\label{wxlistctrlsettextcolour}
519
520\func{void}{SetTextColour}{\param{const wxColour\& }{col}}
521
522Sets the text colour of the list control.
523
524\membersection{wxListCtrl::SetWindowStyleFlag}\label{wxlistctrlsetwindowstyleflag}
525
eaaa6a06 526\func{void}{SetWindowStyleFlag}{\param{long }{style}}
a660d684
KB
527
528Sets the whole window style.
529
530\membersection{wxListCtrl::SortItems}\label{wxlistctrlsortitems}
531
532\func{bool}{SortItems}{\param{wxListCtrlCompare }{fn}, \param{long }{data}}
533
534Sorts the items in the list control.
535
536fn is a function which takes 3 long arguments: item1, item2, data.
537
538item1 is the long data associated with a first item (NOT the index).
539
540item2 is the long data associated with a second item (NOT the index).
541
542data is the same value as passed to SortItems.
543
544The return value is a negative number if the first item should precede the second
545item, a positive number of the second item should precede the first,
546or zero if the two items are equivalent.
547
548data is arbitrary data to be passed to the sort function.
549