1 \section{\class{wxGrid
}}\label{wxgrid
}
3 wxGrid and its related classes are used for displaying and editing tabular
4 data. They provide a rich set of features for display, editing, and
5 interacting with a variety of data sources. For simple applications, and to
6 help you get started, wxGrid is the only class you need to refer to
7 directly. It will set up default instances of the other classes and manage
8 them for you. For more complex applications you can derive your own
9 classes for custom grid views, grid data tables, cell editors and
10 renderers. The
\helpref{wxGrid classes overview
}{gridoverview
} has
11 examples of simple and more complex applications, explains the
12 relationship between the various grid classes and has a summary of the
13 keyboard shortcuts and mouse functions provided by wxGrid.
15 wxGrid has been greatly expanded and redesigned for wxWidgets
2.2
16 onwards. If you have been using the old wxGrid class you will probably
17 want to have a look at the
\helpref{wxGrid classes overview
}{gridoverview
} to see
18 how things have changed. The new grid classes are reasonably backward-compatible
19 but there are some exceptions. There are also easier ways of doing many things compared to
20 the previous implementation.
22 \wxheading{Derived from
}
24 \helpref{wxScrolledWindow
}{wxscrolledwindow
}\\
25 \helpref{wxWindow
}{wxwindow
}\\
26 \helpref{wxEvtHandler
}{wxevthandler
}\\
27 \helpref{wxObject
}{wxobject
}
29 \wxheading{Include files
}
33 \wxheading{Window styles
}
35 There are presently no specific window styles for wxGrid.
37 \wxheading{Event handling
}
41 The event handler for the following functions takes a
42 \helpref{wxGridSizeEvent
}{wxgridsizeevent
} parameter.
43 The ...
\_CMD\_... variants also take a window identifier.
46 \begin{twocollist
}\itemsep=
0pt
47 \twocolitem{{\bf EVT
\_GRID\_COL\_SIZE(func)
}}{The user resized a column by dragging it. Processes a wxEVT
\_GRID\_COL\_SIZE.
}
48 \twocolitem{{\bf EVT
\_GRID\_ROW\_SIZE(func)
}}{The user resized a row by dragging it. Processes a wxEVT
\_GRID\_ROW\_SIZE.
}
49 \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.
}
50 \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.
}
53 The event handler for the following functions takes a
54 \helpref{wxGridRangeSelectEvent
}{wxgridrangeselectevent
} parameter.
55 The ...
\_CMD\_... variant also takes a window identifier.
58 \begin{twocollist
}\itemsep=
0pt
59 \twocolitem{{\bf EVT
\_GRID\_RANGE\_SELECT(func)
}}{The user selected a group of contiguous cells. Processes a wxEVT
\_GRID\_RANGE\_SELECT.
}
60 \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.
}
63 The event handler for the following functions takes a
64 \helpref{wxGridEditorCreatedEvent
}{wxgrideditorcreatedevent
} parameter.
65 The ...
\_CMD\_... variant also takes a window identifier.
68 \begin{twocollist
}\itemsep=
0pt
69 \twocolitem{{\bf EVT
\_GRID\_EDITOR\_CREATED(func)
}}{The editor for a cell was created. Processes a wxEVT
\_GRID\_EDITOR\_CREATED.
}
70 \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.
}
75 \helpref{wxGrid overview
}{gridoverview
}
77 %%%%%%%%%%% FUNCTION GROUPS %%%%%%%%%%%%%
78 \latexignore{\rtfignore{\wxheading{Function groups
}}}
80 \membersection{Constructors and initialization
}\label{wxgridconstructors
}
82 \helpref{wxGrid
}{wxgridctor
}\\
83 \helpref{\destruct{wxGrid
}}{wxgriddtor
}\\
84 \helpref{CreateGrid
}{wxgridcreategrid
}\\
85 \helpref{SetTable
}{wxgridsettable
}
87 \membersection{Display format
}\label{wxgriddisplayformat
}
89 \membersection{Selection functions
}\label{wxgridselectionfunctions
}
91 \helpref{wxGrid::ClearSelection
}{wxgridclearselection
}\\
92 \helpref{wxGrid::IsSelection
}{wxgridisselection
}\\
93 \helpref{wxGrid::SelectAll
}{wxgridselectall
}\\
94 \helpref{wxGrid::SelectBlock
}{wxgridselectblock
}\\
95 \helpref{wxGrid::SelectCol
}{wxgridselectcol
}\\
96 \helpref{wxGrid::SelectRow
}{wxgridselectrow
}
98 %%%%%%%%% MEMBER FUNCTIONS %%%%%%%%%%
99 \helponly{\insertatlevel{2}{
105 \membersection{wxGrid::wxGrid
}\label{wxgridctor
}
107 \func{}{wxGrid
}{\void}
111 \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
}}
113 Constructor to create a grid object. Call either
\helpref{wxGrid::CreateGrid
}{wxgridcreategrid
} or
114 \helpref{wxGrid::SetTable
}{wxgridsettable
} directly after this to initialize the grid before using
117 \membersection{wxGrid::
\destruct{wxGrid
}}\label{wxgriddtor
}
119 \func{}{\destruct{wxGrid
}}{\void}
121 Destructor. This will also destroy the associated grid table unless you passed a table
122 object to the grid and specified that the grid should not take ownership of the
123 table (see
\helpref{wxGrid::SetTable
}{wxgridsettable
}).
125 \membersection{wxGrid::AppendCols
}\label{wxgridappendcols
}
127 \func{bool
}{AppendCols
}{\param{int
}{numCols =
1},
\param{bool
}{updateLabels = true
}}
129 Appends one or more new columns to the right of the grid and returns true if
130 successful. The updateLabels argument is not used at present.
132 If you are using a derived grid table class you will need to override
133 \helpref{wxGridTableBase::AppendCols
}{wxgridtablebaseappendcols
}. See
134 \helpref{wxGrid::InsertCols
}{wxgridinsertcols
} for further information.
136 \membersection{wxGrid::AppendRows
}\label{wxgridappendrows
}
138 \func{bool
}{AppendRows
}{\param{int
}{numRows =
1},
\param{bool
}{updateLabels = true
}}
140 Appends one or more new rows to the bottom of the grid and returns true if
141 successful. The updateLabels argument is not used at present.
143 If you are using a derived grid table class you will need to override
144 \helpref{wxGridTableBase::AppendRows
}{wxgridtablebaseappendrows
}. See
145 \helpref{wxGrid::InsertRows
}{wxgridinsertrows
} for further information.
147 \membersection{wxGrid::AutoSize
}\label{wxgridautosize
}
149 \func{void
}{AutoSize
}{\void}
151 Automatically sets the height and width of all rows and columns to fit their contents.
154 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
155 The memory requirements for this could become prohibitive if your grid is very large.
157 \membersection{wxGrid::AutoSizeColOrRow
}\label{wxgridautosizecolorrow
}
159 \func{void
}{AutoSizeColOrRow
}{\param{int
}{n
},
\param{bool
}{setAsMin
},
\param{bool
}{column
}}
161 Common part of AutoSizeColumn/Row() or row?
163 \membersection{wxGrid::AutoSizeColumn
}\label{wxgridautosizecolumn
}
165 \func{void
}{AutoSizeColumn
}{\param{int
}{col
},
\param{bool
}{setAsMin = true
}}
167 Automatically sizes the column to fit its contents. If setAsMin is true the calculated width will
168 also be set as the minimal width for the column.
171 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
172 The memory requirements for this could become prohibitive if your grid is very large.
174 \membersection{wxGrid::AutoSizeColumns
}\label{wxgridautosizecolumns
}
176 \func{void
}{AutoSizeColumns
}{\param{bool
}{setAsMin = true
}}
178 Automatically sizes all columns to fit their contents. If setAsMin is true the calculated widths will
179 also be set as the minimal widths for the columns.
182 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
183 The memory requirements for this could become prohibitive if your grid is very large.
185 \membersection{wxGrid::AutoSizeRow
}\label{wxgridautosizerow
}
187 \func{void
}{AutoSizeRow
}{\param{int
}{row
},
\param{bool
}{setAsMin = true
}}
189 Automatically sizes the row to fit its contents. If setAsMin is true the calculated height will
190 also be set as the minimal height for the row.
193 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
194 The memory requirements for this could become prohibitive if your grid is very large.
196 \membersection{wxGrid::AutoSizeRows
}\label{wxgridautosizerows
}
198 \func{void
}{AutoSizeRows
}{\param{bool
}{setAsMin = true
}}
200 Automatically sizes all rows to fit their contents. If setAsMin is true the calculated heights will
201 also be set as the minimal heights for the rows.
204 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
205 The memory requirements for this could become prohibitive if your grid is very large.
207 \membersection{wxGrid::BeginBatch
}\label{wxgridbeginbatch
}
209 \func{void
}{BeginBatch
}{\void}
211 Increments the grid's batch count. When the count is greater than zero repainting of
212 the grid is suppressed. Each call to BeginBatch must be matched by a later call to
213 \helpref{wxGrid::EndBatch
}{wxgridendbatch
}. Code that does a lot of grid
214 modification can be enclosed between BeginBatch and EndBatch calls to avoid
215 screen flicker. The final EndBatch will cause the grid to be repainted.
217 \membersection{wxGrid::BlockToDeviceRect
}\label{wxgridblocktodevicerect
}
219 \func{wxRect
}{BlockToDeviceRect
}{\param{const wxGridCellCoords \&
}{topLeft
},
\param{const wxGridCellCoords \&
}{bottomRight
}}
221 This function returns the rectangle that encloses the block of cells
222 limited by TopLeft and BottomRight cell in device coords and clipped
223 to the client size of the grid window.
226 \membersection{wxGrid::CanDragColSize
}\label{wxgridcandragcolsize
}
228 \func{bool
}{CanDragColSize
}{\void}
230 Returns true if columns can be resized by dragging with the mouse. Columns can be resized
231 by dragging the edges of their labels. If grid line dragging is enabled they can also be
232 resized by dragging the right edge of the column in the grid cell area
233 (see
\helpref{wxGrid::EnableDragGridSize
}{wxgridenabledraggridsize
}).
235 \membersection{wxGrid::CanDragRowSize
}\label{wxgridcandragrowsize
}
237 \func{bool
}{CanDragRowSize
}{\void}
239 Returns true if rows can be resized by dragging with the mouse. Rows can be resized
240 by dragging the edges of their labels. If grid line dragging is enabled they can also be
241 resized by dragging the lower edge of the row in the grid cell area
242 (see
\helpref{wxGrid::EnableDragGridSize
}{wxgridenabledraggridsize
}).
244 \membersection{wxGrid::CanDragGridSize
}\label{wxgridcandraggridsize
}
246 \func{bool
}{CanDragGridSize
}{\void}
248 Return true if the dragging of grid lines to resize rows and columns is enabled or false otherwise.
250 \membersection{wxGrid::CanEnableCellControl
}\label{wxgridcanenablecellcontrol
}
252 \constfunc{bool
}{CanEnableCellControl
}{\void}
254 Returns true if the in-place edit control for the current grid cell can be used and
255 false otherwise (e.g. if the current cell is read-only).
257 \membersection{wxGrid::CanHaveAttributes
}\label{wxgridcanhaveattributes
}
259 \func{bool
}{CanHaveAttributes
}{\void}
261 Do we have some place to store attributes in?
263 \membersection{wxGrid::CellToRect
}\label{wxgridcelltorect
}
265 \func{wxRect
}{CellToRect
}{\param{int
}{row
},
\param{int
}{col
}}
267 \func{wxRect
}{CellToRect
}{\param{const wxGridCellCoords\&
}{coords
}}
269 Return the rectangle corresponding to the grid cell's size and position in logical
272 \membersection{wxGrid::ClearGrid
}\label{wxgridcleargrid
}
274 \func{void
}{ClearGrid
}{\void}
276 Clears all data in the underlying grid table and repaints the grid. The table is not deleted by
277 this function. If you are using a derived table class then you need to override
278 \helpref{wxGridTableBase::Clear
}{wxgridtablebaseclear
} for this function to have any effect.
280 \membersection{wxGrid::ClearSelection
}\label{wxgridclearselection
}
282 \func{void
}{ClearSelection
}{\void}
284 Deselects all cells that are currently selected.
286 \membersection{wxGrid::CreateGrid
}\label{wxgridcreategrid
}
288 \func{bool
}{CreateGrid
}{\param{int
}{numRows
},
\param{int
}{numCols
},
\param{wxGrid::wxGridSelectionModes
}{selmode = wxGrid::wxGridSelectCells
}}
290 Creates a grid with the specified initial number of rows and columns.
291 Call this directly after the grid constructor. When you use this
292 function wxGrid will create and manage a simple table of string values
293 for you. All of the grid data will be stored in memory.
295 For applications with more complex data types or relationships, or for
296 dealing with very large datasets, you should derive your own grid table
297 class and pass a table object to the grid with
\helpref{wxGrid::SetTable
}{wxgridsettable
}.
299 \membersection{wxGrid::DeleteCols
}\label{wxgriddeletecols
}
301 \func{bool
}{DeleteCols
}{\param{int
}{pos =
0},
\param{int
}{numCols =
1},
\param{bool
}{updateLabels = true
}}
303 Deletes one or more columns from a grid starting at the specified position and returns
304 true if successful. The updateLabels argument is not used at present.
306 If you are using a derived grid table class you will need to override
307 \helpref{wxGridTableBase::DeleteCols
}{wxgridtablebasedeletecols
}. See
308 \helpref{wxGrid::InsertCols
}{wxgridinsertcols
} for further information.
310 \membersection{wxGrid::DeleteRows
}\label{wxgriddeleterows
}
312 \func{bool
}{DeleteRows
}{\param{int
}{pos =
0},
\param{int
}{numRows =
1},
\param{bool
}{updateLabels = true
}}
314 Deletes one or more rows from a grid starting at the specified position and returns
315 true if successful. The updateLabels argument is not used at present.
317 If you are using a derived grid table class you will need to override
318 \helpref{wxGridTableBase::DeleteRows
}{wxgridtablebasedeleterows
}. See
319 \helpref{wxGrid::InsertRows
}{wxgridinsertrows
} for further information.
321 \membersection{wxGrid::DisableCellEditControl
}\label{wxgriddisablecelleditcontrol
}
323 \func{void
}{DisableCellEditControl
}{\void}
325 Disables in-place editing of grid cells.
326 Equivalent to calling EnableCellEditControl(false).
328 \membersection{wxGrid::DisableDragColSize
}\label{wxgriddisabledragcolsize
}
330 \func{void
}{DisableDragColSize
}{\void}
332 Disables column sizing by dragging with the mouse. Equivalent to passing false to
333 \helpref{wxGrid::EnableDragColSize
}{wxgridenabledragcolsize
}.
335 \membersection{wxGrid::DisableDragGridSize
}\label{wxgriddisabledraggridsize
}
337 \func{void
}{DisableDragGridSize
}{\void}
339 Disable mouse dragging of grid lines to resize rows and columns. Equivalent to passing
340 false to
\helpref{wxGrid::EnableDragGridSize
}{wxgridenabledraggridsize
}
342 \membersection{wxGrid::DisableDragRowSize
}\label{wxgriddisabledragrowsize
}
344 \func{void
}{DisableDragRowSize
}{\void}
346 Disables row sizing by dragging with the mouse. Equivalent to passing false to
347 \helpref{wxGrid::EnableDragRowSize
}{wxgridenabledragrowsize
}.
349 \membersection{wxGrid::DoGetBestSize
}\label{wxgriddogetbestsize
}
351 \constfunc{wxSize
}{DoGetBestSize
}{\void}
353 \membersection{wxGrid::EnableCellEditControl
}\label{wxgridenablecelleditcontrol
}
355 \func{void
}{EnableCellEditControl
}{\param{bool
}{enable = true
}}
357 Enables or disables in-place editing of grid cell data. The grid will issue either a
358 wxEVT
\_GRID\_EDITOR\_SHOWN or wxEVT
\_GRID\_EDITOR\_HIDDEN event.
360 \membersection{wxGrid::EnableDragColSize
}\label{wxgridenabledragcolsize
}
362 \func{void
}{EnableDragColSize
}{\param{bool
}{enable = true
}}
364 Enables or disables column sizing by dragging with the mouse.
366 \membersection{wxGrid::EnableDragGridSize
}\label{wxgridenabledraggridsize
}
368 \func{void
}{EnableDragGridSize
}{\param{bool
}{enable = true
}}
370 Enables or disables row and column resizing by dragging gridlines with the mouse.
372 \membersection{wxGrid::EnableDragRowSize
}\label{wxgridenabledragrowsize
}
374 \func{void
}{EnableDragRowSize
}{\param{bool
}{enable = true
}}
376 Enables or disables row sizing by dragging with the mouse.
378 \membersection{wxGrid::EnableEditing
}\label{wxgridenableediting
}
380 \func{void
}{EnableEditing
}{\param{bool
}{edit
}}
382 If the edit argument is false this function sets the whole grid as read-only. If the
383 argument is true the grid is set to the default state where cells may be editable. In the
384 default state you can set single grid cells and whole rows and columns to be editable or
386 \helpref{wxGridCellAttribute::SetReadOnly
}{wxgridcellattrsetreadonly
}. For single
387 cells you can also use the shortcut function
388 \helpref{wxGrid::SetReadOnly
}{wxgridsetreadonly
}.
390 For more information about controlling grid cell attributes see the
391 \helpref{wxGridCellAttr
}{wxgridcellattr
} cell attribute class and the
392 \helpref{wxGrid classes overview
}{gridoverview
}.
394 \membersection{wxGrid::EnableGridLines
}\label{wxgridenablegridlines
}
396 \func{void
}{EnableGridLines
}{\param{bool
}{enable = true
}}
398 Turns the drawing of grid lines on or off.
400 \membersection{wxGrid::EndBatch
}\label{wxgridendbatch
}
402 \func{void
}{EndBatch
}{\void}
404 Decrements the grid's batch count. When the count is greater than zero repainting of
405 the grid is suppressed. Each previous call to
406 \helpref{wxGrid::BeginBatch
}{wxgridbeginbatch
} must be matched by a later call to
407 EndBatch. Code that does a lot of grid modification can be enclosed between
408 BeginBatch and EndBatch calls to avoid screen flicker. The final EndBatch will
409 cause the grid to be repainted.
411 \membersection{wxGrid::Fit
}\label{wxgridfit
}
413 \func{void
}{Fit
}{\void}
415 Overridden wxWindow method.
417 \membersection{wxGrid::ForceRefresh
}\label{wxgridforcerefresh
}
419 \func{void
}{ForceRefresh
}{\void}
421 Causes immediate repainting of the grid. Use this instead of the usual wxWindow::Refresh.
423 \membersection{wxGrid::GetBatchCount
}\label{wxgridgetbatchcount
}
425 \func{int
}{GetBatchCount
}{\void}
427 Returns the number of times that
\helpref{wxGrid::BeginBatch
}{wxgridbeginbatch
} has been called
428 without (yet) matching calls to
\helpref{wxGrid::EndBatch
}{wxgridendbatch
}. While
429 the grid's batch count is greater than zero the display will not be updated.
431 \membersection{wxGrid::GetCellAlignment
}\label{wxgridgetcellalignment
}
433 \func{void
}{GetCellAlignment
}{\param{int
}{row
},
\param{int
}{col
},
\param{int*
}{horiz
},
\param{int*
}{vert
}}
435 Sets the arguments to the horizontal and vertical text alignment values for the
436 grid cell at the specified location.
438 Horizontal alignment will be one of wxALIGN
\_LEFT, wxALIGN
\_CENTRE or wxALIGN
\_RIGHT. \\
439 Vertical alignment will be one of wxALIGN
\_TOP, wxALIGN
\_CENTRE or wxALIGN
\_BOTTOM.
441 \perlnote{This method only takes the parameters
{\tt row
} and
{\tt col
} and
442 returns a
2-element list
{\tt ( horiz, vert )
}.
}
444 \membersection{wxGrid::GetCellBackgroundColour
}\label{wxgridgetcellbackgroundcolour
}
446 \func{wxColour
}{GetCellBackgroundColour
}{\param{int
}{row
},
\param{int
}{col
}}
448 Returns the background colour of the cell at the specified location.
450 \membersection{wxGrid::GetCellEditor
}\label{wxgridgetcelleditor
}
452 \func{wxGridCellEditor*
}{GetCellEditor
}{\param{int
}{row
},
\param{int
}{col
}}
454 Returns a pointer to the editor for the cell at the specified location.
456 See
\helpref{wxGridCellEditor
}{wxgridcelleditor
} and
457 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
459 \membersection{wxGrid::GetCellFont
}\label{wxgridgetcellfont
}
461 \func{wxFont
}{GetCellFont
}{\param{int
}{row
},
\param{int
}{col
}}
463 Returns the font for text in the grid cell at the specified location.
465 \membersection{wxGrid::GetCellRenderer
}\label{wxgridgetcellrenderer
}
467 \func{wxGridCellRenderer*
}{GetCellRenderer
}{\param{int
}{row
},
\param{int
}{col
}}
469 Returns a pointer to the renderer for the grid cell at the specified location.
471 See
\helpref{wxGridCellRenderer
}{wxgridcellrenderer
} and
472 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
474 \membersection{wxGrid::GetCellTextColour
}\label{wxgridgetcelltextcolour
}
476 \func{wxColour
}{GetCellTextColour
}{\param{int
}{row
},
\param{int
}{col
}}
478 Returns the text colour for the grid cell at the specified location.
480 \membersection{wxGrid::GetCellValue
}\label{wxgridgetcellvalue
}
482 \func{wxString
}{GetCellValue
}{\param{int
}{row
},
\param{int
}{col
}}
484 \func{wxString
}{GetCellValue
}{\param{const wxGridCellCoords\&
}{coords
}}
486 Returns the string contained in the cell at the specified location. For simple applications where a
487 grid object automatically uses a default grid table of string values you use this function together
488 with
\helpref{wxGrid::SetCellValue
}{wxgridsetcellvalue
} to access cell values.
490 For more complex applications where you have derived your own grid table class that contains
491 various data types (e.g. numeric, boolean or user-defined custom types) then you only use this
492 function for those cells that contain string values.
494 See
\helpref{wxGridTableBase::CanGetValueAs
}{wxgridtablebasecangetvalueas
}
495 and the
\helpref{wxGrid overview
}{gridoverview
} for more information.
498 \membersection{wxGrid::GetColLeft
}\label{wxgridgetcolleft
}
500 \constfunc{int
}{GetColLeft
}{\param{int
}{col
}}
502 \membersection{wxGrid::GetColLabelAlignment
}\label{wxgridgetcollabelalignment
}
504 \func{void
}{GetColLabelAlignment
}{\param{int*
}{horiz
},
\param{int*
}{vert
}}
506 Sets the arguments to the current column label alignment values.
508 Horizontal alignment will be one of wxALIGN
\_LEFT, wxALIGN
\_CENTRE or wxALIGN
\_RIGHT.\\
509 Vertical alignment will be one of wxALIGN
\_TOP, wxALIGN
\_CENTRE or wxALIGN
\_BOTTOM.
511 \perlnote{This method takes no parameters and
512 returns a
2-element list
{\tt ( horiz, vert )
}.
}
514 \membersection{wxGrid::GetColLabelSize
}\label{wxgridgetcollabelsize
}
516 \func{int
}{GetColLabelSize
}{\void}
518 Returns the current height of the column labels.
520 \membersection{wxGrid::GetColLabelValue
}\label{wxgridgetcollabelvalue
}
522 \func{wxString
}{GetColLabelValue
}{\param{int
}{col
}}
524 Returns the specified column label. The default grid table class provides column labels of
525 the form A,B...Z,AA,AB...ZZ,AAA... If you are using a custom grid table you can override
526 \helpref{wxGridTableBase::GetColLabelValue
}{wxgridtablebasegetcollabelvalue
} to provide
529 \membersection{wxGrid::GetColMinimalAcceptableWidth
}\label{wxgridgetcolminimalacceptablewidth
}
531 \func{int
}{GetColMinimalAcceptableWidth
}{}
533 This returns the value of the lowest column width that can be handled correctly. See
534 member
\helpref{SetColMinimalAcceptableWidth
}{wxgridsetcolminimalacceptablewidth
} for details.
536 \membersection{wxGrid::GetColMinimalWidth
}\label{wxgridgetcolminimalwidth
}
538 \constfunc{int
}{GetColMinimalWidth
}{\param{int
}{col
}}
540 Get the minimal width of the given column/row.
543 \membersection{wxGrid::GetColRight
}\label{wxgridgetcolright
}
545 \constfunc{int
}{GetColRight
}{\param{int
}{col
}}
547 \membersection{wxGrid::GetColSize
}\label{wxgridgetcolsize
}
549 \func{int
}{GetColSize
}{\param{int
}{col
}}
551 Returns the width of the specified column.
553 \membersection{wxGrid::GetColWidth
}\label{wxgridgetcolwidth
}
555 \constfunc{int
}{GetColWidth
}{\param{int
}{col
}}
557 Get the col/row coords
559 \membersection{wxGrid::GetDefaultCellAlignment
}\label{wxgridgetdefaultcellalignment
}
561 \func{void
}{GetDefaultCellAlignment
}{\param{int*
}{horiz
},
\param{int*
}{vert
}}
563 Sets the arguments to the current default horizontal and vertical text alignment
566 Horizontal alignment will be one of wxALIGN
\_LEFT, wxALIGN
\_CENTRE or wxALIGN
\_RIGHT. \\
567 Vertical alignment will be one of wxALIGN
\_TOP, wxALIGN
\_CENTRE or wxALIGN
\_BOTTOM.
569 \membersection{wxGrid::GetDefaultCellBackgroundColour
}\label{wxgridgetdefaultcellbackgroundcolour
}
571 \func{wxColour
}{GetDefaultCellBackgroundColour
}{\void}
573 Returns the current default background colour for grid cells.
575 \membersection{wxGrid::GetDefaultCellFont
}\label{wxgridgetdefaultcellfont
}
577 \func{wxFont
}{GetDefaultCellFont
}{\void}
579 Returns the current default font for grid cell text.
581 \membersection{wxGrid::GetDefaultCellTextColour
}\label{wxgridgetdefaultcelltextcolour
}
583 \func{wxColour
}{GetDefaultCellTextColour
}{\void}
585 Returns the current default colour for grid cell text.
587 \membersection{wxGrid::GetDefaultColLabelSize
}\label{wxgridgetdefaultcollabelsize
}
589 \func{int
}{GetDefaultColLabelSize
}{\void}
591 Returns the default height for column labels.
593 \membersection{wxGrid::GetDefaultColSize
}\label{wxgridgetdefaultcolsize
}
595 \func{int
}{GetDefaultColSize
}{\void}
597 Returns the current default width for grid columns.
599 \membersection{wxGrid::GetDefaultEditor
}\label{wxgridgetdefaulteditor
}
601 \constfunc{wxGridCellEditor*
}{GetDefaultEditor
}{\void}
603 Returns a pointer to the current default grid cell editor.
605 See
\helpref{wxGridCellEditor
}{wxgridcelleditor
} and
606 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
608 \membersection{wxGrid::GetDefaultEditorForCell
}\label{wxgridgetdefaulteditorforcell
}
610 \constfunc{wxGridCellEditor*
}{GetDefaultEditorForCell
}{\param{int
}{row
},
\param{int
}{col
}}
612 \constfunc{wxGridCellEditor*
}{GetDefaultEditorForCell
}{\param{const wxGridCellCoords\&
}{c
}}
615 \membersection{wxGrid::GetDefaultEditorForType
}\label{wxgridgetdefaulteditorfortype
}
617 \constfunc{wxGridCellEditor*
}{GetDefaultEditorForType
}{\param{const wxString\&
}{typeName
}}
620 \membersection{wxGrid::GetDefaultRenderer
}\label{wxgridgetdefaultrenderer
}
622 \constfunc{wxGridCellRenderer*
}{GetDefaultRenderer
}{\void}
624 Returns a pointer to the current default grid cell renderer.
626 See
\helpref{wxGridCellRenderer
}{wxgridcellrenderer
} and
627 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
629 \membersection{wxGrid::GetDefaultRendererForCell
}\label{wxgridgetdefaultrendererforcell
}
631 \constfunc{wxGridCellRenderer*
}{GetDefaultRendererForCell
}{\param{int
}{row
},
\param{int
}{col
}}
633 \membersection{wxGrid::GetDefaultRendererForType
}\label{wxgridgetdefaultrendererfortype
}
635 \constfunc{wxGridCellRenderer*
}{GetDefaultRendererForType
}{\param{const wxString\&
}{typeName
}}
639 \membersection{wxGrid::GetDefaultRowLabelSize
}\label{wxgridgetdefaultrowlabelsize
}
641 \func{int
}{GetDefaultRowLabelSize
}{\void}
643 Returns the default width for the row labels.
645 \membersection{wxGrid::GetDefaultRowSize
}\label{wxgridgetdefaultrowsize
}
647 \func{int
}{GetDefaultRowSize
}{\void}
649 Returns the current default height for grid rows.
651 \membersection{wxGrid::GetGridCursorCol
}\label{wxgridgetgridcursorcol
}
653 \func{int
}{GetGridCursorCol
}{\void}
655 Returns the current grid cell column position.
657 \membersection{wxGrid::GetGridCursorRow
}\label{wxgridgetgridcursorrow
}
659 \func{int
}{GetGridCursorRow
}{\void}
661 Returns the current grid cell row position.
663 \membersection{wxGrid::GetGridLineColour
}\label{wxgridgetgridlinecolour
}
665 \func{wxColour
}{GetGridLineColour
}{\void}
667 Returns the colour used for grid lines.
669 \membersection{wxGrid::GridLinesEnabled
}\label{wxgridgridlinesenabled
}
671 \func{bool
}{GridLinesEnabled
}{\void}
673 Returns true if drawing of grid lines is turned on, false otherwise.
675 \membersection{wxGrid::GetLabelBackgroundColour
}\label{wxgridgetlabelbackgroundcolour
}
677 \func{wxColour
}{GetLabelBackgroundColour
}{\void}
679 Returns the colour used for the background of row and column labels.
681 \membersection{wxGrid::GetLabelFont
}\label{wxgridgetlabelfont
}
683 \func{wxFont
}{GetLabelFont
}{\void}
685 Returns the font used for row and column labels.
687 \membersection{wxGrid::GetLabelTextColour
}\label{wxgridgetlabeltextcolour
}
689 \func{wxColour
}{GetLabelTextColour
}{\void}
691 Returns the colour used for row and column label text.
693 \membersection{wxGrid::GetNumberCols
}\label{wxgridgetnumbercols
}
695 \func{int
}{GetNumberCols
}{\void}
697 Returns the total number of grid columns (actually the number of columns in the underlying grid
700 \membersection{wxGrid::GetNumberRows
}\label{wxgridgetnumberrows
}
702 \func{int
}{GetNumberRows
}{\void}
704 Returns the total number of grid rows (actually the number of rows in the underlying grid table).
706 \membersection{wxGrid::GetOrCreateCellAttr
}\label{wxgridgetorcreatecellattr
}
708 \constfunc{wxGridCellAttr*
}{GetOrCreateCellAttr
}{\param{int
}{row
},
\param{int
}{col
}}
710 \membersection{wxGrid::GetRowHeight
}\label{wxgridgetrowheight
}
712 \constfunc{int
}{GetRowHeight
}{\param{int
}{row
}}
714 This function must be public for compatibility.
716 \membersection{wxGrid::GetRowTop
}\label{wxgridgetrowtop
}
718 \constfunc{int
}{GetRowTop
}{\param{int
}{row
}}
721 \membersection{wxGrid::GetRowBottom
}\label{wxgridgetrowbottom
}
723 \constfunc{int
}{GetRowBottom
}{\param{int
}{row
}}
725 \membersection{wxGrid::GetRowMinimalAcceptableHeight
}\label{wxgridgetrowminimalacceptableheight
}
727 \func{int
}{GetRowMinimalAcceptableHeight
}{}
729 This returns the value of the lowest row width that can be handled correctly. See
730 member
\helpref{SetRowMinimalAcceptableHeight
}{wxgridsetrowminimalacceptableheight
} for details.
733 \membersection{wxGrid::GetRowMinimalHeight
}\label{wxgridgetrowminimalheight
}
735 \constfunc{int
}{GetRowMinimalHeight
}{\param{int
}{col
}}
737 \membersection{wxGrid::GetRowLabelAlignment
}\label{wxgridgetrowlabelalignment
}
739 \func{void
}{GetRowLabelAlignment
}{\param{int*
}{horiz
},
\param{int*
}{vert
}}
741 Sets the arguments to the current row label alignment values.
743 Horizontal alignment will be one of wxLEFT, wxCENTRE or wxRIGHT. \\
744 Vertical alignment will be one of wxTOP, wxCENTRE or wxBOTTOM.
746 \perlnote{This method takes no parameters and
747 returns a
2-element list
{\tt ( horiz, vert )
}.
}
749 \membersection{wxGrid::GetRowLabelSize
}\label{wxgridgetrowlabelsize
}
751 \func{int
}{GetRowLabelSize
}{\void}
753 Returns the current width of the row labels.
755 \membersection{wxGrid::GetRowLabelValue
}\label{wxgridgetrowlabelvalue
}
757 \func{wxString
}{GetRowLabelValue
}{\param{int
}{row
}}
759 Returns the specified row label. The default grid table class provides numeric row labels.
760 If you are using a custom grid table you can override
761 \helpref{wxGridTableBase::GetRowLabelValue
}{wxgridtablebasegetcollabelvalue
} to provide
764 \membersection{wxGrid::GetRowSize
}\label{wxgridgetrowsize
}
766 \func{int
}{GetRowSize
}{\param{int
}{row
}}
768 Returns the height of the specified row.
770 \membersection{wxGrid::GetScrollLinesX
}\label{wxgridgetscrolllinesx
}
772 \constfunc{int
}{GetScrollLinesX
}{\void}
774 Returns the number of pixels per horizontal scroll increment. The default is
15.
776 \membersection{wxGrid::GetScrollLinesY
}\label{wxgridgetscrolllinesy
}
778 \constfunc{int
}{GetScrollLinesY
}{\void}
780 Returns the number of pixels per vertical scroll increment. The default is
15.
782 \membersection{wxGrid::GetSelectionMode
}\label{wxgridgetselectionmode
}
784 \constfunc{wxGrid::wxGridSelectionModes
}{GetSelectionMode
}{\void}
786 Returns the current selection mode, see
\helpref{wxGrid::SetSelectionMode
}{wxgridsetselectionmode
}.
788 \membersection{wxGrid::GetSelectedCells
}\label{wxgridgetselectedcells
}
790 \constfunc{wxGridCellCoordsArray
}{GetSelectedCells
}{\void}
792 Returns an array of singly selected cells.
794 \membersection{wxGrid::GetSelectedCols
}\label{wxgridgetselectedcols
}
796 \constfunc{wxArrayInt
}{GetSelectedCols
}{\void}
798 Returns an array of selected cols.
800 \membersection{wxGrid::GetSelectedRows
}\label{wxgridgetselectedrows
}
802 \constfunc{wxArrayInt
}{GetSelectedRows
}{\void}
804 Returns an array of selected rows.
806 \membersection{wxGrid::GetSelectionBackground
}\label{wxgridgetselectionbackground
}
808 \constfunc{wxColour
}{GetSelectionBackground
}{\void}
810 Access or update the selection fore/back colours
813 \membersection{wxGrid::GetSelectionBlockTopLeft
}\label{wxgridgetselectionblocktopleft
}
815 \constfunc{wxGridCellCoordsArray
}{GetSelectionBlockTopLeft
}{\void}
817 Returns an array of the top left corners of blocks of selected cells,
818 see
\helpref{wxGrid::GetSelectionBlockBottomRight
}{wxgridgetselectionblockbottomright
}.
820 \membersection{wxGrid::GetSelectionBlockBottomRight
}\label{wxgridgetselectionblockbottomright
}
822 \constfunc{wxGridCellCoordsArray
}{GetSelectionBlockBottomRight
}{\void}
824 Returns an array of the bottom right corners of blocks of selected cells,
825 see
\helpref{wxGrid::GetSelectionBlockTopLeft
}{wxgridgetselectionblocktopleft
}.
827 \membersection{wxGrid::GetSelectionForeground
}\label{wxgridgetselectionforeground
}
829 \constfunc{wxColour
}{GetSelectionForeground
}{\void}
832 \membersection{wxGrid::GetTable
}\label{wxgridgettable
}
834 \constfunc{wxGridTableBase *
}{GetTable
}{\void}
836 Returns a base pointer to the current table object.
838 \membersection{wxGrid::GetViewWidth
}\label{wxgridgetviewwidth
}
840 \func{int
}{GetViewWidth
}{\void}
842 Returned number of whole cols visible.
844 \membersection{wxGrid::HideCellEditControl
}\label{wxgridhidecelleditcontrol
}
846 \func{void
}{HideCellEditControl
}{\void}
848 Hides the in-place cell edit control.
850 \membersection{wxGrid::InitColWidths
}\label{wxgridinitcolwidths
}
852 \func{void
}{InitColWidths
}{\void}
854 Init the m
\_colWidths/Rights arrays
856 \membersection{wxGrid::InitRowHeights
}\label{wxgridinitrowheights
}
858 \func{void
}{InitRowHeights
}{\void}
860 NB:
{\it never
} access m
\_row/col arrays directly because they are created
861 on demand,
{\it always
} use accessor functions instead!
863 Init the m
\_rowHeights/Bottoms arrays with default values.
865 \membersection{wxGrid::InsertCols
}\label{wxgridinsertcols
}
867 \func{bool
}{InsertCols
}{\param{int
}{pos =
0},
\param{int
}{numCols =
1},
\param{bool
}{updateLabels = true
}}
869 Inserts one or more new columns into a grid with the first new column at the
870 specified position and returns true if successful. The updateLabels argument is not
873 The sequence of actions begins with the grid object requesting the underlying grid
874 table to insert new columns. If this is successful the table notifies the grid and the
875 grid updates the display. For a default grid (one where you have called
876 \helpref{wxGrid::CreateGrid
}{wxgridcreategrid
}) this process is automatic. If you are
877 using a custom grid table (specified with
\helpref{wxGrid::SetTable
}{wxgridsettable
})
878 then you must override
879 \helpref{wxGridTableBase::InsertCols
}{wxgridtablebaseinsertcols
} in your derived
882 \membersection{wxGrid::InsertRows
}\label{wxgridinsertrows
}
884 \func{bool
}{InsertRows
}{\param{int
}{pos =
0},
\param{int
}{numRows =
1},
\param{bool
}{updateLabels = true
}}
886 Inserts one or more new rows into a grid with the first new row at the specified
887 position and returns true if successful. The updateLabels argument is not used at
890 The sequence of actions begins with the grid object requesting the underlying grid
891 table to insert new rows. If this is successful the table notifies the grid and the
892 grid updates the display. For a default grid (one where you have called
893 \helpref{wxGrid::CreateGrid
}{wxgridcreategrid
}) this process is automatic. If you are
894 using a custom grid table (specified with
\helpref{wxGrid::SetTable
}{wxgridsettable
})
895 then you must override
896 \helpref{wxGridTableBase::InsertRows
}{wxgridtablebaseinsertrows
} in your derived
899 \membersection{wxGrid::IsCellEditControlEnabled
}\label{wxgridiscelleditcontrolenabled
}
901 \constfunc{bool
}{IsCellEditControlEnabled
}{\void}
903 Returns true if the in-place edit control is currently enabled.
905 \membersection{wxGrid::IsCurrentCellReadOnly
}\label{wxgridiscurrentcellreadonly
}
907 \constfunc{bool
}{IsCurrentCellReadOnly
}{\void}
909 Returns true if the current cell has been set to read-only
910 (see
\helpref{wxGrid::SetReadOnly
}{wxgridsetreadonly
}).
912 \membersection{wxGrid::IsEditable
}\label{wxgridiseditable
}
914 \func{bool
}{IsEditable
}{\void}
916 Returns false if the whole grid has been set as read-only or true otherwise.
917 See
\helpref{wxGrid::EnableEditing
}{wxgridenableediting
} for more information about
918 controlling the editing status of grid cells.
920 \membersection{wxGrid::IsInSelection
}\label{wxgridisinselection
}
922 \constfunc{bool
}{IsInSelection
}{\param{int
}{row
},
\param{int
}{col
}}
924 \constfunc{bool
}{IsInSelection
}{\param{const wxGridCellCoords\&
}{coords
}}
926 Is this cell currently selected.
928 \membersection{wxGrid::IsReadOnly
}\label{wxgridisreadonly
}
930 \constfunc{bool
}{IsReadOnly
}{\param{int
}{row
},
\param{int
}{col
}}
932 Returns true if the cell at the specified location can't be edited.
933 See also
\helpref{wxGrid::IsReadOnly
}{wxgridisreadonly
}.
935 \membersection{wxGrid::IsSelection
}\label{wxgridisselection
}
937 \func{bool
}{IsSelection
}{\void}
939 Returns true if there are currently rows, columns or blocks of cells selected.
941 \membersection{wxGrid::IsVisible
}\label{wxgridisvisible
}
943 \func{bool
}{IsVisible
}{\param{int
}{row
},
\param{int
}{col
},
\param{bool
}{wholeCellVisible = true
}}
945 \func{bool
}{IsVisible
}{\param{const wxGridCellCoords\&
}{coords
},
\param{bool
}{wholeCellVisible = true
}}
947 Returns true if a cell is either wholly visible (the default) or at least partially
948 visible in the grid window.
950 \membersection{wxGrid::MakeCellVisible
}\label{wxgridmakecellvisible
}
952 \func{void
}{MakeCellVisible
}{\param{int
}{row
},
\param{int
}{col
}}
954 \func{void
}{MakeCellVisible
}{\param{const wxGridCellCoords\&
}{coords
}}
956 Brings the specified cell into the visible grid cell area with minimal scrolling. Does
957 nothing if the cell is already visible.
959 \membersection{wxGrid::MoveCursorDown
}\label{wxgridmovecursordown
}
961 \func{bool
}{MoveCursorDown
}{\param{bool
}{expandSelection
}}
963 Moves the grid cursor down by one row. If a block of cells was previously selected it
964 will expand if the argument is true or be cleared if the argument is false.
966 \wxheading{Keyboard
}\\
967 This function is called for Down cursor key presses or Shift+Down to expand a selection.
969 \membersection{wxGrid::MoveCursorLeft
}\label{wxgridmovecursorleft
}
971 \func{bool
}{MoveCursorLeft
}{\param{bool
}{expandSelection
}}
973 Moves the grid cursor left by one column. If a block of cells was previously selected it
974 will expand if the argument is true or be cleared if the argument is false.
976 \wxheading{Keyboard
}\\
977 This function is called for Left cursor key presses or Shift+Left to expand a selection.
979 \membersection{wxGrid::MoveCursorRight
}\label{wxgridmovecursorright
}
981 \func{bool
}{MoveCursorRight
}{\param{bool
}{expandSelection
}}
983 Moves the grid cursor right by one column. If a block of cells was previously selected it
984 will expand if the argument is true or be cleared if the argument is false.
986 \wxheading{Keyboard
}\\
987 This function is called for Right cursor key presses or Shift+Right to expand a selection.
989 \membersection{wxGrid::MoveCursorUp
}\label{wxgridmovecursorup
}
991 \func{bool
}{MoveCursorUp
}{\param{bool
}{expandSelection
}}
993 Moves the grid cursor up by one row. If a block of cells was previously selected it
994 will expand if the argument is true or be cleared if the argument is false.
996 \wxheading{Keyboard
}\\
997 This function is called for Up cursor key presses or Shift+Up to expand a selection.
999 \membersection{wxGrid::MoveCursorDownBlock
}\label{wxgridmovecursordownblock
}
1001 \func{bool
}{MoveCursorDownBlock
}{\param{bool
}{expandSelection
}}
1003 Moves the grid cursor down in the current column such that it skips to the beginning or
1004 end of a block of non-empty cells. If a block of cells was previously selected it
1005 will expand if the argument is true or be cleared if the argument is false.
1007 \wxheading{Keyboard
}\\
1008 This function is called for the Ctrl+Down key combination. Shift+Ctrl+Down expands a selection.
1010 \membersection{wxGrid::MoveCursorLeftBlock
}\label{wxgridmovecursorleftblock
}
1012 \func{bool
}{MoveCursorLeftBlock
}{\param{bool
}{expandSelection
}}
1014 Moves the grid cursor left in the current row such that it skips to the beginning or
1015 end of a block of non-empty cells. If a block of cells was previously selected it
1016 will expand if the argument is true or be cleared if the argument is false.
1018 \wxheading{Keyboard
}\\
1019 This function is called for the Ctrl+Left key combination. Shift+Ctrl+left expands a selection.
1021 \membersection{wxGrid::MoveCursorRightBlock
}\label{wxgridmovecursorrightblock
}
1023 \func{bool
}{MoveCursorRightBlock
}{\param{bool
}{expandSelection
}}
1025 Moves the grid cursor right in the current row such that it skips to the beginning or
1026 end of a block of non-empty cells. If a block of cells was previously selected it
1027 will expand if the argument is true or be cleared if the argument is false.
1029 \wxheading{Keyboard
}\\
1030 This function is called for the Ctrl+Right key combination. Shift+Ctrl+Right expands a selection.
1032 \membersection{wxGrid::MoveCursorUpBlock
}\label{wxgridmovecursorupblock
}
1034 \func{bool
}{MoveCursorUpBlock
}{\param{bool
}{expandSelection
}}
1036 Moves the grid cursor up in the current column such that it skips to the beginning or
1037 end of a block of non-empty cells. If a block of cells was previously selected it
1038 will expand if the argument is true or be cleared if the argument is false.
1040 \wxheading{Keyboard
}\\
1041 This function is called for the Ctrl+Up key combination. Shift+Ctrl+Up expands a selection.
1043 \membersection{wxGrid::MovePageDown
}\label{wxgridmovepagedown
}
1045 \func{bool
}{MovePageDown
}{\void}
1047 Moves the grid cursor down by some number of rows so that the previous bottom visible row
1048 becomes the top visible row.
1050 \wxheading{Keyboard
}\\
1051 This function is called for PgDn keypresses.
1053 \membersection{wxGrid::MovePageUp
}\label{wxgridmovepageup
}
1055 \func{bool
}{MovePageUp
}{\void}
1057 Moves the grid cursor up by some number of rows so that the previous top visible row
1058 becomes the bottom visible row.
1060 \wxheading{Keyboard
}\\
1061 This function is called for PgUp keypresses.
1063 \membersection{wxGrid::RegisterDataType
}\label{wxgridregisterdatatype
}
1065 \func{void
}{RegisterDataType
}{\param{const wxString\&
}{typeName
},
\param{wxGridCellRenderer*
}{renderer
},
\param{wxGridCellEditor*
}{editor
}}
1067 Methods for a registry for mapping data types to Renderers/Editors
1069 \membersection{wxGrid::SaveEditControlValue
}\label{wxgridsaveeditcontrolvalue
}
1071 \func{void
}{SaveEditControlValue
}{\void}
1073 Sets the value of the current grid cell to the current in-place edit control value.
1074 This is called automatically when the grid cursor moves from the current cell to a
1075 new cell. It is also a good idea to call this function when closing a grid since
1076 any edits to the final cell location will not be saved otherwise.
1078 \membersection{wxGrid::SelectAll
}\label{wxgridselectall
}
1080 \func{void
}{SelectAll
}{\void}
1082 Selects all cells in the grid.
1084 \membersection{wxGrid::SelectBlock
}\label{wxgridselectblock
}
1086 \func{void
}{SelectBlock
}{\param{int
}{topRow
},
\param{int
}{leftCol
},
1087 \param{int
}{bottomRow
},
\param{int
}{rightCol
},
\param{bool
}{addToSelected = false
}}
1089 \func{void
}{SelectBlock
}{\param{const wxGridCellCoords\&
}{topLeft
},
1090 \param{const wxGridCellCoords\&
}{bottomRight
},
\param{bool
}{addToSelected = false
}}
1092 Selects a rectangular block of cells. If addToSelected is false then any existing selection will be
1093 deselected; if true the column will be added to the existing selection.
1095 \membersection{wxGrid::SelectCol
}\label{wxgridselectcol
}
1097 \func{void
}{SelectCol
}{\param{int
}{col
},
\param{bool
}{addToSelected = false
}}
1099 Selects the specified column. If addToSelected is false then any existing selection will be
1100 deselected; if true the column will be added to the existing selection.
1102 \membersection{wxGrid::SelectionToDeviceRect
}\label{wxgridselectiontodevicerect
}
1104 \func{wxRect
}{SelectionToDeviceRect
}{\void}
1106 This function returns the rectangle that encloses the selected cells
1107 in device coords and clipped to the client size of the grid window.
1110 \membersection{wxGrid::SelectRow
}\label{wxgridselectrow
}
1112 \func{void
}{SelectRow
}{\param{int
}{row
},
\param{bool
}{addToSelected = false
}}
1114 Selects the specified row. If addToSelected is false then any existing selection will be
1115 deselected; if true the row will be added to the existing selection.
1117 \membersection{wxGrid::SetCellAlignment
}\label{wxgridsetcellalignment
}
1119 \func{void
}{SetCellAlignment
}{\param{int
}{row
},
\param{int
}{col
},
\param{int
}{horiz
},
\param{int
}{vert
}}
1121 \func{void
}{SetCellAlignment
}{\param{int
}{align
},
\param{int
}{row
},
\param{int
}{col
}}
1123 Sets the horizontal and vertical alignment for grid cell text at the specified location.
1125 Horizontal alignment should be one of wxALIGN
\_LEFT, wxALIGN
\_CENTRE or wxALIGN
\_RIGHT. \\
1126 Vertical alignment should be one of wxALIGN
\_TOP, wxALIGN
\_CENTRE or wxALIGN
\_BOTTOM.
1128 \membersection{wxGrid::SetCellBackgroundColour
}\label{wxgridsetcellbackgroundcolour
}
1130 \func{void
}{SetCellBackgroundColour
}{\param{int
}{row
},
\param{int
}{col
},
\param{const wxColour\&
}{ colour
}}
1133 \membersection{wxGrid::SetCellEditor
}\label{wxgridsetcelleditor
}
1135 \func{void
}{SetCellEditor
}{\param{int
}{row
},
\param{int
}{col
},
\param{wxGridCellEditor*
}{editor
}}
1137 Sets the editor for the grid cell at the specified location.
1138 The grid will take ownership of the pointer.
1140 See
\helpref{wxGridCellEditor
}{wxgridcelleditor
} and
1141 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
1143 \membersection{wxGrid::SetCellFont
}\label{wxgridsetcellfont
}
1145 \func{void
}{SetCellFont
}{\param{int
}{row
},
\param{int
}{col
},
\param{const wxFont\&
}{ font
}}
1147 Sets the font for text in the grid cell at the specified location.
1149 \membersection{wxGrid::SetCellRenderer
}\label{wxgridsetcellrenderer
}
1151 \func{void
}{SetCellRenderer
}{\param{int
}{row
},
\param{int
}{col
},
\param{wxGridCellRenderer*
}{renderer
}}
1153 Sets the renderer for the grid cell at the specified location.
1154 The grid will take ownership of the pointer.
1156 See
\helpref{wxGridCellRenderer
}{wxgridcellrenderer
} and
1157 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
1159 \membersection{wxGrid::SetCellTextColour
}\label{wxgridsetcelltextcolour
}
1161 \func{void
}{SetCellTextColour
}{\param{int
}{row
},
\param{int
}{col
},
\param{const wxColour\&
}{ colour
}}
1163 \func{void
}{SetCellTextColour
}{\param{const wxColour\&
}{val
},
\param{int
}{row
},
\param{int
}{col
}}
1165 \func{void
}{SetCellTextColour
}{\param{const wxColour\&
}{colour
}}
1167 Sets the text colour for the grid cell at the specified location.
1169 \membersection{wxGrid::SetCellValue
}\label{wxgridsetcellvalue
}
1171 \func{void
}{SetCellValue
}{\param{int
}{row
},
\param{int
}{col
},
\param{const wxString\&
}{s
}}
1173 \func{void
}{SetCellValue
}{\param{const wxGridCellCoords\&
}{coords
},
\param{const wxString\&
}{s
}}
1175 \func{void
}{SetCellValue
}{\param{const wxString\&
}{val
},
\param{int
}{row
},
\param{int
}{col
}}
1177 Sets the string value for the cell at the specified location. For simple applications where a
1178 grid object automatically uses a default grid table of string values you use this function together
1179 with
\helpref{wxGrid::GetCellValue
}{wxgridgetcellvalue
} to access cell values.
1181 For more complex applications where you have derived your own grid table class that contains
1182 various data types (e.g. numeric, boolean or user-defined custom types) then you only use this
1183 function for those cells that contain string values.
1185 The last form is for backward compatibility only.
1187 See
\helpref{wxGridTableBase::CanSetValueAs
}{wxgridtablebasecangetvalueas
}
1188 and the
\helpref{wxGrid overview
}{gridoverview
} for more information.
1190 \membersection{wxGrid::SetColAttr
}\label{wxgridsetcolattr
}
1192 \func{void
}{SetColAttr
}{\param{int
}{col
},
\param{wxGridCellAttr*
}{attr
}}
1194 Sets the cell attributes for all cells in the specified column.
1196 For more information about controlling grid cell attributes see the
1197 \helpref{wxGridCellAttr
}{wxgridcellattr
} cell attribute class and the
1198 \helpref{wxGrid classes overview
}{gridoverview
}.
1200 \membersection{wxGrid::SetColFormatBool
}\label{wxgridsetcolformatbool
}
1202 \func{void
}{SetColFormatBool
}{\param{int
}{col
}}
1204 Sets the specified column to display boolean values. wxGrid displays boolean values with a checkbox.
1206 \membersection{wxGrid::SetColFormatNumber
}\label{wxgridsetcolformatnumber
}
1208 \func{void
}{SetColFormatNumber
}{\param{int
}{col
}}
1210 Sets the specified column to display integer values.
1212 \membersection{wxGrid::SetColFormatFloat
}\label{wxgridsetcolformatfloat
}
1214 \func{void
}{SetColFormatFloat
}{\param{int
}{col
},
\param{int
}{width = -
1},
\param{int
}{precision = -
1}}
1216 Sets the specified column to display floating point values with the given width and precision.
1218 \membersection{wxGrid::SetColFormatCustom
}\label{wxgridsetcolformatcustom
}
1220 \func{void
}{SetColFormatCustom
}{\param{int
}{col
},
\param{const wxString\&
}{typeName
}}
1222 Sets the specified column to display data in a custom format.
1223 See the
\helpref{wxGrid overview
}{gridoverview
} for more information on working
1224 with custom data types.
1226 \membersection{wxGrid::SetColLabelAlignment
}\label{wxgridsetcollabelalignment
}
1228 \func{void
}{SetColLabelAlignment
}{\param{int
}{horiz
},
\param{int
}{vert
}}
1230 Sets the horizontal and vertical alignment of column label text.
1232 Horizontal alignment should be one of wxALIGN
\_LEFT, wxALIGN
\_CENTRE or wxALIGN
\_RIGHT.
1234 Vertical alignment should be one of wxALIGN
\_TOP, wxALIGN
\_CENTRE or wxALIGN
\_BOTTOM.
1236 \membersection{wxGrid::SetColLabelSize
}\label{wxgridsetcollabelsize
}
1238 \func{void
}{SetColLabelSize
}{\param{int
}{height
}}
1240 Sets the height of the column labels.
1242 \membersection{wxGrid::SetColLabelValue
}\label{wxgridsetcollabelvalue
}
1244 \func{void
}{SetColLabelValue
}{\param{int
}{col
},
\param{const wxString\&
}{ value
}}
1246 Set the value for the given column label. If you are using a derived grid table you must
1247 override
\helpref{wxGridTableBase::SetColLabelValue
}{wxgridtablebasesetcollabelvalue
}
1248 for this to have any effect.
1250 \membersection{wxGrid::SetColMinimalWidth
}\label{wxgridsetcolminimalwidth
}
1252 \func{void
}{SetColMinimalWidth
}{\param{int
}{col
},
\param{int
}{width
}}
1254 Sets the minimal width for the specified column. This should normally be called when creating the grid
1255 because it will not resize a column that is already narrower than the minimal width.
1256 The width argument must be higher than the minimimal acceptable column width, see
1257 \helpref{wxGrid::GetColMinimalAcceptableWidth
}{wxgridgetcolminimalacceptablewidth
}.
1259 \membersection{wxGrid::SetColMinimalAcceptableWidth
}\label{wxgridsetcolminimalacceptablewidth
}
1261 \func{void
}{SetColMinimalAcceptableWidth
}{\param{int
}{width
}}
1263 This modifies the minimum column width that can be handled correctly. Specifying a low value here
1264 allows smaller grid cells to be dealt with correctly. Specifying a value here which is much smaller
1265 than the actual minimum size will incur a performance penalty in the functions which perform
1266 grid cell index lookup on the basis of screen coordinates.
1267 This should normally be called when creating the grid because it will not resize existing columns
1268 with sizes smaller than the value specified here.
1270 \membersection{wxGrid::SetColSize
}\label{wxgridsetcolsize
}
1272 \func{void
}{SetColSize
}{\param{int
}{col
},
\param{int
}{width
}}
1274 Sets the width of the specified column.
1276 This function does not refresh the grid. If you are calling it outside of a BeginBatch / EndBatch
1277 block you can use
\helpref{wxGrid::ForceRefresh
}{wxgridforcerefresh
} to see the changes.
1279 Automatically sizes the column to fit its contents. If setAsMin is true the calculated width will
1280 also be set as the minimal width for the column.
1283 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
1284 The memory requirements for this could become prohibitive if your grid is very large.
1286 \membersection{wxGrid::SetDefaultCellAlignment
}\label{wxgridsetdefaultcellalignment
}
1288 \func{void
}{SetDefaultCellAlignment
}{\param{int
}{horiz
},
\param{int
}{vert
}}
1290 Sets the default horizontal and vertical alignment for grid cell text.
1292 Horizontal alignment should be one of wxALIGN
\_LEFT, wxALIGN
\_CENTRE or wxALIGN
\_RIGHT.
1294 Vertical alignment should be one of wxALIGN
\_TOP, wxALIGN
\_CENTRE or wxALIGN
\_BOTTOM.
1296 \membersection{wxGrid::SetDefaultCellBackgroundColour
}\label{wxgridsetdefaultcellbackgroundcolour
}
1298 \func{void
}{SetDefaultCellBackgroundColour
}{\param{const wxColour\&
}{ colour
}}
1300 Sets the default background colour for grid cells.
1302 \membersection{wxGrid::SetDefaultCellFont
}\label{wxgridsetdefaultcellfont
}
1304 \func{void
}{SetDefaultCellFont
}{\param{const wxFont\&
}{ font
}}
1306 Sets the default font to be used for grid cell text.
1308 \membersection{wxGrid::SetDefaultEditor
}\label{wxgridsetdefaulteditor
}
1310 \func{void
}{SetDefaultEditor
}{\param{wxGridCellEditor*
}{editor
}}
1312 Sets the default editor for grid cells. The grid will take ownership of the pointer.
1314 See
\helpref{wxGridCellEditor
}{wxgridcelleditor
} and
1315 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
1317 \membersection{wxGrid::SetDefaultRenderer
}\label{wxgridsetdefaultrenderer
}
1319 \func{void
}{SetDefaultRenderer
}{\param{wxGridCellRenderer*
}{renderer
}}
1321 Sets the default renderer for grid cells. The grid will take ownership of the pointer.
1323 See
\helpref{wxGridCellRenderer
}{wxgridcellrenderer
} and
1324 the
\helpref{wxGrid overview
}{gridoverview
} for more information about cell editors and renderers.
1326 \membersection{wxGrid::SetDefaultColSize
}\label{wxgridsetdefaultcolsize
}
1328 \func{void
}{SetDefaultColSize
}{\param{int
}{width
},
\param{bool
}{resizeExistingCols = false
}}
1330 Sets the default width for columns in the grid. This will only affect columns subsequently added to
1331 the grid unless resizeExistingCols is true.
1333 \membersection{wxGrid::SetDefaultRowSize
}\label{wxgridsetdefaultrowsize
}
1335 \func{void
}{SetDefaultRowSize
}{\param{int
}{height
},
\param{bool
}{resizeExistingRows = false
}}
1337 Sets the default height for rows in the grid. This will only affect rows subsequently added
1338 to the grid unless resizeExistingRows is true.
1340 \membersection{wxGrid::SetGridCursor
}\label{wxgridsetgridcursor
}
1342 \func{void
}{SetGridCursor
}{\param{int
}{row
},
\param{int
}{col
}}
1344 Set the grid cursor to the specified cell.
1345 This function calls
\helpref{wxGrid::MakeCellVisible
}{wxgridmakecellvisible
}.
1347 \membersection{wxGrid::SetGridLineColour
}\label{wxgridsetgridlinecolour
}
1349 \func{void
}{SetGridLineColour
}{\param{const wxColour\&
}{colour
}}
1351 Sets the colour used to draw grid lines.
1353 \membersection{wxGrid::SetLabelBackgroundColour
}\label{wxgridsetlabelbackgroundcolour
}
1355 \func{void
}{SetLabelBackgroundColour
}{\param{const wxColour\&
}{ colour
}}
1357 Sets the background colour for row and column labels.
1359 \membersection{wxGrid::SetLabelFont
}\label{wxgridsetlabelfont
}
1361 \func{void
}{SetLabelFont
}{\param{const wxFont\&
}{ font
}}
1363 Sets the font for row and column labels.
1365 \membersection{wxGrid::SetLabelTextColour
}\label{wxgridsetlabeltextcolour
}
1367 \func{void
}{SetLabelTextColour
}{\param{const wxColour\&
}{ colour
}}
1369 Sets the colour for row and column label text.
1371 \membersection{wxGrid::SetMargins
}\label{wxgridsetmargins
}
1373 \func{void
}{SetMargins
}{\param{int
}{extraWidth
},
\param{int
}{extraHeight
}}
1375 A grid may occupy more space than needed for its rows/columns. This
1376 function allows to set how big this extra space is
1378 \membersection{wxGrid::SetOrCalcColumnSizes
}\label{wxgridsetorcalccolumnsizes
}
1380 \func{int
}{SetOrCalcColumnSizes
}{\param{bool
}{calcOnly
},
\param{bool
}{setAsMin = true
}}
1382 Common part of AutoSizeColumn/Row() and GetBestSize()
1384 \membersection{wxGrid::SetOrCalcRowSizes
}\label{wxgridsetorcalcrowsizes
}
1386 \func{int
}{SetOrCalcRowSizes
}{\param{bool
}{calcOnly
},
\param{bool
}{setAsMin = true
}}
1388 \membersection{wxGrid::SetReadOnly
}\label{wxgridsetreadonly
}
1390 \func{void
}{SetReadOnly
}{\param{int
}{row
},
\param{int
}{col
},
\param{bool
}{isReadOnly = true
}}
1392 Makes the cell at the specified location read-only or editable.
1393 See also
\helpref{wxGrid::IsReadOnly
}{wxgridisreadonly
}.
1395 \membersection{wxGrid::SetRowAttr
}\label{wxgridsetrowattr
}
1397 \func{void
}{SetRowAttr
}{\param{int
}{row
},
\param{wxGridCellAttr*
}{attr
}}
1399 Sets the cell attributes for all cells in the specified row.
1400 See the
\helpref{wxGridCellAttr
}{wxgridcellattr
} class for more information
1401 about controlling cell attributes.
1403 \membersection{wxGrid::SetRowLabelAlignment
}\label{wxgridsetrowlabelalignment
}
1405 \func{void
}{SetRowLabelAlignment
}{\param{int
}{horiz
},
\param{int
}{vert
}}
1407 Sets the horizontal and vertical alignment of row label text.
1409 Horizontal alignment should be one of wxALIGN
\_LEFT, wxALIGN
\_CENTRE or wxALIGN
\_RIGHT.
1411 Vertical alignment should be one of wxALIGN
\_TOP, wxALIGN
\_CENTRE or wxALIGN
\_BOTTOM.
1413 \membersection{wxGrid::SetRowLabelSize
}\label{wxgridsetrowlabelsize
}
1415 \func{void
}{SetRowLabelSize
}{\param{int
}{width
}}
1417 Sets the width of the row labels.
1419 \membersection{wxGrid::SetRowLabelValue
}\label{wxgridsetrowlabelvalue
}
1421 \func{void
}{SetRowLabelValue
}{\param{int
}{row
},
\param{const wxString\&
}{ value
}}
1423 Set the value for the given row label. If you are using a derived grid table you must
1424 override
\helpref{wxGridTableBase::SetRowLabelValue
}{wxgridtablebasesetrowlabelvalue
}
1425 for this to have any effect.
1427 \membersection{wxGrid::SetRowMinimalHeight
}\label{wxgridsetrowminimalheight
}
1429 \func{void
}{SetRowMinimalHeight
}{\param{int
}{row
},
\param{int
}{height
}}
1431 Sets the minimal height for the specified row. This should normally be called when creating the grid
1432 because it will not resize a row that is already shorter than the minimal height.
1433 The height argument must be higher than the minimimal acceptable row height, see
1434 \helpref{wxGrid::GetRowMinimalAcceptableHeight
}{wxgridgetrowminimalacceptableheight
}.
1436 \membersection{wxGrid::SetRowMinimalAcceptableHeight
}\label{wxgridsetrowminimalacceptableheight
}
1438 \func{void
}{SetRowMinimalAcceptableHeight
}{\param{int
}{height
}}
1440 This modifies the minimum row width that can be handled correctly. Specifying a low value here
1441 allows smaller grid cells to be dealt with correctly. Specifying a value here which is much smaller
1442 than the actual minimum size will incur a performance penalty in the functions which perform
1443 grid cell index lookup on the basis of screen coordinates.
1444 This should normally be called when creating the grid because it will not resize existing rows
1445 with sizes smaller than the value specified here.
1447 \membersection{wxGrid::SetRowSize
}\label{wxgridsetrowsize
}
1449 \func{void
}{SetRowSize
}{\param{int
}{row
},
\param{int
}{height
}}
1451 Sets the height of the specified row.
1453 This function does not refresh the grid. If you are calling it outside of a BeginBatch / EndBatch
1454 block you can use
\helpref{wxGrid::ForceRefresh
}{wxgridforcerefresh
} to see the changes.
1456 Automatically sizes the column to fit its contents. If setAsMin is true the calculated width will
1457 also be set as the minimal width for the column.
1461 wxGrid sets up arrays to store individual row and column sizes when non-default sizes are used.
1462 The memory requirements for this could become prohibitive if your grid is very large.
1464 \membersection{wxGrid::SetScrollLinesX
}\label{wxgridsetscrolllinesx
}
1466 \func{void
}{SetScrollLinesX
}{\param{int
}{x
}}
1468 Sets the number of pixels per horizontal scroll increment. The default is
15.
1469 Sometimes wxGrid has trouble setting the scrollbars correctly due to rounding
1470 errors: setting this to
1 can help.
1472 \membersection{wxGrid::SetScrollLinesY
}\label{wxgridsetscrolllinesy
}
1474 \func{void
}{SetScrollLinesY
}{\param{int
}{y
}}
1476 Sets the number of pixels per vertical scroll increment. The default is
15.
1477 Sometimes wxGrid has trouble setting the scrollbars correctly due to rounding
1478 errors: setting this to
1 can help.
1480 \membersection{wxGrid::SetSelectionBackground
}\label{wxgridsetselectionbackground
}
1482 \func{void
}{SetSelectionBackground
}{\param{const wxColour\&
}{c
}}
1485 \membersection{wxGrid::SetSelectionForeground
}\label{wxgridsetselectionforeground
}
1487 \func{void
}{SetSelectionForeground
}{\param{const wxColour\&
}{c
}}
1490 \membersection{wxGrid::SetSelectionMode
}\label{wxgridsetselectionmode
}
1492 \func{void
}{SetSelectionMode
}{\param{wxGrid::wxGridSelectionModes
}{ selmode
}}
1494 Set the selection behaviour of the grid.
1496 \wxheading{Parameters
}
1498 \docparam{wxGrid::wxGridSelectCells
}{The default mode where individual cells are selected.
}
1500 \docparam{wxGrid::wxGridSelectRows
}{Selections will consist of whole rows.
}
1502 \docparam{wxGrid::wxGridSelectionColumns
}{Selections will consist of whole columns.
}
1504 \membersection{wxGrid::SetTable
}\label{wxgridsettable
}
1506 \func{bool
}{SetTable
}{\param{wxGridTableBase*
}{table
},
\param{bool
}{takeOwnership = false
},
\param{wxGrid::wxGridSelectionModes
}{selmode = wxGrid::wxGridSelectCells
}}
1508 Passes a pointer to a custom grid table to be used by the grid. This should be called
1509 after the grid constructor and before using the grid object. If takeOwnership is set to
1510 true then the table will be deleted by the wxGrid destructor.
1512 Use this function instead of
\helpref{wxGrid::CreateGrid
}{wxgridcreategrid
} when your
1513 application involves complex or non-string data or data sets that are too large to fit
1516 \membersection{wxGrid::ShowCellEditControl
}\label{wxgridshowcelleditcontrol
}
1518 \func{void
}{ShowCellEditControl
}{\void}
1520 Displays the in-place cell edit control for the current cell.
1522 \membersection{wxGrid::XToCol
}\label{wxgridxtocol
}
1524 \func{int
}{XToCol
}{\param{int
}{x
}}
1526 Returns the grid column that corresponds to the logical x coordinate. Returns
1527 {\tt wxNOT
\_FOUND} if there is no column at the x position.
1529 \membersection{wxGrid::XToEdgeOfCol
}\label{wxgridxtoedgeofcol
}
1531 \func{int
}{XToEdgeOfCol
}{\param{int
}{x
}}
1533 Returns the column whose right hand edge is close to the given logical x position.
1534 If no column edge is near to this position
{\tt wxNOT
\_FOUND} is returned.
1536 \membersection{wxGrid::YToEdgeOfRow
}\label{wxgridytoedgeofrow
}
1538 \func{int
}{YToEdgeOfRow
}{\param{int
}{y
}}
1540 Returns the row whose bottom edge is close to the given logical y position.
1541 If no row edge is near to this position
{\tt wxNOT
\_FOUND} is returned.
1543 \membersection{wxGrid::YToRow
}\label{wxgridytorow
}
1545 \func{int
}{YToRow
}{\param{int
}{y
}}
1547 Returns the grid row that corresponds to the logical y coordinate. Returns
1548 {\tt wxNOT
\_FOUND} if there is no row at the y position.