當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Container::addComponent方法代碼示例

本文整理匯總了PHP中Nette\Forms\Container::addComponent方法的典型用法代碼示例。如果您正苦於以下問題:PHP Container::addComponent方法的具體用法?PHP Container::addComponent怎麽用?PHP Container::addComponent使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Nette\Forms\Container的用法示例。


在下文中一共展示了Container::addComponent方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: relationBuilder

 /**
  * @param string $name
  * @throws InvalidArgumentException
  * @throws NotImplementedException
  * @return EntityBuilder
  */
 public function relationBuilder($name)
 {
     $class = $this->getMetadata();
     if (!$class->hasAssociation($name)) {
         throw new InvalidArgumentException("Entity {$this->metadata->name} has no association '{$name}'.");
     }
     if (isset($this->relationBuilders[$name])) {
         return $this->relationBuilders[$name];
     }
     if ($class->isSingleValuedAssociation($name)) {
         if (!$this->container->getComponent($name, FALSE)) {
             $this->container->addComponent(new Nette\Forms\Container(), $name);
         }
         $builder = new EntityBuilder($this->container[$name], $this->mapper, $this->controlFactory, $this->em);
         if ($this->entity && ($relation = $class->getFieldValue($this->entity, $name))) {
             $builder->bindEntity($relation);
         } else {
             $builder->bindEntityType($class->getAssociationTargetClass($name));
         }
         return $this->relationBuilders[$name] = $builder;
     } else {
         throw new NotImplementedException();
     }
 }
開發者ID:kuba1999,項目名稱:DoctrineForms,代碼行數:30,代碼來源:EntityBuilder.php

示例2: createControl

 /**
  * @param IControlConfig         $config
  * @param \Nette\Forms\Container $container
  * @throws \NForms\Exceptions\UnexpectedValueException
  * @return Forms\Controls\BaseControl
  */
 protected function createControl(IControlConfig $config, Forms\Container $container)
 {
     // Before
     if ($this->beforeControlCreateOp) {
         $this->beforeControlCreateOp->beforeCreateControl($config);
     }
     // Create
     $control = $this->controlFactory->createControl($config);
     if (!$control instanceof Forms\Controls\BaseControl) {
         throw new UnexpectedValueException("Control created by factory has to be subclass of Nette\\Forms\\Controls\\BaseControl, given " . (is_object($control) ? get_class($control) : gettype($control)) . ".");
     }
     $container->addComponent($control, $config->getComponentName());
     // Set attributes
     if (($placeholder = $config->getPlaceholder()) !== NULL) {
         $placeholder = $control->translate($placeholder);
         $control->controlPrototype->addAttributes(array('placeholder' => $placeholder));
     }
     if (($description = $config->getDescription()) !== NULL) {
         $control->setOption('description', $description);
     }
     $control->controlPrototype->addAttributes($config->getAttributes());
     $control->setRequired($config->getRequired());
     // After
     if ($this->afterControlCreateOp) {
         $this->afterControlCreateOp->afterCreateControl($control, $config);
     }
     // Add control to groups
     foreach ($config->getGroups() as $groupConfig) {
         $group = self::getControlGroup($container, $groupConfig);
         $group->add($control);
     }
     return $control;
 }
開發者ID:mike227,項目名稱:n-forms,代碼行數:39,代碼來源:ContainerBuilder.php

示例3: addComponent

 /**
  * @param \Nette\ComponentModel\IComponent $component
  * @param $name
  * @param null $insertBefore
  * @return \Nette\ComponentModel\Container|\Nette\Forms\Container
  */
 public function addComponent(Nette\ComponentModel\IComponent $component, $name, $insertBefore = NULL)
 {
     $group = $this->currentGroup;
     $this->currentGroup = NULL;
     parent::addComponent($component, $name, $insertBefore);
     $this->currentGroup = $group;
     return $this;
 }
開發者ID:JedenWeb,項目名稱:Replicator,代碼行數:14,代碼來源:Container.php

示例4: addEditorSelector

 /**
  * @param Forms\Container $container
  * @param string $name
  * @param RepositoryContainer $orm
  * @param NULL|bool $editable
  */
 public static function addEditorSelector(Forms\Container $container, $name, RepositoryContainer $orm, $editable = FALSE)
 {
     $container->addComponent(new self($orm, $editable), $name);
 }
開發者ID:VasekPurchart,項目名稱:khanovaskola-v3,代碼行數:10,代碼來源:EditorSelector.php

示例5: addContainer

 /**
  * @param Nette\Forms\Container $parent
  * @param string $name
  * @param IFormEntity|NULL $entity
  * @return Container
  */
 protected function addContainer(Nette\Forms\Container $parent, $name, IFormEntity $entity = NULL)
 {
     $container = $this->getContainerFactory($name)->create($entity);
     $parent->addComponent($container, $name);
     return $container;
 }
開發者ID:sw2eu,項目名稱:form-factory,代碼行數:12,代碼來源:TContainerHandler.php


注:本文中的Nette\Forms\Container::addComponent方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。