public function setSelectedValues($values)
{
if ($this->getIsMultiSelect()) {
if ($this->_items) {
$this->clearSelection();
$lookup = array();
foreach ($this->_items as $item) {
$lookup[$item->getValue()] = $item;
}
foreach ($values as $value) {
if (isset($lookup["{$value}"])) {
$lookup["{$value}"]->setSelected(true);
}
}
}
$this->_cachedSelectedValues = $values;
} else {
throw new TNotSupportedException('listcontrol_multiselect_unsupported', get_class($this));
}
if ($this->getAdapter() instanceof IListControlAdapter) {
$this->getAdapter()->setSelectedValues($values);
}
}