def EndEdit(self, row, col, grid, oldVal=None):
        """
        End editing the cell.  This function must check if the current
        value of the editing control is valid and different from the
        original value (available as oldval in its string form.)  If
        it has not changed then simply return None, otherwise return
        the value in its string form.
        *Must Override*

        """

        # Mirror our changes onto the main_window's code bar
        self._tc.Unbind(wx.EVT_KEY_UP)

        self.ApplyEdit(row, col, grid)

        del self._col
        del self._row
        del self._grid
End editing the cell.  This function must check if the current
        value of the editing control is valid and different from the
        original value (available as oldval in its string form.)  If
        it has not changed then simply return None, otherwise return
        the value in its string form.
        *Must Override*