/** * Returns a property value by name or a control by ID. * This overrides the parent implementation by allowing accessing * a control via its ID using the following syntax, * <code> * $menuBar=$this->menuBar; * </code> * Note, the control must be configured in the template * with explicit ID. If the name matches both a property and a control ID, * the control ID will take the precedence. * * @param string the property name or control ID * @return mixed the property value or the target control * @throws TInvalidOperationException if the property is not defined. * @see registerObject */ public function __get($name) { if (isset($this->_rf[self::RF_NAMED_OBJECTS][$name])) { return $this->_rf[self::RF_NAMED_OBJECTS][$name]; } else { return parent::__get($name); } }