1\section{\class{wxGridTableBase}}\label{wxgridtablebase} 2 3Grid table classes. 4 5\wxheading{Derived from} 6 7\helpref{wxObject}{wxobject} 8 9\wxheading{Include files} 10 11<wx/grid.h> 12 13\latexignore{\rtfignore{\wxheading{Members}}} 14 15\membersection{wxGridTableBase::wxGridTableBase}\label{wxgridtablebasewxgridtablebase} 16 17\func{}{wxGridTableBase}{\void} 18 19\membersection{wxGridTableBase::\destruct{wxGridTableBase}}\label{wxgridtablebasedtor} 20 21\func{}{\destruct{wxGridTableBase}}{\void} 22 23\membersection{wxGridTableBase::GetNumberRows}\label{wxgridtablebasegetnumberrows} 24 25\func{int}{GetNumberRows}{\void} 26 27You must override these functions in a derived table class. 28 29\membersection{wxGridTableBase::GetNumberCols}\label{wxgridtablebasegetnumbercols} 30 31\func{int}{GetNumberCols}{\void} 32 33 34\membersection{wxGridTableBase::IsEmptyCell}\label{wxgridtablebaseisemptycell} 35 36\func{bool}{IsEmptyCell}{\param{int }{row}, \param{int }{col}} 37 38 39\membersection{wxGridTableBase::GetValue}\label{wxgridtablebasegetvalue} 40 41\func{wxString}{GetValue}{\param{int }{row}, \param{int }{col}} 42 43 44\membersection{wxGridTableBase::SetValue}\label{wxgridtablebasesetvalue} 45 46\func{void}{SetValue}{\param{int }{row}, \param{int }{col}, \param{const wxString\& }{value}} 47 48 49\membersection{wxGridTableBase::GetTypeName}\label{wxgridtablebasegettypename} 50 51\func{wxString}{GetTypeName}{\param{int }{row}, \param{int }{col}} 52 53Data type determination and value access. 54 55\membersection{wxGridTableBase::CanGetValueAs}\label{wxgridtablebasecangetvalueas} 56 57\func{bool}{CanGetValueAs}{\param{int }{row}, \param{int }{col}, \param{const wxString\& }{typeName}} 58 59 60\membersection{wxGridTableBase::CanSetValueAs}\label{wxgridtablebasecansetvalueas} 61 62\func{bool}{CanSetValueAs}{\param{int }{row}, \param{int }{col}, \param{const wxString\& }{typeName}} 63 64 65\membersection{wxGridTableBase::GetValueAsLong}\label{wxgridtablebasegetvalueaslong} 66 67\func{long}{GetValueAsLong}{\param{int }{row}, \param{int }{col}} 68 69 70\membersection{wxGridTableBase::GetValueAsDouble}\label{wxgridtablebasegetvalueasdouble} 71 72\func{double}{GetValueAsDouble}{\param{int }{row}, \param{int }{col}} 73 74 75\membersection{wxGridTableBase::GetValueAsBool}\label{wxgridtablebasegetvalueasbool} 76 77\func{bool}{GetValueAsBool}{\param{int }{row}, \param{int }{col}} 78 79 80\membersection{wxGridTableBase::SetValueAsLong}\label{wxgridtablebasesetvalueaslong} 81 82\func{void}{SetValueAsLong}{\param{int }{row}, \param{int }{col}, \param{long }{value}} 83 84 85\membersection{wxGridTableBase::SetValueAsDouble}\label{wxgridtablebasesetvalueasdouble} 86 87\func{void}{SetValueAsDouble}{\param{int }{row}, \param{int }{col}, \param{double }{value}} 88 89 90\membersection{wxGridTableBase::SetValueAsBool}\label{wxgridtablebasesetvalueasbool} 91 92\func{void}{SetValueAsBool}{\param{int }{row}, \param{int }{col}, \param{bool }{value}} 93 94 95\membersection{wxGridTableBase::GetValueAsCustom}\label{wxgridtablebasegetvalueascustom} 96 97\func{void*}{GetValueAsCustom}{\param{int }{row}, \param{int }{col}, \param{const wxString\& }{typeName}} 98 99For user defined types 100 101 102\membersection{wxGridTableBase::SetValueAsCustom}\label{wxgridtablebasesetvalueascustom} 103 104\func{void}{SetValueAsCustom}{\param{int }{row}, \param{int }{col}, \param{const wxString\& }{typeName}, \param{void* }{value}} 105 106 107\membersection{wxGridTableBase::SetView}\label{wxgridtablebasesetview} 108 109\func{void}{SetView}{\param{wxGrid* }{grid}} 110 111Overriding these is optional 112 113 114\membersection{wxGridTableBase::GetView}\label{wxgridtablebasegetview} 115 116\constfunc{wxGrid *}{GetView}{\void} 117 118 119\membersection{wxGridTableBase::Clear}\label{wxgridtablebaseclear} 120 121\func{void}{Clear}{\void} 122 123 124\membersection{wxGridTableBase::InsertRows}\label{wxgridtablebaseinsertrows} 125 126\func{bool}{InsertRows}{\param{size\_t }{pos = 0}, \param{size\_t }{numRows = 1}} 127 128 129\membersection{wxGridTableBase::AppendRows}\label{wxgridtablebaseappendrows} 130 131\func{bool}{AppendRows}{\param{size\_t }{numRows = 1}} 132 133 134\membersection{wxGridTableBase::DeleteRows}\label{wxgridtablebasedeleterows} 135 136\func{bool}{DeleteRows}{\param{size\_t }{pos = 0}, \param{size\_t }{numRows = 1}} 137 138 139\membersection{wxGridTableBase::InsertCols}\label{wxgridtablebaseinsertcols} 140 141\func{bool}{InsertCols}{\param{size\_t }{pos = 0}, \param{size\_t }{numCols = 1}} 142 143 144\membersection{wxGridTableBase::AppendCols}\label{wxgridtablebaseappendcols} 145 146\func{bool}{AppendCols}{\param{size\_t }{numCols = 1}} 147 148 149\membersection{wxGridTableBase::DeleteCols}\label{wxgridtablebasedeletecols} 150 151\func{bool}{DeleteCols}{\param{size\_t }{pos = 0}, \param{size\_t }{numCols = 1}} 152 153 154\membersection{wxGridTableBase::GetRowLabelValue}\label{wxgridtablebasegetrowlabelvalue} 155 156\func{wxString}{GetRowLabelValue}{\param{int }{row}} 157 158 159\membersection{wxGridTableBase::GetColLabelValue}\label{wxgridtablebasegetcollabelvalue} 160 161\func{wxString}{GetColLabelValue}{\param{int }{col}} 162 163 164\membersection{wxGridTableBase::SetRowLabelValue}\label{wxgridtablebasesetrowlabelvalue} 165 166\func{void}{SetRowLabelValue}{\param{int }{WXUNUSED(row)}, \param{const }{wxString\&}} 167 168 169\membersection{wxGridTableBase::SetColLabelValue}\label{wxgridtablebasesetcollabelvalue} 170 171\func{void}{SetColLabelValue}{\param{int }{WXUNUSED(col)}, \param{const }{wxString\&}} 172 173 174\membersection{wxGridTableBase::SetAttrProvider}\label{wxgridtablebasesetattrprovider} 175 176\func{void}{SetAttrProvider}{\param{wxGridCellAttrProvider* }{attrProvider}} 177 178Attribute handling 179give us the attr provider to use - we take ownership of the pointer 180 181 182\membersection{wxGridTableBase::GetAttrProvider}\label{wxgridtablebasegetattrprovider} 183 184\constfunc{wxGridCellAttrProvider*}{GetAttrProvider}{\void} 185 186get the currently used attr provider (may be NULL) 187 188 189\membersection{wxGridTableBase::CanHaveAttributes}\label{wxgridtablebasecanhaveattributes} 190 191\func{bool}{CanHaveAttributes}{\void} 192 193Does this table allow attributes? Default implementation creates 194a wxGridCellAttrProvider if necessary. 195 196 197\membersection{wxGridTableBase::UpdateAttrRows}\label{wxgridtablebaseupdateattrrows} 198 199\func{void}{UpdateAttrRows}{\param{size\_t }{pos}, \param{int }{numRows}} 200 201change row/col number in attribute if needed 202 203 204\membersection{wxGridTableBase::UpdateAttrCols}\label{wxgridtablebaseupdateattrcols} 205 206\func{void}{UpdateAttrCols}{\param{size\_t }{pos}, \param{int }{numCols}} 207 208 209\membersection{wxGridTableBase::GetAttr}\label{wxgridtablebasegetattr} 210 211\func{wxGridCellAttr*}{GetAttr}{\param{int }{row}, \param{int }{col}} 212 213by default forwarded to wxGridCellAttrProvider if any. May be 214overridden to handle attributes directly in the table. 215 216 217\membersection{wxGridTableBase::SetAttr}\label{wxgridtablebasesetattr} 218 219\func{void}{SetAttr}{\param{wxGridCellAttr* }{attr}, \param{int }{row}, \param{int }{col}} 220 221these functions take ownership of the pointer 222 223 224\membersection{wxGridTableBase::SetRowAttr}\label{wxgridtablebasesetrowattr} 225 226\func{void}{SetRowAttr}{\param{wxGridCellAttr* }{attr}, \param{int }{row}} 227 228 229\membersection{wxGridTableBase::SetColAttr}\label{wxgridtablebasesetcolattr} 230 231\func{void}{SetColAttr}{\param{wxGridCellAttr* }{attr}, \param{int }{col}} 232 233