This class is responsible for providing and manipulating the in-place edit controls for the grid. Instances of wxGridCellEditor (actually, instances of derived classes since it is an abstract class) can be associated with the cell attributes for individual cells, rows, columns, or even for the entire grid.
wxGridCellTextEditor, wxGridCellFloatEditor, wxGridCellBoolEditor, wxGridCellNumberEditor, wxGridCellChoiceEditor
Creates the actual edit control.
Size and position the edit control.
Show or hide the edit control, use the specified attributes to set colours/fonts for it.
Draws the part of the cell not occupied by the control: the base class version just fills it with background colour from the attribute.
Fetch the value from the table and prepare the edit control to begin editing. Set the focus to the edit control.
Complete the editing of the current cell. Returns true if the value has changed. If necessary, the control may be destroyed.
Reset the value in the control back to its starting value.
If the editor is enabled by pressing keys on the grid, this will be called to let the editor do something about that first key if desired.
If the editor is enabled by clicking on the cell, this method will be called.
Some types of controls on some platforms may need some help with the Return key.
wxGridCellEditor* Clone(void) const
Create a new object which is the copy of this one.
The dtor is private because only DecRef() can delete us.