oPrototypeBlock; } /** @inheritdoc */ protected function RegisterIO(IORegister $oIORegister): void { parent::RegisterIO($oIORegister); $oIORegister->AddInput(self::INPUT_CLASS_NAME, ClassIOFormat::class); } /** @inheritdoc */ protected function RegisterOptions(OptionsRegister $oOptionsRegister): void { parent::RegisterOptions($oOptionsRegister); $oOptionsRegister->SetOption('entry_block', null, false); $oOptionsRegister->SetOption('prototype', true); $oOptionsRegister->SetOption('allow_add', true); $oOptionsRegister->SetOption('prototype_options', [ 'label' => false, ]); } /** @inheritdoc */ protected function AfterOptionsRegistered(OptionsRegister $oOptionsRegister): void { parent::AfterOptionsRegistered($oOptionsRegister); $oBlockEntryType = $this->GetOption('entry_block'); try { $oOptionsRegister->SetOption('entry_type', $oBlockEntryType->GetFormType()); $oOptionsRegister->SetOption('entry_options', $oBlockEntryType->GetOptions()); } catch (RegisterException $e) { } } }