/** * Initializes the specified cell to its initial values. * This method overrides the parent implementation. * It creates a checkbox inside the cell. * If the column is read-only or if the item is not in edit mode, * the checkbox will be set disabled. * @param TTableCell the cell to be initialized. * @param integer the index to the Columns property that the cell resides in. * @param string the type of cell (Header,Footer,Item,AlternatingItem,EditItem,SelectedItem) */ public function initializeCell($cell, $columnIndex, $itemType) { if ($itemType === TListItemType::Item || $itemType === TListItemType::AlternatingItem || $itemType === TListItemType::SelectedItem || $itemType === TListItemType::EditItem) { $checkBox = new TCheckBox(); if ($this->getReadOnly() || $itemType !== TListItemType::EditItem) { $checkBox->setEnabled(false); } $cell->setHorizontalAlign('Center'); $cell->getControls()->add($checkBox); $cell->registerObject('CheckBox', $checkBox); if ($this->getDataField() !== '') { $checkBox->attachEventHandler('OnDataBinding', array($this, 'dataBindColumn')); } } else { parent::initializeCell($cell, $columnIndex, $itemType); } }