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