/** * Create control from configuration or return NULL if factory does not match config. * * @param IControlConfig $config * @return NULL|BaseControl */ public function createControl(IControlConfig $config) { if ($config->getOption(self::ADD_APPLY_BUTTON)) { $wrappedConfig = clone $config; $wrappedConfig->setOption(self::ADD_APPLY_BUTTON, FALSE); $wrappedControl = $this->controlFactorySet->createControl($wrappedConfig); $wrapper = new ApplyButtonWrapper($wrappedControl, $config->getComponentName()); $config->setComponentName($config->getComponentName() . '_wrapper'); return $wrapper; } return NULL; }