]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/grid.tex
added possibility to reorder columns by dragging them (patch 1409677)
[wxWidgets.git] / docs / latex / wx / grid.tex
1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 %% Name: grid.tex
3 %% Purpose: wxGrid
4 %% Author:
5 %% Modified by: Santiago Palacios
6 %% Created:
7 %% RCS-ID: $Id$
8 %% Copyright: (c) wxWidgets
9 %% License: wxWindows license
10 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11
12 \section{\class{wxGrid}}\label{wxgrid}
13
14 wxGrid and its related classes are used for displaying and editing tabular
15 data. They provide a rich set of features for display, editing, and
16 interacting with a variety of data sources. For simple applications, and to
17 help you get started, wxGrid is the only class you need to refer to
18 directly. It will set up default instances of the other classes and manage
19 them for you. For more complex applications you can derive your own
20 classes for custom grid views, grid data tables, cell editors and
21 renderers. The \helpref{wxGrid classes overview}{gridoverview} has
22 examples of simple and more complex applications, explains the
23 relationship between the various grid classes and has a summary of the
24 keyboard shortcuts and mouse functions provided by wxGrid.
25
26 wxGrid has been greatly expanded and redesigned for wxWidgets 2.2
27 onwards. If you have been using the old wxGrid class you will probably
28 want to have a look at the \helpref{wxGrid classes overview}{gridoverview} to see
29 how things have changed. The new grid classes are reasonably backward-compatible
30 but there are some exceptions. There are also easier ways of doing many things compared to
31 the previous implementation.
32
33 \wxheading{Derived from}
34
35 \helpref{wxScrolledWindow}{wxscrolledwindow}\\
36 \helpref{wxWindow}{wxwindow}\\
37 \helpref{wxEvtHandler}{wxevthandler}\\
38 \helpref{wxObject}{wxobject}
39
40 \wxheading{Include files}
41
42 <wx/grid.h>
43
44 \wxheading{Window styles}
45
46 There are presently no specific window styles for wxGrid.
47
48 \wxheading{Event handling}
49
50 \input gridevt.inc
51
52 The event handler for the following functions takes a
53 \helpref{wxGridSizeEvent}{wxgridsizeevent} parameter.
54 The ...\_CMD\_... variants also take a window identifier.
55
56 \twocolwidtha{7cm}
57 \begin{twocollist}\itemsep=0pt
58 \twocolitem{{\bf EVT\_GRID\_COL\_SIZE(func)}}{The user resized a column by dragging it. Processes a wxEVT\_GRID\_COL\_SIZE.}
59 \twocolitem{{\bf EVT\_GRID\_ROW\_SIZE(func)}}{The user resized a row by dragging it. Processes a wxEVT\_GRID\_ROW\_SIZE.}
60 \twocolitem{{\bf EVT\_GRID\_CMD\_COL\_SIZE(func)}}{The user resized a column by dragging it; variant taking a window identifier. Processes a wxEVT\_GRID\_COL\_SIZE.}
61 \twocolitem{{\bf EVT\_GRID\_CMD\_ROW\_SIZE(func)}}{The user resized a row by dragging it; variant taking a window identifier. Processes a wxEVT\_GRID\_ROW\_SIZE.}
62 \end{twocollist}%
63
64 The event handler for the following functions takes a
65 \helpref{wxGridRangeSelectEvent}{wxgridrangeselectevent} parameter.
66 The ...\_CMD\_... variant also takes a window identifier.
67
68 \twocolwidtha{7cm}
69 \begin{twocollist}\itemsep=0pt
70 \twocolitem{{\bf EVT\_GRID\_RANGE\_SELECT(func)}}{The user selected a group of contiguous cells. Processes a wxEVT\_GRID\_RANGE\_SELECT.}
71 \twocolitem{{\bf EVT\_GRID\_CMD\_RANGE\_SELECT(id, func)}}{The user selected a group of contiguous cells; variant taking a window identifier. Processes a wxEVT\_GRID\_RANGE\_SELECT.}
72 \end{twocollist}%
73
74 The event handler for the following functions takes a
75 \helpref{wxGridEditorCreatedEvent}{wxgrideditorcreatedevent} parameter.
76 The ...\_CMD\_... variant also takes a window identifier.
77
78 \twocolwidtha{7cm}
79 \begin{twocollist}\itemsep=0pt
80 \twocolitem{{\bf EVT\_GRID\_EDITOR\_CREATED(func)}}{The editor for a cell was created. Processes a wxEVT\_GRID\_EDITOR\_CREATED.}
81 \twocolitem{{\bf EVT\_GRID\_CMD\_EDITOR\_CREATED(id, func)}}{The editor for a cell was created; variant taking a window identifier. Processes a wxEVT\_GRID\_EDITOR\_CREATED.}
82 \end{twocollist}%
83
84 \wxheading{See also}
85
86 \helpref{wxGrid overview}{gridoverview}
87
88 %%%%%%%%%%% FUNCTION GROUPS %%%%%%%%%%%%%
89 \latexignore{\rtfignore{\wxheading{Function groups}}}
90
91
92
93 \membersection{Constructors and initialization}\label{wxgridconstructors}
94
95 \helpref{wxGrid}{wxgridctor}\\
96 \helpref{\destruct{wxGrid}}{wxgriddtor}\\
97 \helpref{CreateGrid}{wxgridcreategrid}\\
98 \helpref{SetTable}{wxgridsettable}
99
100
101
102 \membersection{Display format}\label{wxgriddisplayformat}
103
104
105
106 \membersection{Selection functions}\label{wxgridselectionfunctions}
107
108 \helpref{wxGrid::ClearSelection}{wxgridclearselection}\\
109 \helpref{wxGrid::IsSelection}{wxgridisselection}\\
110 \helpref{wxGrid::SelectAll}{wxgridselectall}\\
111 \helpref{wxGrid::SelectBlock}{wxgridselectblock}\\
112 \helpref{wxGrid::SelectCol}{wxgridselectcol}\\
113 \helpref{wxGrid::SelectRow}{wxgridselectrow}
114
115 %%%%%%%%% MEMBER FUNCTIONS %%%%%%%%%%
116 \helponly{\insertatlevel{2}{
117
118 \wxheading{Members}
119
120 }}
121
122
123
124 \membersection{wxGrid::wxGrid}\label{wxgridctor}
125
126 \func{}{wxGrid}{\void}
127
128 Default constructor
129
130 \func{}{wxGrid}{\param{wxWindow* }{parent}, \param{wxWindowID }{id}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = wxWANTS\_CHARS}, \param{const wxString\& }{name = wxPanelNameStr}}
131
132 Constructor to create a grid object. Call either \helpref{wxGrid::CreateGrid}{wxgridcreategrid} or
133 \helpref{wxGrid::SetTable}{wxgridsettable} directly after this to initialize the grid before using
134 it.
135
136
137
138 \membersection{wxGrid::\destruct{wxGrid}}\label{wxgriddtor}
139
140 \func{}{\destruct{wxGrid}}{\void}
141
142 Destructor. This will also destroy the associated grid table unless you passed a table
143 object to the grid and specified that the grid should not take ownership of the
144 table (see \helpref{wxGrid::SetTable}{wxgridsettable}).
145
146
147
148 \membersection{wxGrid::AppendCols}\label{wxgridappendcols}
149
150 \func{bool}{AppendCols}{\param{int }{numCols = 1}, \param{bool }{updateLabels = true}}
151
152 Appends one or more new columns to the right of the grid and returns true if
153 successful. The updateLabels argument is not used at present.
154
155 If you are using a derived grid table class you will need to override
156 \helpref{wxGridTableBase::AppendCols}{wxgridtablebaseappendcols}. See
157 \helpref{wxGrid::InsertCols}{wxgridinsertcols} for further information.
158
159
160
161 \membersection{wxGrid::AppendRows}\label{wxgridappendrows}
162
163 \func{bool}{AppendRows}{\param{int }{numRows = 1}, \param{bool }{updateLabels = true}}
164
165 Appends one or more new rows to the bottom of the grid and returns true if
166 successful. The updateLabels argument is not used at present.
167
168 If you are using a derived grid table class you will need to override
169 \helpref{wxGridTableBase::AppendRows}{wxgridtablebaseappendrows}. See
170 \helpref{wxGrid::InsertRows}{wxgridinsertrows} for further information.
171
172
173
174 \membersection{wxGrid::AutoSize}\label{wxgridautosize}
175
176 \func{void}{AutoSize}{\void}
177
178 Automatically sets the height and width of all rows and columns to fit their contents.
179
180 \wxheading{Note}\\
181 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
182 The memory requirements for this could become prohibitive if your grid is very large.
183
184
185
186 \membersection{wxGrid::AutoSizeColOrRow}\label{wxgridautosizecolorrow}
187
188 \func{void}{AutoSizeColOrRow}{\param{int }{n}, \param{bool }{setAsMin}, \param{bool }{column}}
189
190 Common part of AutoSizeColumn/Row() or row?
191
192
193
194 \membersection{wxGrid::AutoSizeColumn}\label{wxgridautosizecolumn}
195
196 \func{void}{AutoSizeColumn}{\param{int }{col}, \param{bool }{setAsMin = true}}
197
198 Automatically sizes the column to fit its contents. If setAsMin is true the calculated width will
199 also be set as the minimal width for the column.
200
201 \wxheading{Note}\\
202 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
203 The memory requirements for this could become prohibitive if your grid is very large.
204
205
206
207 \membersection{wxGrid::AutoSizeColumns}\label{wxgridautosizecolumns}
208
209 \func{void}{AutoSizeColumns}{\param{bool }{setAsMin = true}}
210
211 Automatically sizes all columns to fit their contents. If setAsMin is true the calculated widths will
212 also be set as the minimal widths for the columns.
213
214 \wxheading{Note}\\
215 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
216 The memory requirements for this could become prohibitive if your grid is very large.
217
218
219
220 \membersection{wxGrid::AutoSizeRow}\label{wxgridautosizerow}
221
222 \func{void}{AutoSizeRow}{\param{int }{row}, \param{bool }{setAsMin = true}}
223
224 Automatically sizes the row to fit its contents. If setAsMin is true the calculated height will
225 also be set as the minimal height for the row.
226
227 \wxheading{Note}\\
228 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
229 The memory requirements for this could become prohibitive if your grid is very large.
230
231
232
233 \membersection{wxGrid::AutoSizeRows}\label{wxgridautosizerows}
234
235 \func{void}{AutoSizeRows}{\param{bool }{setAsMin = true}}
236
237 Automatically sizes all rows to fit their contents. If setAsMin is true the calculated heights will
238 also be set as the minimal heights for the rows.
239
240 \wxheading{Note}\\
241 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
242 The memory requirements for this could become prohibitive if your grid is very large.
243
244
245
246 \membersection{wxGrid::BeginBatch}\label{wxgridbeginbatch}
247
248 \func{void}{BeginBatch}{\void}
249
250 Increments the grid's batch count. When the count is greater than zero repainting of
251 the grid is suppressed. Each call to BeginBatch must be matched by a later call to
252 \helpref{wxGrid::EndBatch}{wxgridendbatch}. Code that does a lot of grid
253 modification can be enclosed between BeginBatch and EndBatch calls to avoid
254 screen flicker. The final EndBatch will cause the grid to be repainted.
255
256
257
258 \membersection{wxGrid::BlockToDeviceRect}\label{wxgridblocktodevicerect}
259
260 \func{wxRect}{BlockToDeviceRect}{\param{const wxGridCellCoords \& }{topLeft}, \param{const wxGridCellCoords \& }{bottomRight}}
261
262 This function returns the rectangle that encloses the block of cells
263 limited by TopLeft and BottomRight cell in device coords and clipped
264 to the client size of the grid window.
265
266
267
268 \membersection{wxGrid::CanDragColMove}\label{wxgridcandragcolmove}
269
270 \func{bool}{CanDragColMove}{\void}
271
272 Returns true if columns can be moved by dragging with the mouse. Columns can be moved
273 by dragging on their labels.
274
275
276
277 \membersection{wxGrid::CanDragColSize}\label{wxgridcandragcolsize}
278
279 \func{bool}{CanDragColSize}{\void}
280
281 Returns true if columns can be resized by dragging with the mouse. Columns can be resized
282 by dragging the edges of their labels. If grid line dragging is enabled they can also be
283 resized by dragging the right edge of the column in the grid cell area
284 (see \helpref{wxGrid::EnableDragGridSize}{wxgridenabledraggridsize}).
285
286
287
288 \membersection{wxGrid::CanDragRowSize}\label{wxgridcandragrowsize}
289
290 \func{bool}{CanDragRowSize}{\void}
291
292 Returns true if rows can be resized by dragging with the mouse. Rows can be resized
293 by dragging the edges of their labels. If grid line dragging is enabled they can also be
294 resized by dragging the lower edge of the row in the grid cell area
295 (see \helpref{wxGrid::EnableDragGridSize}{wxgridenabledraggridsize}).
296
297
298
299 \membersection{wxGrid::CanDragGridSize}\label{wxgridcandraggridsize}
300
301 \func{bool}{CanDragGridSize}{\void}
302
303 Return true if the dragging of grid lines to resize rows and columns is enabled or false otherwise.
304
305
306
307 \membersection{wxGrid::CanEnableCellControl}\label{wxgridcanenablecellcontrol}
308
309 \constfunc{bool}{CanEnableCellControl}{\void}
310
311 Returns true if the in-place edit control for the current grid cell can be used and
312 false otherwise (e.g. if the current cell is read-only).
313
314
315
316 \membersection{wxGrid::CanHaveAttributes}\label{wxgridcanhaveattributes}
317
318 \func{bool}{CanHaveAttributes}{\void}
319
320 Do we have some place to store attributes in?
321
322
323
324 \membersection{wxGrid::CellToRect}\label{wxgridcelltorect}
325
326 \func{wxRect}{CellToRect}{\param{int }{row}, \param{int }{col}}
327
328 \func{wxRect}{CellToRect}{\param{const wxGridCellCoords\& }{coords}}
329
330 Return the rectangle corresponding to the grid cell's size and position in logical
331 coordinates.
332
333
334
335 \membersection{wxGrid::ClearGrid}\label{wxgridcleargrid}
336
337 \func{void}{ClearGrid}{\void}
338
339 Clears all data in the underlying grid table and repaints the grid. The table is not deleted by
340 this function. If you are using a derived table class then you need to override
341 \helpref{wxGridTableBase::Clear}{wxgridtablebaseclear} for this function to have any effect.
342
343
344
345 \membersection{wxGrid::ClearSelection}\label{wxgridclearselection}
346
347 \func{void}{ClearSelection}{\void}
348
349 Deselects all cells that are currently selected.
350
351
352
353 \membersection{wxGrid::CreateGrid}\label{wxgridcreategrid}
354
355 \func{bool}{CreateGrid}{\param{int }{numRows}, \param{int }{numCols}, \param{wxGrid::wxGridSelectionModes }{selmode = wxGrid::wxGridSelectCells}}
356
357 Creates a grid with the specified initial number of rows and columns.
358 Call this directly after the grid constructor. When you use this
359 function wxGrid will create and manage a simple table of string values
360 for you. All of the grid data will be stored in memory.
361
362 For applications with more complex data types or relationships, or for
363 dealing with very large datasets, you should derive your own grid table
364 class and pass a table object to the grid with \helpref{wxGrid::SetTable}{wxgridsettable}.
365
366
367
368 \membersection{wxGrid::DeleteCols}\label{wxgriddeletecols}
369
370 \func{bool}{DeleteCols}{\param{int }{pos = 0}, \param{int }{numCols = 1}, \param{bool }{updateLabels = true}}
371
372 Deletes one or more columns from a grid starting at the specified position and returns
373 true if successful. The updateLabels argument is not used at present.
374
375 If you are using a derived grid table class you will need to override
376 \helpref{wxGridTableBase::DeleteCols}{wxgridtablebasedeletecols}. See
377 \helpref{wxGrid::InsertCols}{wxgridinsertcols} for further information.
378
379
380
381 \membersection{wxGrid::DeleteRows}\label{wxgriddeleterows}
382
383 \func{bool}{DeleteRows}{\param{int }{pos = 0}, \param{int }{numRows = 1}, \param{bool }{updateLabels = true}}
384
385 Deletes one or more rows from a grid starting at the specified position and returns
386 true if successful. The updateLabels argument is not used at present.
387
388 If you are using a derived grid table class you will need to override
389 \helpref{wxGridTableBase::DeleteRows}{wxgridtablebasedeleterows}. See
390 \helpref{wxGrid::InsertRows}{wxgridinsertrows} for further information.
391
392
393
394 \membersection{wxGrid::DisableCellEditControl}\label{wxgriddisablecelleditcontrol}
395
396 \func{void}{DisableCellEditControl}{\void}
397
398 Disables in-place editing of grid cells.
399 Equivalent to calling EnableCellEditControl(false).
400
401
402
403 \membersection{wxGrid::DisableDragColMove}\label{wxgriddisabledragcolmove}
404
405 \func{void}{DisableDragColMove}{\void}
406
407 Disables column moving by dragging with the mouse. Equivalent to passing false to
408 \helpref{wxGrid::EnableDragColMove}{wxgridenabledragcolmove}.
409
410
411
412 \membersection{wxGrid::DisableDragColSize}\label{wxgriddisabledragcolsize}
413
414 \func{void}{DisableDragColSize}{\void}
415
416 Disables column sizing by dragging with the mouse. Equivalent to passing false to
417 \helpref{wxGrid::EnableDragColSize}{wxgridenabledragcolsize}.
418
419
420
421 \membersection{wxGrid::DisableDragGridSize}\label{wxgriddisabledraggridsize}
422
423 \func{void}{DisableDragGridSize}{\void}
424
425 Disable mouse dragging of grid lines to resize rows and columns. Equivalent to passing
426 false to \helpref{wxGrid::EnableDragGridSize}{wxgridenabledraggridsize}
427
428
429
430 \membersection{wxGrid::DisableDragRowSize}\label{wxgriddisabledragrowsize}
431
432 \func{void}{DisableDragRowSize}{\void}
433
434 Disables row sizing by dragging with the mouse. Equivalent to passing false to
435 \helpref{wxGrid::EnableDragRowSize}{wxgridenabledragrowsize}.
436
437
438
439 \membersection{wxGrid::EnableCellEditControl}\label{wxgridenablecelleditcontrol}
440
441 \func{void}{EnableCellEditControl}{\param{bool }{enable = true}}
442
443 Enables or disables in-place editing of grid cell data. The grid will issue either a
444 wxEVT\_GRID\_EDITOR\_SHOWN or wxEVT\_GRID\_EDITOR\_HIDDEN event.
445
446
447
448 \membersection{wxGrid::EnableDragColSize}\label{wxgridenabledragcolsize}
449
450 \func{void}{EnableDragColSize}{\param{bool }{enable = true}}
451
452 Enables or disables column sizing by dragging with the mouse.
453
454
455
456 \membersection{wxGrid::EnableDragColMove}\label{wxgridenabledragcolmove}
457
458 \func{void}{EnableDragColMove}{\param{bool }{enable = true}}
459
460 Enables or disables column moving by dragging with the mouse.
461
462
463
464 \membersection{wxGrid::EnableDragGridSize}\label{wxgridenabledraggridsize}
465
466 \func{void}{EnableDragGridSize}{\param{bool }{enable = true}}
467
468 Enables or disables row and column resizing by dragging gridlines with the mouse.
469
470
471
472 \membersection{wxGrid::EnableDragRowSize}\label{wxgridenabledragrowsize}
473
474 \func{void}{EnableDragRowSize}{\param{bool }{enable = true}}
475
476 Enables or disables row sizing by dragging with the mouse.
477
478
479
480 \membersection{wxGrid::EnableEditing}\label{wxgridenableediting}
481
482 \func{void}{EnableEditing}{\param{bool }{edit}}
483
484 If the edit argument is false this function sets the whole grid as read-only. If the
485 argument is true the grid is set to the default state where cells may be editable. In the
486 default state you can set single grid cells and whole rows and columns to be editable or
487 read-only via
488 \helpref{wxGridCellAttribute::SetReadOnly}{wxgridcellattrsetreadonly}. For single
489 cells you can also use the shortcut function
490 \helpref{wxGrid::SetReadOnly}{wxgridsetreadonly}.
491
492 For more information about controlling grid cell attributes see the
493 \helpref{wxGridCellAttr}{wxgridcellattr} cell attribute class and the
494 \helpref{wxGrid classes overview}{gridoverview}.
495
496
497
498 \membersection{wxGrid::EnableGridLines}\label{wxgridenablegridlines}
499
500 \func{void}{EnableGridLines}{\param{bool }{enable = true}}
501
502 Turns the drawing of grid lines on or off.
503
504
505
506 \membersection{wxGrid::EndBatch}\label{wxgridendbatch}
507
508 \func{void}{EndBatch}{\void}
509
510 Decrements the grid's batch count. When the count is greater than zero repainting of
511 the grid is suppressed. Each previous call to
512 \helpref{wxGrid::BeginBatch}{wxgridbeginbatch} must be matched by a later call to
513 EndBatch. Code that does a lot of grid modification can be enclosed between
514 BeginBatch and EndBatch calls to avoid screen flicker. The final EndBatch will
515 cause the grid to be repainted.
516
517
518
519 \membersection{wxGrid::Fit}\label{wxgridfit}
520
521 \func{void}{Fit}{\void}
522
523 Overridden wxWindow method.
524
525
526
527 \membersection{wxGrid::ForceRefresh}\label{wxgridforcerefresh}
528
529 \func{void}{ForceRefresh}{\void}
530
531 Causes immediate repainting of the grid. Use this instead of the usual wxWindow::Refresh.
532
533
534
535 \membersection{wxGrid::GetBatchCount}\label{wxgridgetbatchcount}
536
537 \func{int}{GetBatchCount}{\void}
538
539 Returns the number of times that \helpref{wxGrid::BeginBatch}{wxgridbeginbatch} has been called
540 without (yet) matching calls to \helpref{wxGrid::EndBatch}{wxgridendbatch}. While
541 the grid's batch count is greater than zero the display will not be updated.
542
543
544
545 \membersection{wxGrid::GetCellAlignment}\label{wxgridgetcellalignment}
546
547 \func{void}{GetCellAlignment}{\param{int }{row}, \param{int }{col}, \param{int* }{horiz}, \param{int* }{vert}}
548
549 Sets the arguments to the horizontal and vertical text alignment values for the
550 grid cell at the specified location.
551
552 Horizontal alignment will be one of wxALIGN\_LEFT, wxALIGN\_CENTRE or wxALIGN\_RIGHT. \\
553 Vertical alignment will be one of wxALIGN\_TOP, wxALIGN\_CENTRE or wxALIGN\_BOTTOM.
554
555 \perlnote{This method only takes the parameters {\tt row} and {\tt col} and
556 returns a 2-element list {\tt ( horiz, vert )}.}
557
558
559
560 \membersection{wxGrid::GetCellBackgroundColour}\label{wxgridgetcellbackgroundcolour}
561
562 \func{wxColour}{GetCellBackgroundColour}{\param{int }{row}, \param{int }{col}}
563
564 Returns the background colour of the cell at the specified location.
565
566
567
568 \membersection{wxGrid::GetCellEditor}\label{wxgridgetcelleditor}
569
570 \func{wxGridCellEditor*}{GetCellEditor}{\param{int }{row}, \param{int }{col}}
571
572 Returns a pointer to the editor for the cell at the specified location.
573
574 See \helpref{wxGridCellEditor}{wxgridcelleditor} and
575 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
576
577
578
579 \membersection{wxGrid::GetCellFont}\label{wxgridgetcellfont}
580
581 \func{wxFont}{GetCellFont}{\param{int }{row}, \param{int }{col}}
582
583 Returns the font for text in the grid cell at the specified location.
584
585
586
587 \membersection{wxGrid::GetCellRenderer}\label{wxgridgetcellrenderer}
588
589 \func{wxGridCellRenderer*}{GetCellRenderer}{\param{int }{row}, \param{int }{col}}
590
591 Returns a pointer to the renderer for the grid cell at the specified location.
592
593 See \helpref{wxGridCellRenderer}{wxgridcellrenderer} and
594 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
595
596
597
598 \membersection{wxGrid::GetCellTextColour}\label{wxgridgetcelltextcolour}
599
600 \func{wxColour}{GetCellTextColour}{\param{int }{row}, \param{int }{col}}
601
602 Returns the text colour for the grid cell at the specified location.
603
604
605
606 \membersection{wxGrid::GetCellValue}\label{wxgridgetcellvalue}
607
608 \func{wxString}{GetCellValue}{\param{int }{row}, \param{int }{col}}
609
610 \func{wxString}{GetCellValue}{\param{const wxGridCellCoords\&}{coords}}
611
612 Returns the string contained in the cell at the specified location. For simple applications where a
613 grid object automatically uses a default grid table of string values you use this function together
614 with \helpref{wxGrid::SetCellValue}{wxgridsetcellvalue} to access cell values.
615
616 For more complex applications where you have derived your own grid table class that contains
617 various data types (e.g. numeric, boolean or user-defined custom types) then you only use this
618 function for those cells that contain string values.
619
620 See \helpref{wxGridTableBase::CanGetValueAs}{wxgridtablebasecangetvalueas}
621 and the \helpref{wxGrid overview}{gridoverview} for more information.
622
623
624
625 \membersection{wxGrid::GetColAt}\label{wxgridgetcolat}
626
627 \constfunc{int}{GetColAt}{\param{int }{colPos}}
628
629 Returns the column ID of the specified column position.
630
631
632 \membersection{wxGrid::GetColLeft}\label{wxgridgetcolleft}
633
634 \constfunc{int}{GetColLeft}{\param{int }{col}}
635
636
637
638 \membersection{wxGrid::GetColLabelAlignment}\label{wxgridgetcollabelalignment}
639
640 \func{void}{GetColLabelAlignment}{\param{int* }{horiz}, \param{int* }{vert}}
641
642 Sets the arguments to the current column label alignment values.
643
644 Horizontal alignment will be one of wxALIGN\_LEFT, wxALIGN\_CENTRE or wxALIGN\_RIGHT.\\
645 Vertical alignment will be one of wxALIGN\_TOP, wxALIGN\_CENTRE or wxALIGN\_BOTTOM.
646
647 \perlnote{This method takes no parameters and
648 returns a 2-element list {\tt ( horiz, vert )}.}
649
650
651
652 \membersection{wxGrid::GetColLabelSize}\label{wxgridgetcollabelsize}
653
654 \func{int}{GetColLabelSize}{\void}
655
656 Returns the current height of the column labels.
657
658
659
660 \membersection{wxGrid::GetColLabelValue}\label{wxgridgetcollabelvalue}
661
662 \func{wxString}{GetColLabelValue}{\param{int }{col}}
663
664 Returns the specified column label. The default grid table class provides column labels of
665 the form A,B...Z,AA,AB...ZZ,AAA... If you are using a custom grid table you can override
666 \helpref{wxGridTableBase::GetColLabelValue}{wxgridtablebasegetcollabelvalue} to provide
667 your own labels.
668
669
670
671 \membersection{wxGrid::GetColMinimalAcceptableWidth}\label{wxgridgetcolminimalacceptablewidth}
672
673 \func{int}{GetColMinimalAcceptableWidth}{}
674
675 This returns the value of the lowest column width that can be handled correctly. See
676 member \helpref{SetColMinimalAcceptableWidth}{wxgridsetcolminimalacceptablewidth} for details.
677
678
679
680 \membersection{wxGrid::GetColMinimalWidth}\label{wxgridgetcolminimalwidth}
681
682 \constfunc{int}{GetColMinimalWidth}{\param{int }{col}}
683
684 Get the minimal width of the given column/row.
685
686
687
688 \membersection{wxGrid::GetColPos}\label{wxgridgetcolpos}
689
690 \constfunc{int}{GetColPos}{\param{int }{colID}}
691
692 Returns the position of the specified column.
693
694
695
696 \membersection{wxGrid::GetColRight}\label{wxgridgetcolright}
697
698 \constfunc{int}{GetColRight}{\param{int }{col}}
699
700
701
702 \membersection{wxGrid::GetColSize}\label{wxgridgetcolsize}
703
704 \func{int}{GetColSize}{\param{int }{col}}
705
706 Returns the width of the specified column.
707
708
709
710 \membersection{wxGrid::GetDefaultCellAlignment}\label{wxgridgetdefaultcellalignment}
711
712 \func{void}{GetDefaultCellAlignment}{\param{int* }{horiz}, \param{int* }{vert}}
713
714 Sets the arguments to the current default horizontal and vertical text alignment
715 values.
716
717 Horizontal alignment will be one of wxALIGN\_LEFT, wxALIGN\_CENTRE or wxALIGN\_RIGHT. \\
718 Vertical alignment will be one of wxALIGN\_TOP, wxALIGN\_CENTRE or wxALIGN\_BOTTOM.
719
720
721
722 \membersection{wxGrid::GetDefaultCellBackgroundColour}\label{wxgridgetdefaultcellbackgroundcolour}
723
724 \func{wxColour}{GetDefaultCellBackgroundColour}{\void}
725
726 Returns the current default background colour for grid cells.
727
728
729
730 \membersection{wxGrid::GetDefaultCellFont}\label{wxgridgetdefaultcellfont}
731
732 \func{wxFont}{GetDefaultCellFont}{\void}
733
734 Returns the current default font for grid cell text.
735
736
737
738 \membersection{wxGrid::GetDefaultCellTextColour}\label{wxgridgetdefaultcelltextcolour}
739
740 \func{wxColour}{GetDefaultCellTextColour}{\void}
741
742 Returns the current default colour for grid cell text.
743
744
745
746 \membersection{wxGrid::GetDefaultColLabelSize}\label{wxgridgetdefaultcollabelsize}
747
748 \func{int}{GetDefaultColLabelSize}{\void}
749
750 Returns the default height for column labels.
751
752
753
754 \membersection{wxGrid::GetDefaultColSize}\label{wxgridgetdefaultcolsize}
755
756 \func{int}{GetDefaultColSize}{\void}
757
758 Returns the current default width for grid columns.
759
760
761
762 \membersection{wxGrid::GetDefaultEditor}\label{wxgridgetdefaulteditor}
763
764 \constfunc{wxGridCellEditor*}{GetDefaultEditor}{\void}
765
766 Returns a pointer to the current default grid cell editor.
767
768 See \helpref{wxGridCellEditor}{wxgridcelleditor} and
769 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
770
771
772
773 \membersection{wxGrid::GetDefaultEditorForCell}\label{wxgridgetdefaulteditorforcell}
774
775 \constfunc{wxGridCellEditor*}{GetDefaultEditorForCell}{\param{int }{row}, \param{int }{col}}
776
777 \constfunc{wxGridCellEditor*}{GetDefaultEditorForCell}{\param{const wxGridCellCoords\& }{c}}
778
779
780
781 \membersection{wxGrid::GetDefaultEditorForType}\label{wxgridgetdefaulteditorfortype}
782
783 \constfunc{wxGridCellEditor*}{GetDefaultEditorForType}{\param{const wxString\& }{typeName}}
784
785
786
787 \membersection{wxGrid::GetDefaultRenderer}\label{wxgridgetdefaultrenderer}
788
789 \constfunc{wxGridCellRenderer*}{GetDefaultRenderer}{\void}
790
791 Returns a pointer to the current default grid cell renderer.
792
793 See \helpref{wxGridCellRenderer}{wxgridcellrenderer} and
794 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
795
796
797
798 \membersection{wxGrid::GetDefaultRendererForCell}\label{wxgridgetdefaultrendererforcell}
799
800 \constfunc{wxGridCellRenderer*}{GetDefaultRendererForCell}{\param{int }{row}, \param{int }{col}}
801
802
803
804 \membersection{wxGrid::GetDefaultRendererForType}\label{wxgridgetdefaultrendererfortype}
805
806 \constfunc{wxGridCellRenderer*}{GetDefaultRendererForType}{\param{const wxString\& }{typeName}}
807
808
809
810 \membersection{wxGrid::GetDefaultRowLabelSize}\label{wxgridgetdefaultrowlabelsize}
811
812 \func{int}{GetDefaultRowLabelSize}{\void}
813
814 Returns the default width for the row labels.
815
816
817
818 \membersection{wxGrid::GetDefaultRowSize}\label{wxgridgetdefaultrowsize}
819
820 \func{int}{GetDefaultRowSize}{\void}
821
822 Returns the current default height for grid rows.
823
824
825
826 \membersection{wxGrid::GetGridCursorCol}\label{wxgridgetgridcursorcol}
827
828 \func{int}{GetGridCursorCol}{\void}
829
830 Returns the current grid cell column position.
831
832
833
834 \membersection{wxGrid::GetGridCursorRow}\label{wxgridgetgridcursorrow}
835
836 \func{int}{GetGridCursorRow}{\void}
837
838 Returns the current grid cell row position.
839
840
841
842 \membersection{wxGrid::GetGridLineColour}\label{wxgridgetgridlinecolour}
843
844 \func{wxColour}{GetGridLineColour}{\void}
845
846 Returns the colour used for grid lines.
847
848
849
850 \membersection{wxGrid::GridLinesEnabled}\label{wxgridgridlinesenabled}
851
852 \func{bool}{GridLinesEnabled}{\void}
853
854 Returns true if drawing of grid lines is turned on, false otherwise.
855
856
857
858 \membersection{wxGrid::GetLabelBackgroundColour}\label{wxgridgetlabelbackgroundcolour}
859
860 \func{wxColour}{GetLabelBackgroundColour}{\void}
861
862 Returns the colour used for the background of row and column labels.
863
864
865
866 \membersection{wxGrid::GetLabelFont}\label{wxgridgetlabelfont}
867
868 \func{wxFont}{GetLabelFont}{\void}
869
870 Returns the font used for row and column labels.
871
872
873
874 \membersection{wxGrid::GetLabelTextColour}\label{wxgridgetlabeltextcolour}
875
876 \func{wxColour}{GetLabelTextColour}{\void}
877
878 Returns the colour used for row and column label text.
879
880
881
882 \membersection{wxGrid::GetNumberCols}\label{wxgridgetnumbercols}
883
884 \func{int}{GetNumberCols}{\void}
885
886 Returns the total number of grid columns (actually the number of columns in the underlying grid
887 table).
888
889
890
891 \membersection{wxGrid::GetNumberRows}\label{wxgridgetnumberrows}
892
893 \func{int}{GetNumberRows}{\void}
894
895 Returns the total number of grid rows (actually the number of rows in the underlying grid table).
896
897
898
899 \membersection{wxGrid::GetOrCreateCellAttr}\label{wxgridgetorcreatecellattr}
900
901 \constfunc{wxGridCellAttr*}{GetOrCreateCellAttr}{\param{int }{row}, \param{int }{col}}
902
903
904
905 \membersection{wxGrid::GetRowMinimalAcceptableHeight}\label{wxgridgetrowminimalacceptableheight}
906
907 \func{int}{GetRowMinimalAcceptableHeight}{}
908
909 This returns the value of the lowest row width that can be handled correctly. See
910 member \helpref{SetRowMinimalAcceptableHeight}{wxgridsetrowminimalacceptableheight} for details.
911
912
913
914 \membersection{wxGrid::GetRowMinimalHeight}\label{wxgridgetrowminimalheight}
915
916 \constfunc{int}{GetRowMinimalHeight}{\param{int }{col}}
917
918
919
920 \membersection{wxGrid::GetRowLabelAlignment}\label{wxgridgetrowlabelalignment}
921
922 \func{void}{GetRowLabelAlignment}{\param{int* }{horiz}, \param{int* }{vert}}
923
924 Sets the arguments to the current row label alignment values.
925
926 Horizontal alignment will be one of wxLEFT, wxCENTRE or wxRIGHT. \\
927 Vertical alignment will be one of wxTOP, wxCENTRE or wxBOTTOM.
928
929 \perlnote{This method takes no parameters and
930 returns a 2-element list {\tt ( horiz, vert )}.}
931
932
933
934 \membersection{wxGrid::GetRowLabelSize}\label{wxgridgetrowlabelsize}
935
936 \func{int}{GetRowLabelSize}{\void}
937
938 Returns the current width of the row labels.
939
940
941
942 \membersection{wxGrid::GetRowLabelValue}\label{wxgridgetrowlabelvalue}
943
944 \func{wxString}{GetRowLabelValue}{\param{int }{row}}
945
946 Returns the specified row label. The default grid table class provides numeric row labels.
947 If you are using a custom grid table you can override
948 \helpref{wxGridTableBase::GetRowLabelValue}{wxgridtablebasegetcollabelvalue} to provide
949 your own labels.
950
951
952
953 \membersection{wxGrid::GetRowSize}\label{wxgridgetrowsize}
954
955 \func{int}{GetRowSize}{\param{int }{row}}
956
957 Returns the height of the specified row.
958
959
960
961 \membersection{wxGrid::GetScrollLineX}\label{wxgridgetscrolllinex}
962
963 \constfunc{int}{GetScrollLineX}{\void}
964
965 Returns the number of pixels per horizontal scroll increment. The default is 15.
966
967 \wxheading{See also}
968
969 \helpref{wxGrid::GetScrollLineY}{wxgridgetscrollliney},\rtfsp
970 \helpref{wxGrid::SetScrollLineX}{wxgridsetscrolllinex},\rtfsp
971 \helpref{wxGrid::SetScrollLineY}{wxgridsetscrollliney}
972
973
974
975 \membersection{wxGrid::GetScrollLineY}\label{wxgridgetscrollliney}
976
977 \constfunc{int}{GetScrollLineY}{\void}
978
979 Returns the number of pixels per vertical scroll increment. The default is 15.
980
981 \wxheading{See also}
982
983 \helpref{wxGrid::GetScrollLineX}{wxgridgetscrolllinex},\rtfsp
984 \helpref{wxGrid::SetScrollLineX}{wxgridsetscrolllinex},\rtfsp
985 \helpref{wxGrid::SetScrollLineY}{wxgridsetscrollliney}
986
987
988
989 \membersection{wxGrid::GetSelectionMode}\label{wxgridgetselectionmode}
990
991 \constfunc{wxGrid::wxGridSelectionModes}{GetSelectionMode}{\void}
992
993 Returns the current selection mode, see \helpref{wxGrid::SetSelectionMode}{wxgridsetselectionmode}.
994
995
996
997 \membersection{wxGrid::GetSelectedCells}\label{wxgridgetselectedcells}
998
999 \constfunc{wxGridCellCoordsArray}{GetSelectedCells}{\void}
1000
1001 Returns an array of singly selected cells.
1002
1003
1004
1005 \membersection{wxGrid::GetSelectedCols}\label{wxgridgetselectedcols}
1006
1007 \constfunc{wxArrayInt}{GetSelectedCols}{\void}
1008
1009 Returns an array of selected cols.
1010
1011
1012
1013 \membersection{wxGrid::GetSelectedRows}\label{wxgridgetselectedrows}
1014
1015 \constfunc{wxArrayInt}{GetSelectedRows}{\void}
1016
1017 Returns an array of selected rows.
1018
1019
1020
1021 \membersection{wxGrid::GetSelectionBackground}\label{wxgridgetselectionbackground}
1022
1023 \constfunc{wxColour}{GetSelectionBackground}{\void}
1024
1025 Access or update the selection fore/back colours
1026
1027
1028
1029 \membersection{wxGrid::GetSelectionBlockTopLeft}\label{wxgridgetselectionblocktopleft}
1030
1031 \constfunc{wxGridCellCoordsArray}{GetSelectionBlockTopLeft}{\void}
1032
1033 Returns an array of the top left corners of blocks of selected cells,
1034 see \helpref{wxGrid::GetSelectionBlockBottomRight}{wxgridgetselectionblockbottomright}.
1035
1036
1037
1038 \membersection{wxGrid::GetSelectionBlockBottomRight}\label{wxgridgetselectionblockbottomright}
1039
1040 \constfunc{wxGridCellCoordsArray}{GetSelectionBlockBottomRight}{\void}
1041
1042 Returns an array of the bottom right corners of blocks of selected cells,
1043 see \helpref{wxGrid::GetSelectionBlockTopLeft}{wxgridgetselectionblocktopleft}.
1044
1045
1046
1047 \membersection{wxGrid::GetSelectionForeground}\label{wxgridgetselectionforeground}
1048
1049 \constfunc{wxColour}{GetSelectionForeground}{\void}
1050
1051
1052
1053 \membersection{wxGrid::GetTable}\label{wxgridgettable}
1054
1055 \constfunc{wxGridTableBase *}{GetTable}{\void}
1056
1057 Returns a base pointer to the current table object.
1058
1059
1060
1061 \membersection{wxGrid::GetViewWidth}\label{wxgridgetviewwidth}
1062
1063 \func{int}{GetViewWidth}{\void}
1064
1065 Returned number of whole cols visible.
1066
1067
1068
1069 \membersection{wxGrid::HideCellEditControl}\label{wxgridhidecelleditcontrol}
1070
1071 \func{void}{HideCellEditControl}{\void}
1072
1073 Hides the in-place cell edit control.
1074
1075
1076
1077 \membersection{wxGrid::InitColWidths}\label{wxgridinitcolwidths}
1078
1079 \func{void}{InitColWidths}{\void}
1080
1081 Init the m\_colWidths/Rights arrays
1082
1083
1084
1085 \membersection{wxGrid::InitRowHeights}\label{wxgridinitrowheights}
1086
1087 \func{void}{InitRowHeights}{\void}
1088
1089 NB: {\it never} access m\_row/col arrays directly because they are created
1090 on demand, {\it always} use accessor functions instead!
1091
1092 Init the m\_rowHeights/Bottoms arrays with default values.
1093
1094
1095
1096 \membersection{wxGrid::InsertCols}\label{wxgridinsertcols}
1097
1098 \func{bool}{InsertCols}{\param{int }{pos = 0}, \param{int }{numCols = 1}, \param{bool }{updateLabels = true}}
1099
1100 Inserts one or more new columns into a grid with the first new column at the
1101 specified position and returns true if successful. The updateLabels argument is not
1102 used at present.
1103
1104 The sequence of actions begins with the grid object requesting the underlying grid
1105 table to insert new columns. If this is successful the table notifies the grid and the
1106 grid updates the display. For a default grid (one where you have called
1107 \helpref{wxGrid::CreateGrid}{wxgridcreategrid}) this process is automatic. If you are
1108 using a custom grid table (specified with \helpref{wxGrid::SetTable}{wxgridsettable})
1109 then you must override
1110 \helpref{wxGridTableBase::InsertCols}{wxgridtablebaseinsertcols} in your derived
1111 table class.
1112
1113
1114
1115 \membersection{wxGrid::InsertRows}\label{wxgridinsertrows}
1116
1117 \func{bool}{InsertRows}{\param{int }{pos = 0}, \param{int }{numRows = 1}, \param{bool }{updateLabels = true}}
1118
1119 Inserts one or more new rows into a grid with the first new row at the specified
1120 position and returns true if successful. The updateLabels argument is not used at
1121 present.
1122
1123 The sequence of actions begins with the grid object requesting the underlying grid
1124 table to insert new rows. If this is successful the table notifies the grid and the
1125 grid updates the display. For a default grid (one where you have called
1126 \helpref{wxGrid::CreateGrid}{wxgridcreategrid}) this process is automatic. If you are
1127 using a custom grid table (specified with \helpref{wxGrid::SetTable}{wxgridsettable})
1128 then you must override
1129 \helpref{wxGridTableBase::InsertRows}{wxgridtablebaseinsertrows} in your derived
1130 table class.
1131
1132
1133
1134 \membersection{wxGrid::IsCellEditControlEnabled}\label{wxgridiscelleditcontrolenabled}
1135
1136 \constfunc{bool}{IsCellEditControlEnabled}{\void}
1137
1138 Returns true if the in-place edit control is currently enabled.
1139
1140
1141
1142 \membersection{wxGrid::IsCurrentCellReadOnly}\label{wxgridiscurrentcellreadonly}
1143
1144 \constfunc{bool}{IsCurrentCellReadOnly}{\void}
1145
1146 Returns true if the current cell has been set to read-only
1147 (see \helpref{wxGrid::SetReadOnly}{wxgridsetreadonly}).
1148
1149
1150
1151 \membersection{wxGrid::IsEditable}\label{wxgridiseditable}
1152
1153 \func{bool}{IsEditable}{\void}
1154
1155 Returns false if the whole grid has been set as read-only or true otherwise.
1156 See \helpref{wxGrid::EnableEditing}{wxgridenableediting} for more information about
1157 controlling the editing status of grid cells.
1158
1159
1160
1161 \membersection{wxGrid::IsInSelection}\label{wxgridisinselection}
1162
1163 \constfunc{bool}{IsInSelection}{\param{int }{row}, \param{int }{col}}
1164
1165 \constfunc{bool}{IsInSelection}{\param{const wxGridCellCoords\& }{coords}}
1166
1167 Is this cell currently selected.
1168
1169
1170
1171 \membersection{wxGrid::IsReadOnly}\label{wxgridisreadonly}
1172
1173 \constfunc{bool}{IsReadOnly}{\param{int }{row}, \param{int }{col}}
1174
1175 Returns true if the cell at the specified location can't be edited.
1176 See also \helpref{wxGrid::IsReadOnly}{wxgridisreadonly}.
1177
1178
1179
1180 \membersection{wxGrid::IsSelection}\label{wxgridisselection}
1181
1182 \func{bool}{IsSelection}{\void}
1183
1184 Returns true if there are currently rows, columns or blocks of cells selected.
1185
1186
1187
1188 \membersection{wxGrid::IsVisible}\label{wxgridisvisible}
1189
1190 \func{bool}{IsVisible}{\param{int }{row}, \param{int }{col}, \param{bool }{wholeCellVisible = true}}
1191
1192 \func{bool}{IsVisible}{\param{const wxGridCellCoords\& }{coords}, \param{bool }{wholeCellVisible = true}}
1193
1194 Returns true if a cell is either wholly visible (the default) or at least partially
1195 visible in the grid window.
1196
1197
1198
1199 \membersection{wxGrid::MakeCellVisible}\label{wxgridmakecellvisible}
1200
1201 \func{void}{MakeCellVisible}{\param{int }{row}, \param{int }{col}}
1202
1203 \func{void}{MakeCellVisible}{\param{const wxGridCellCoords\& }{coords}}
1204
1205 Brings the specified cell into the visible grid cell area with minimal scrolling. Does
1206 nothing if the cell is already visible.
1207
1208
1209
1210 \membersection{wxGrid::MoveCursorDown}\label{wxgridmovecursordown}
1211
1212 \func{bool}{MoveCursorDown}{\param{bool }{expandSelection}}
1213
1214 Moves the grid cursor down by one row. If a block of cells was previously selected it
1215 will expand if the argument is true or be cleared if the argument is false.
1216
1217 \wxheading{Keyboard}\\
1218 This function is called for Down cursor key presses or Shift+Down to expand a selection.
1219
1220
1221
1222 \membersection{wxGrid::MoveCursorLeft}\label{wxgridmovecursorleft}
1223
1224 \func{bool}{MoveCursorLeft}{\param{bool }{expandSelection}}
1225
1226 Moves the grid cursor left by one column. If a block of cells was previously selected it
1227 will expand if the argument is true or be cleared if the argument is false.
1228
1229 \wxheading{Keyboard}\\
1230 This function is called for Left cursor key presses or Shift+Left to expand a selection.
1231
1232
1233
1234 \membersection{wxGrid::MoveCursorRight}\label{wxgridmovecursorright}
1235
1236 \func{bool}{MoveCursorRight}{\param{bool }{expandSelection}}
1237
1238 Moves the grid cursor right by one column. If a block of cells was previously selected it
1239 will expand if the argument is true or be cleared if the argument is false.
1240
1241 \wxheading{Keyboard}\\
1242 This function is called for Right cursor key presses or Shift+Right to expand a selection.
1243
1244
1245
1246 \membersection{wxGrid::MoveCursorUp}\label{wxgridmovecursorup}
1247
1248 \func{bool}{MoveCursorUp}{\param{bool }{expandSelection}}
1249
1250 Moves the grid cursor up by one row. If a block of cells was previously selected it
1251 will expand if the argument is true or be cleared if the argument is false.
1252
1253 \wxheading{Keyboard}\\
1254 This function is called for Up cursor key presses or Shift+Up to expand a selection.
1255
1256
1257
1258 \membersection{wxGrid::MoveCursorDownBlock}\label{wxgridmovecursordownblock}
1259
1260 \func{bool}{MoveCursorDownBlock}{\param{bool }{expandSelection}}
1261
1262 Moves the grid cursor down in the current column such that it skips to the beginning or
1263 end of a block of non-empty cells. If a block of cells was previously selected it
1264 will expand if the argument is true or be cleared if the argument is false.
1265
1266 \wxheading{Keyboard}\\
1267 This function is called for the Ctrl+Down key combination. Shift+Ctrl+Down expands a selection.
1268
1269
1270
1271 \membersection{wxGrid::MoveCursorLeftBlock}\label{wxgridmovecursorleftblock}
1272
1273 \func{bool}{MoveCursorLeftBlock}{\param{bool }{expandSelection}}
1274
1275 Moves the grid cursor left in the current row such that it skips to the beginning or
1276 end of a block of non-empty cells. If a block of cells was previously selected it
1277 will expand if the argument is true or be cleared if the argument is false.
1278
1279 \wxheading{Keyboard}\\
1280 This function is called for the Ctrl+Left key combination. Shift+Ctrl+left expands a selection.
1281
1282
1283
1284 \membersection{wxGrid::MoveCursorRightBlock}\label{wxgridmovecursorrightblock}
1285
1286 \func{bool}{MoveCursorRightBlock}{\param{bool }{expandSelection}}
1287
1288 Moves the grid cursor right in the current row such that it skips to the beginning or
1289 end of a block of non-empty cells. If a block of cells was previously selected it
1290 will expand if the argument is true or be cleared if the argument is false.
1291
1292 \wxheading{Keyboard}\\
1293 This function is called for the Ctrl+Right key combination. Shift+Ctrl+Right expands a selection.
1294
1295
1296
1297 \membersection{wxGrid::MoveCursorUpBlock}\label{wxgridmovecursorupblock}
1298
1299 \func{bool}{MoveCursorUpBlock}{\param{bool }{expandSelection}}
1300
1301 Moves the grid cursor up in the current column such that it skips to the beginning or
1302 end of a block of non-empty cells. If a block of cells was previously selected it
1303 will expand if the argument is true or be cleared if the argument is false.
1304
1305 \wxheading{Keyboard}\\
1306 This function is called for the Ctrl+Up key combination. Shift+Ctrl+Up expands a selection.
1307
1308
1309
1310 \membersection{wxGrid::MovePageDown}\label{wxgridmovepagedown}
1311
1312 \func{bool}{MovePageDown}{\void}
1313
1314 Moves the grid cursor down by some number of rows so that the previous bottom visible row
1315 becomes the top visible row.
1316
1317 \wxheading{Keyboard}\\
1318 This function is called for PgDn keypresses.
1319
1320
1321
1322 \membersection{wxGrid::MovePageUp}\label{wxgridmovepageup}
1323
1324 \func{bool}{MovePageUp}{\void}
1325
1326 Moves the grid cursor up by some number of rows so that the previous top visible row
1327 becomes the bottom visible row.
1328
1329 \wxheading{Keyboard}\\
1330 This function is called for PgUp keypresses.
1331
1332
1333
1334 \membersection{wxGrid::RegisterDataType}\label{wxgridregisterdatatype}
1335
1336 \func{void}{RegisterDataType}{\param{const wxString\& }{typeName}, \param{wxGridCellRenderer* }{renderer}, \param{wxGridCellEditor* }{editor}}
1337
1338 Methods for a registry for mapping data types to Renderers/Editors
1339
1340
1341
1342 \membersection{wxGrid::SaveEditControlValue}\label{wxgridsaveeditcontrolvalue}
1343
1344 \func{void}{SaveEditControlValue}{\void}
1345
1346 Sets the value of the current grid cell to the current in-place edit control value.
1347 This is called automatically when the grid cursor moves from the current cell to a
1348 new cell. It is also a good idea to call this function when closing a grid since
1349 any edits to the final cell location will not be saved otherwise.
1350
1351
1352
1353 \membersection{wxGrid::SelectAll}\label{wxgridselectall}
1354
1355 \func{void}{SelectAll}{\void}
1356
1357 Selects all cells in the grid.
1358
1359
1360
1361 \membersection{wxGrid::SelectBlock}\label{wxgridselectblock}
1362
1363 \func{void}{SelectBlock}{\param{int }{topRow}, \param{int }{leftCol},
1364 \param{int }{bottomRow}, \param{int }{rightCol}, \param{bool }{addToSelected = false}}
1365
1366 \func{void}{SelectBlock}{\param{const wxGridCellCoords\& }{topLeft},
1367 \param{const wxGridCellCoords\& }{bottomRight}, \param{bool }{addToSelected = false}}
1368
1369 Selects a rectangular block of cells. If addToSelected is false then any existing selection will be
1370 deselected; if true the column will be added to the existing selection.
1371
1372
1373
1374 \membersection{wxGrid::SelectCol}\label{wxgridselectcol}
1375
1376 \func{void}{SelectCol}{\param{int }{col}, \param{bool }{addToSelected = false}}
1377
1378 Selects the specified column. If addToSelected is false then any existing selection will be
1379 deselected; if true the column will be added to the existing selection.
1380
1381
1382
1383 \membersection{wxGrid::SelectionToDeviceRect}\label{wxgridselectiontodevicerect}
1384
1385 \func{wxRect}{SelectionToDeviceRect}{\void}
1386
1387 This function returns the rectangle that encloses the selected cells
1388 in device coords and clipped to the client size of the grid window.
1389
1390
1391
1392 \membersection{wxGrid::SelectRow}\label{wxgridselectrow}
1393
1394 \func{void}{SelectRow}{\param{int }{row}, \param{bool }{addToSelected = false}}
1395
1396 Selects the specified row. If addToSelected is false then any existing selection will be
1397 deselected; if true the row will be added to the existing selection.
1398
1399
1400
1401 \membersection{wxGrid::SetCellAlignment}\label{wxgridsetcellalignment}
1402
1403 \func{void}{SetCellAlignment}{\param{int }{row}, \param{int }{col}, \param{int }{horiz}, \param{int }{vert}}
1404
1405 \func{void}{SetCellAlignment}{\param{int }{align}, \param{int }{row}, \param{int }{col}}
1406
1407 Sets the horizontal and vertical alignment for grid cell text at the specified location.
1408
1409 Horizontal alignment should be one of wxALIGN\_LEFT, wxALIGN\_CENTRE or wxALIGN\_RIGHT. \\
1410 Vertical alignment should be one of wxALIGN\_TOP, wxALIGN\_CENTRE or wxALIGN\_BOTTOM.
1411
1412
1413
1414 \membersection{wxGrid::SetCellBackgroundColour}\label{wxgridsetcellbackgroundcolour}
1415
1416 \func{void}{SetCellBackgroundColour}{\param{int }{row}, \param{int }{col}, \param{const wxColour\&}{ colour}}
1417
1418
1419
1420 \membersection{wxGrid::SetCellEditor}\label{wxgridsetcelleditor}
1421
1422 \func{void}{SetCellEditor}{\param{int }{row}, \param{int }{col}, \param{wxGridCellEditor* }{editor}}
1423
1424 Sets the editor for the grid cell at the specified location.
1425 The grid will take ownership of the pointer.
1426
1427 See \helpref{wxGridCellEditor}{wxgridcelleditor} and
1428 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
1429
1430
1431
1432 \membersection{wxGrid::SetCellFont}\label{wxgridsetcellfont}
1433
1434 \func{void}{SetCellFont}{\param{int }{row}, \param{int }{col}, \param{const wxFont\&}{ font}}
1435
1436 Sets the font for text in the grid cell at the specified location.
1437
1438
1439
1440 \membersection{wxGrid::SetCellRenderer}\label{wxgridsetcellrenderer}
1441
1442 \func{void}{SetCellRenderer}{\param{int }{row}, \param{int }{col}, \param{wxGridCellRenderer* }{renderer}}
1443
1444 Sets the renderer for the grid cell at the specified location.
1445 The grid will take ownership of the pointer.
1446
1447 See \helpref{wxGridCellRenderer}{wxgridcellrenderer} and
1448 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
1449
1450
1451
1452 \membersection{wxGrid::SetCellTextColour}\label{wxgridsetcelltextcolour}
1453
1454 \func{void}{SetCellTextColour}{\param{int }{row}, \param{int }{col}, \param{const wxColour\&}{ colour}}
1455
1456 \func{void}{SetCellTextColour}{\param{const wxColour\& }{val}, \param{int }{row}, \param{int }{col}}
1457
1458 \func{void}{SetCellTextColour}{\param{const wxColour\& }{colour}}
1459
1460 Sets the text colour for the grid cell at the specified location.
1461
1462
1463
1464 \membersection{wxGrid::SetCellValue}\label{wxgridsetcellvalue}
1465
1466 \func{void}{SetCellValue}{\param{int }{row}, \param{int }{col}, \param{const wxString\& }{s}}
1467
1468 \func{void}{SetCellValue}{\param{const wxGridCellCoords\& }{coords}, \param{const wxString\& }{s}}
1469
1470 \func{void}{SetCellValue}{\param{const wxString\& }{val}, \param{int }{row}, \param{int }{col}}
1471
1472 Sets the string value for the cell at the specified location. For simple applications where a
1473 grid object automatically uses a default grid table of string values you use this function together
1474 with \helpref{wxGrid::GetCellValue}{wxgridgetcellvalue} to access cell values.
1475
1476 For more complex applications where you have derived your own grid table class that contains
1477 various data types (e.g. numeric, boolean or user-defined custom types) then you only use this
1478 function for those cells that contain string values.
1479
1480 The last form is for backward compatibility only.
1481
1482 See \helpref{wxGridTableBase::CanSetValueAs}{wxgridtablebasecangetvalueas}
1483 and the \helpref{wxGrid overview}{gridoverview} for more information.
1484
1485
1486
1487 \membersection{wxGrid::SetColAttr}\label{wxgridsetcolattr}
1488
1489 \func{void}{SetColAttr}{\param{int }{col}, \param{wxGridCellAttr* }{attr}}
1490
1491 Sets the cell attributes for all cells in the specified column.
1492
1493 For more information about controlling grid cell attributes see the
1494 \helpref{wxGridCellAttr}{wxgridcellattr} cell attribute class and the
1495 \helpref{wxGrid classes overview}{gridoverview}.
1496
1497
1498
1499 \membersection{wxGrid::SetColFormatBool}\label{wxgridsetcolformatbool}
1500
1501 \func{void}{SetColFormatBool}{\param{int }{col}}
1502
1503 Sets the specified column to display boolean values. wxGrid displays boolean values with a checkbox.
1504
1505
1506
1507 \membersection{wxGrid::SetColFormatNumber}\label{wxgridsetcolformatnumber}
1508
1509 \func{void}{SetColFormatNumber}{\param{int }{col}}
1510
1511 Sets the specified column to display integer values.
1512
1513
1514
1515 \membersection{wxGrid::SetColFormatFloat}\label{wxgridsetcolformatfloat}
1516
1517 \func{void}{SetColFormatFloat}{\param{int }{col}, \param{int }{width = -1}, \param{int }{precision = -1}}
1518
1519 Sets the specified column to display floating point values with the given width and precision.
1520
1521
1522
1523 \membersection{wxGrid::SetColFormatCustom}\label{wxgridsetcolformatcustom}
1524
1525 \func{void}{SetColFormatCustom}{\param{int }{col}, \param{const wxString\& }{typeName}}
1526
1527 Sets the specified column to display data in a custom format.
1528 See the \helpref{wxGrid overview}{gridoverview} for more information on working
1529 with custom data types.
1530
1531
1532
1533 \membersection{wxGrid::SetColLabelAlignment}\label{wxgridsetcollabelalignment}
1534
1535 \func{void}{SetColLabelAlignment}{\param{int }{horiz}, \param{int }{vert}}
1536
1537 Sets the horizontal and vertical alignment of column label text.
1538
1539 Horizontal alignment should be one of wxALIGN\_LEFT, wxALIGN\_CENTRE or wxALIGN\_RIGHT.
1540
1541 Vertical alignment should be one of wxALIGN\_TOP, wxALIGN\_CENTRE or wxALIGN\_BOTTOM.
1542
1543
1544
1545 \membersection{wxGrid::SetColLabelSize}\label{wxgridsetcollabelsize}
1546
1547 \func{void}{SetColLabelSize}{\param{int }{height}}
1548
1549 Sets the height of the column labels.
1550
1551
1552
1553 \membersection{wxGrid::SetColLabelValue}\label{wxgridsetcollabelvalue}
1554
1555 \func{void}{SetColLabelValue}{\param{int }{col}, \param{const wxString\&}{ value}}
1556
1557 Set the value for the given column label. If you are using a derived grid table you must
1558 override \helpref{wxGridTableBase::SetColLabelValue}{wxgridtablebasesetcollabelvalue}
1559 for this to have any effect.
1560
1561
1562
1563 \membersection{wxGrid::SetColMinimalWidth}\label{wxgridsetcolminimalwidth}
1564
1565 \func{void}{SetColMinimalWidth}{\param{int }{col}, \param{int }{width}}
1566
1567 Sets the minimal width for the specified column. This should normally be called when creating the grid
1568 because it will not resize a column that is already narrower than the minimal width.
1569 The width argument must be higher than the minimimal acceptable column width, see
1570 \helpref{wxGrid::GetColMinimalAcceptableWidth}{wxgridgetcolminimalacceptablewidth}.
1571
1572
1573
1574 \membersection{wxGrid::SetColMinimalAcceptableWidth}\label{wxgridsetcolminimalacceptablewidth}
1575
1576 \func{void}{SetColMinimalAcceptableWidth}{\param{int }{width}}
1577
1578 This modifies the minimum column width that can be handled correctly. Specifying a low value here
1579 allows smaller grid cells to be dealt with correctly. Specifying a value here which is much smaller
1580 than the actual minimum size will incur a performance penalty in the functions which perform
1581 grid cell index lookup on the basis of screen coordinates.
1582 This should normally be called when creating the grid because it will not resize existing columns
1583 with sizes smaller than the value specified here.
1584
1585
1586
1587 \membersection{wxGrid::SetColPos}\label{wxgridsetcolpos}
1588
1589 \func{void}{SetColPos}{\param{int }{colID}, \param{int }{newPos}}
1590
1591 Sets the position of the specified column.
1592
1593
1594
1595 \membersection{wxGrid::SetColSize}\label{wxgridsetcolsize}
1596
1597 \func{void}{SetColSize}{\param{int }{col}, \param{int }{width}}
1598
1599 Sets the width of the specified column.
1600
1601 This function does not refresh the grid. If you are calling it outside of a BeginBatch / EndBatch
1602 block you can use \helpref{wxGrid::ForceRefresh}{wxgridforcerefresh} to see the changes.
1603
1604 Automatically sizes the column to fit its contents. If setAsMin is true the calculated width will
1605 also be set as the minimal width for the column.
1606
1607 \wxheading{Note}\\
1608 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
1609 The memory requirements for this could become prohibitive if your grid is very large.
1610
1611
1612
1613 \membersection{wxGrid::SetDefaultCellAlignment}\label{wxgridsetdefaultcellalignment}
1614
1615 \func{void}{SetDefaultCellAlignment}{\param{int }{horiz}, \param{int }{vert}}
1616
1617 Sets the default horizontal and vertical alignment for grid cell text.
1618
1619 Horizontal alignment should be one of wxALIGN\_LEFT, wxALIGN\_CENTRE or wxALIGN\_RIGHT.
1620
1621 Vertical alignment should be one of wxALIGN\_TOP, wxALIGN\_CENTRE or wxALIGN\_BOTTOM.
1622
1623
1624
1625 \membersection{wxGrid::SetDefaultCellBackgroundColour}\label{wxgridsetdefaultcellbackgroundcolour}
1626
1627 \func{void}{SetDefaultCellBackgroundColour}{\param{const wxColour\&}{ colour}}
1628
1629 Sets the default background colour for grid cells.
1630
1631
1632
1633 \membersection{wxGrid::SetDefaultCellFont}\label{wxgridsetdefaultcellfont}
1634
1635 \func{void}{SetDefaultCellFont}{\param{const wxFont\&}{ font}}
1636
1637 Sets the default font to be used for grid cell text.
1638
1639
1640
1641 \membersection{wxGrid::SetDefaultCellTextColour}\label{wxgridsetdefaultcelltextcolour}
1642
1643 \func{void}{SetDefaultCellTextColour}{\param{const wxColour\&}{ colour}}
1644
1645 Sets the current default colour for grid cell text.
1646
1647
1648
1649 \membersection{wxGrid::SetDefaultEditor}\label{wxgridsetdefaulteditor}
1650
1651 \func{void}{SetDefaultEditor}{\param{wxGridCellEditor* }{editor}}
1652
1653 Sets the default editor for grid cells. The grid will take ownership of the pointer.
1654
1655 See \helpref{wxGridCellEditor}{wxgridcelleditor} and
1656 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
1657
1658
1659
1660 \membersection{wxGrid::SetDefaultRenderer}\label{wxgridsetdefaultrenderer}
1661
1662 \func{void}{SetDefaultRenderer}{\param{wxGridCellRenderer* }{renderer}}
1663
1664 Sets the default renderer for grid cells. The grid will take ownership of the pointer.
1665
1666 See \helpref{wxGridCellRenderer}{wxgridcellrenderer} and
1667 the \helpref{wxGrid overview}{gridoverview} for more information about cell editors and renderers.
1668
1669
1670
1671 \membersection{wxGrid::SetDefaultColSize}\label{wxgridsetdefaultcolsize}
1672
1673 \func{void}{SetDefaultColSize}{\param{int }{width}, \param{bool }{resizeExistingCols = false}}
1674
1675 Sets the default width for columns in the grid. This will only affect columns subsequently added to
1676 the grid unless resizeExistingCols is true.
1677
1678
1679
1680 \membersection{wxGrid::SetDefaultRowSize}\label{wxgridsetdefaultrowsize}
1681
1682 \func{void}{SetDefaultRowSize}{\param{int }{height}, \param{bool }{resizeExistingRows = false}}
1683
1684 Sets the default height for rows in the grid. This will only affect rows subsequently added
1685 to the grid unless resizeExistingRows is true.
1686
1687
1688
1689 \membersection{wxGrid::SetGridCursor}\label{wxgridsetgridcursor}
1690
1691 \func{void}{SetGridCursor}{\param{int }{row}, \param{int }{col}}
1692
1693 Set the grid cursor to the specified cell.
1694 This function calls \helpref{wxGrid::MakeCellVisible}{wxgridmakecellvisible}.
1695
1696
1697
1698 \membersection{wxGrid::SetGridLineColour}\label{wxgridsetgridlinecolour}
1699
1700 \func{void}{SetGridLineColour}{\param{const wxColour\&}{colour}}
1701
1702 Sets the colour used to draw grid lines.
1703
1704
1705
1706 \membersection{wxGrid::SetLabelBackgroundColour}\label{wxgridsetlabelbackgroundcolour}
1707
1708 \func{void}{SetLabelBackgroundColour}{\param{const wxColour\&}{ colour}}
1709
1710 Sets the background colour for row and column labels.
1711
1712
1713
1714 \membersection{wxGrid::SetLabelFont}\label{wxgridsetlabelfont}
1715
1716 \func{void}{SetLabelFont}{\param{const wxFont\&}{ font}}
1717
1718 Sets the font for row and column labels.
1719
1720
1721
1722 \membersection{wxGrid::SetLabelTextColour}\label{wxgridsetlabeltextcolour}
1723
1724 \func{void}{SetLabelTextColour}{\param{const wxColour\&}{ colour}}
1725
1726 Sets the colour for row and column label text.
1727
1728
1729
1730 \membersection{wxGrid::SetMargins}\label{wxgridsetmargins}
1731
1732 \func{void}{SetMargins}{\param{int }{extraWidth}, \param{int }{extraHeight}}
1733
1734 A grid may occupy more space than needed for its rows/columns. This
1735 function allows to set how big this extra space is
1736
1737
1738
1739 \membersection{wxGrid::SetOrCalcColumnSizes}\label{wxgridsetorcalccolumnsizes}
1740
1741 \func{int}{SetOrCalcColumnSizes}{\param{bool }{calcOnly}, \param{bool }{setAsMin = true}}
1742
1743 Common part of AutoSizeColumn/Row() and GetBestSize()
1744
1745
1746
1747 \membersection{wxGrid::SetOrCalcRowSizes}\label{wxgridsetorcalcrowsizes}
1748
1749 \func{int}{SetOrCalcRowSizes}{\param{bool }{calcOnly}, \param{bool }{setAsMin = true}}
1750
1751
1752
1753 \membersection{wxGrid::SetReadOnly}\label{wxgridsetreadonly}
1754
1755 \func{void}{SetReadOnly}{\param{int }{row}, \param{int }{col}, \param{bool }{isReadOnly = true}}
1756
1757 Makes the cell at the specified location read-only or editable.
1758 See also \helpref{wxGrid::IsReadOnly}{wxgridisreadonly}.
1759
1760
1761
1762 \membersection{wxGrid::SetRowAttr}\label{wxgridsetrowattr}
1763
1764 \func{void}{SetRowAttr}{\param{int }{row}, \param{wxGridCellAttr* }{attr}}
1765
1766 Sets the cell attributes for all cells in the specified row.
1767 See the \helpref{wxGridCellAttr}{wxgridcellattr} class for more information
1768 about controlling cell attributes.
1769
1770
1771
1772 \membersection{wxGrid::SetRowLabelAlignment}\label{wxgridsetrowlabelalignment}
1773
1774 \func{void}{SetRowLabelAlignment}{\param{int }{horiz}, \param{int }{vert}}
1775
1776 Sets the horizontal and vertical alignment of row label text.
1777
1778 Horizontal alignment should be one of wxALIGN\_LEFT, wxALIGN\_CENTRE or wxALIGN\_RIGHT.
1779
1780 Vertical alignment should be one of wxALIGN\_TOP, wxALIGN\_CENTRE or wxALIGN\_BOTTOM.
1781
1782
1783
1784 \membersection{wxGrid::SetRowLabelSize}\label{wxgridsetrowlabelsize}
1785
1786 \func{void}{SetRowLabelSize}{\param{int }{width}}
1787
1788 Sets the width of the row labels.
1789
1790
1791
1792 \membersection{wxGrid::SetRowLabelValue}\label{wxgridsetrowlabelvalue}
1793
1794 \func{void}{SetRowLabelValue}{\param{int }{row}, \param{const wxString\&}{ value}}
1795
1796 Set the value for the given row label. If you are using a derived grid table you must
1797 override \helpref{wxGridTableBase::SetRowLabelValue}{wxgridtablebasesetrowlabelvalue}
1798 for this to have any effect.
1799
1800
1801
1802 \membersection{wxGrid::SetRowMinimalHeight}\label{wxgridsetrowminimalheight}
1803
1804 \func{void}{SetRowMinimalHeight}{\param{int }{row}, \param{int }{height}}
1805
1806 Sets the minimal height for the specified row. This should normally be called when creating the grid
1807 because it will not resize a row that is already shorter than the minimal height.
1808 The height argument must be higher than the minimimal acceptable row height, see
1809 \helpref{wxGrid::GetRowMinimalAcceptableHeight}{wxgridgetrowminimalacceptableheight}.
1810
1811
1812
1813 \membersection{wxGrid::SetRowMinimalAcceptableHeight}\label{wxgridsetrowminimalacceptableheight}
1814
1815 \func{void}{SetRowMinimalAcceptableHeight}{\param{int }{height}}
1816
1817 This modifies the minimum row width that can be handled correctly. Specifying a low value here
1818 allows smaller grid cells to be dealt with correctly. Specifying a value here which is much smaller
1819 than the actual minimum size will incur a performance penalty in the functions which perform
1820 grid cell index lookup on the basis of screen coordinates.
1821 This should normally be called when creating the grid because it will not resize existing rows
1822 with sizes smaller than the value specified here.
1823
1824
1825
1826 \membersection{wxGrid::SetRowSize}\label{wxgridsetrowsize}
1827
1828 \func{void}{SetRowSize}{\param{int }{row}, \param{int }{height}}
1829
1830 Sets the height of the specified row.
1831
1832 This function does not refresh the grid. If you are calling it outside of a BeginBatch / EndBatch
1833 block you can use \helpref{wxGrid::ForceRefresh}{wxgridforcerefresh} to see the changes.
1834
1835 Automatically sizes the column to fit its contents. If setAsMin is true the calculated width will
1836 also be set as the minimal width for the column.
1837
1838 \wxheading{Note}
1839
1840 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
1841 The memory requirements for this could become prohibitive if your grid is very large.
1842
1843
1844
1845 \membersection{wxGrid::SetScrollLineX}\label{wxgridsetscrolllinex}
1846
1847 \func{void}{SetScrollLineX}{\param{int }{x}}
1848
1849 Sets the number of pixels per horizontal scroll increment. The default is 15.
1850 Sometimes wxGrid has trouble setting the scrollbars correctly due to rounding
1851 errors: setting this to 1 can help.
1852
1853 \wxheading{See also}
1854
1855 \helpref{wxGrid::GetScrollLineX}{wxgridgetscrolllinex},\rtfsp
1856 \helpref{wxGrid::GetScrollLineY}{wxgridgetscrollliney},\rtfsp
1857 \helpref{wxGrid::SetScrollLineY}{wxgridsetscrollliney}
1858
1859
1860
1861 \membersection{wxGrid::SetScrollLineY}\label{wxgridsetscrollliney}
1862
1863 \func{void}{SetScrollLineY}{\param{int }{y}}
1864
1865 Sets the number of pixels per vertical scroll increment. The default is 15.
1866 Sometimes wxGrid has trouble setting the scrollbars correctly due to rounding
1867 errors: setting this to 1 can help.
1868
1869 \wxheading{See also}
1870
1871 \helpref{wxGrid::GetScrollLineX}{wxgridgetscrolllinex},\rtfsp
1872 \helpref{wxGrid::GetScrollLineY}{wxgridgetscrollliney},\rtfsp
1873 \helpref{wxGrid::SetScrollLineX}{wxgridsetscrolllinex}
1874
1875
1876
1877 \membersection{wxGrid::SetSelectionBackground}\label{wxgridsetselectionbackground}
1878
1879 \func{void}{SetSelectionBackground}{\param{const wxColour\& }{c}}
1880
1881
1882
1883 \membersection{wxGrid::SetSelectionForeground}\label{wxgridsetselectionforeground}
1884
1885 \func{void}{SetSelectionForeground}{\param{const wxColour\& }{c}}
1886
1887
1888
1889 \membersection{wxGrid::SetSelectionMode}\label{wxgridsetselectionmode}
1890
1891 \func{void}{SetSelectionMode}{\param{wxGrid::wxGridSelectionModes}{ selmode}}
1892
1893 Set the selection behaviour of the grid.
1894
1895 \wxheading{Parameters}
1896
1897 \docparam{wxGrid::wxGridSelectCells}{The default mode where individual cells are selected.}
1898
1899 \docparam{wxGrid::wxGridSelectRows}{Selections will consist of whole rows.}
1900
1901 \docparam{wxGrid::wxGridSelectColumns}{Selections will consist of whole columns.}
1902
1903
1904
1905 \membersection{wxGrid::SetTable}\label{wxgridsettable}
1906
1907 \func{bool}{SetTable}{\param{wxGridTableBase* }{table}, \param{bool }{takeOwnership = false}, \param{wxGrid::wxGridSelectionModes }{selmode = wxGrid::wxGridSelectCells}}
1908
1909 Passes a pointer to a custom grid table to be used by the grid. This should be called
1910 after the grid constructor and before using the grid object. If takeOwnership is set to
1911 true then the table will be deleted by the wxGrid destructor.
1912
1913 Use this function instead of \helpref{wxGrid::CreateGrid}{wxgridcreategrid} when your
1914 application involves complex or non-string data or data sets that are too large to fit
1915 wholly in memory.
1916
1917
1918
1919 \membersection{wxGrid::ShowCellEditControl}\label{wxgridshowcelleditcontrol}
1920
1921 \func{void}{ShowCellEditControl}{\void}
1922
1923 Displays the in-place cell edit control for the current cell.
1924
1925
1926
1927 \membersection{wxGrid::XToCol}\label{wxgridxtocol}
1928
1929 \func{int}{XToCol}{\param{int }{x}, \param{bool }{clipToMinMax = false}}
1930
1931 \wxheading{Parameters}
1932 \docparam{x}{The x position to evaluate.}
1933 \docparam{clipToMinMax}{If true, rather than returning wxNOT\_FOUND, it returns either the first or last column depending on whether x is too far to the left or right respectively.}
1934
1935 \wxheading{Return value}
1936 The grid column that corresponds to the logical x coordinate. Returns
1937 {\tt wxNOT\_FOUND} if there is no column at the x position.
1938
1939
1940
1941 \membersection{wxGrid::XToEdgeOfCol}\label{wxgridxtoedgeofcol}
1942
1943 \func{int}{XToEdgeOfCol}{\param{int }{x}}
1944
1945 Returns the column whose right hand edge is close to the given logical x position.
1946 If no column edge is near to this position {\tt wxNOT\_FOUND} is returned.
1947
1948
1949
1950 \membersection{wxGrid::YToEdgeOfRow}\label{wxgridytoedgeofrow}
1951
1952 \func{int}{YToEdgeOfRow}{\param{int }{y}}
1953
1954 Returns the row whose bottom edge is close to the given logical y position.
1955 If no row edge is near to this position {\tt wxNOT\_FOUND} is returned.
1956
1957
1958
1959 \membersection{wxGrid::YToRow}\label{wxgridytorow}
1960
1961 \func{int}{YToRow}{\param{int }{y}}
1962
1963 Returns the grid row that corresponds to the logical y coordinate. Returns
1964 {\tt wxNOT\_FOUND} if there is no row at the y position.
1965