protected function getChanges()
{
$changes = array();
foreach ($this->_states as $name => $details) {
$new = $this->_control->getViewState($name);
$old = $this->_existingState[$name];
if ($new !== $old) {
$diff = new $details[0]($new, $old, $this->_nullObject);
if (($change = $diff->getDifference()) !== $this->_nullObject) {
$changes[] = array($details[1], array($change));
}
}
}
return $changes;
}