public function insertAt($index, $item)
{
if ($item instanceof TControl) {
parent::insertAt($index, $item);
$this->_o->addedControl($item);
} else {
if (is_string($item) || $item instanceof IRenderable) {
parent::insertAt($index, $item);
} else {
throw new TInvalidDataTypeException('controlcollection_control_required');
}
}
}