You are here

class SubformState in Typed Data API enhancements 8

Class SubformState.

Hierarchy

Expanded class hierarchy of SubformState

7 files declare their use of SubformState
BrokenWidget.php in src/Plugin/TypedDataFormWidget/BrokenWidget.php
DatetimeRangeWidget.php in src/Plugin/TypedDataFormWidget/DatetimeRangeWidget.php
DatetimeWidget.php in src/Plugin/TypedDataFormWidget/DatetimeWidget.php
FormWidgetExampleForm.php in tests/modules/typed_data_widget_test/src/FormWidgetExampleForm.php
SelectWidget.php in src/Plugin/TypedDataFormWidget/SelectWidget.php

... See full list

File

src/Form/SubformState.php, line 12

Namespace

Drupal\typed_data\Form
View source
class SubformState extends CoreSubformState {

  /**
   * The array parents; i.e., where the sub-form is located in the parent.
   *
   * @var string[]
   */
  protected $arrayParents;

  /**
   * Creates a new subform by specifying the array parents.
   *
   * @param string[] $arrayParents
   *   The array parents; i.e., where the sub-form is located in the parent.
   *   For example if a sub-form is located in $form['fieldset']['parent'], the
   *   array parents would be "fieldset" and "parent".
   * @param mixed[] $parentForm
   *   The subform's complete parent form array.
   * @param \Drupal\Core\Form\FormStateInterface $parentFormState
   *   The parent form state.
   *
   * @return static
   */
  public static function createWithParents(array $arrayParents, array &$parentForm, FormStateInterface $parentFormState) {
    $exists = NULL;
    $form =& NestedArray::getValue($parentForm, $arrayParents, $exists);
    if (!$exists) {
      $form = static::getNewSubForm();
    }
    $instance = parent::createForSubform($form, $parentForm, $parentFormState);
    $instance->arrayParents = $arrayParents;
    return $instance;
  }

  /**
   * Gets a new sub-form array.
   *
   * Sub-forms must have #tree set to TRUE, so this is set as default.
   *
   * @return mixed[]
   *   The new sub-form.
   */
  public static function getNewSubForm() {
    return [
      '#tree' => TRUE,
    ];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
FormStateDecoratorBase::$decoratedFormState protected property The decorated form state.
FormStateDecoratorBase::addBuildInfo public function Adds a value to the build info. Overrides FormStateInterface::addBuildInfo
FormStateDecoratorBase::addCleanValueKey public function Adds a key to the array of form values that will be cleaned. Overrides FormStateInterface::addCleanValueKey
FormStateDecoratorBase::addRebuildInfo public function Adds a value to the rebuild info. Overrides FormStateInterface::addRebuildInfo
FormStateDecoratorBase::cleanValues public function Removes internal Form API elements and buttons from submitted form values. Overrides FormStateInterface::cleanValues
FormStateDecoratorBase::clearErrors public function Clears all errors against all form elements made by self::setErrorByName(). Overrides FormStateInterface::clearErrors
FormStateDecoratorBase::disableCache public function Prevents the form from being cached. Overrides FormStateInterface::disableCache
FormStateDecoratorBase::disableRedirect public function Prevents the form from redirecting. Overrides FormStateInterface::disableRedirect
FormStateDecoratorBase::get public function Gets any arbitrary property. Overrides FormStateInterface::get
FormStateDecoratorBase::getAlwaysProcess public function Determines if this form should always be processed. Overrides FormStateInterface::getAlwaysProcess
FormStateDecoratorBase::getBuildInfo public function Returns the build info for the form. Overrides FormStateInterface::getBuildInfo
FormStateDecoratorBase::getButtons public function Returns the submit and button elements for the form. Overrides FormStateInterface::getButtons
FormStateDecoratorBase::getCacheableArray public function Returns an array representation of the cacheable portion of the form state. Overrides FormStateInterface::getCacheableArray
FormStateDecoratorBase::getCleanValueKeys public function Gets the keys of the form values that will be cleaned. Overrides FormStateInterface::getCleanValueKeys
FormStateDecoratorBase::getCompleteForm public function Returns a reference to the complete form array. Overrides FormStateInterface::getCompleteForm
FormStateDecoratorBase::getError public function Returns the error message filed against the given form element. Overrides FormStateInterface::getError
FormStateDecoratorBase::getErrors public function Returns an associative array of all errors. Overrides FormStateInterface::getErrors
FormStateDecoratorBase::getFormObject public function Returns the form object that is responsible for building this form. Overrides FormStateInterface::getFormObject
FormStateDecoratorBase::getGroups public function Returns references to details elements to render them within vertical tabs. Overrides FormStateInterface::getGroups
FormStateDecoratorBase::getRebuildInfo public function Gets the rebuild info. Overrides FormStateInterface::getRebuildInfo
FormStateDecoratorBase::getRedirect public function Gets the value to use for redirecting after the form has been executed. Overrides FormStateInterface::getRedirect
FormStateDecoratorBase::getResponse public function Gets a response for this form. Overrides FormStateInterface::getResponse
FormStateDecoratorBase::getStorage public function Returns the entire set of arbitrary data. Overrides FormStateInterface::getStorage
FormStateDecoratorBase::getSubmitHandlers public function Gets the submit handlers. Overrides FormStateInterface::getSubmitHandlers
FormStateDecoratorBase::getTemporary public function Gets temporary data. Overrides FormStateInterface::getTemporary
FormStateDecoratorBase::getTemporaryValue public function Gets an arbitrary value from temporary storage. Overrides FormStateInterface::getTemporaryValue
FormStateDecoratorBase::getTriggeringElement public function Gets the form element that triggered submission. Overrides FormStateInterface::getTriggeringElement
FormStateDecoratorBase::getUserInput public function Returns the form values as they were submitted by the user. Overrides FormStateInterface::getUserInput
FormStateDecoratorBase::getValidateHandlers public function Gets the validate handlers. Overrides FormStateInterface::getValidateHandlers
FormStateDecoratorBase::has public function Determines if an arbitrary property is present. Overrides FormStateInterface::has
FormStateDecoratorBase::hasAnyErrors public static function Determines if any forms have any errors. Overrides FormStateInterface::hasAnyErrors
FormStateDecoratorBase::hasFileElement public function Returns whether this form has a file element. Overrides FormStateInterface::hasFileElement
FormStateDecoratorBase::hasInvalidToken public function Determines if the form has an invalid token. Overrides FormStateInterface::hasInvalidToken
FormStateDecoratorBase::hasTemporaryValue public function Determines if a temporary value is present. Overrides FormStateInterface::hasTemporaryValue
FormStateDecoratorBase::isBypassingProgrammedAccessChecks public function Determines if this form submission should bypass #access. Overrides FormStateInterface::isBypassingProgrammedAccessChecks
FormStateDecoratorBase::isCached public function Determines if the form should be cached. Overrides FormStateInterface::isCached
FormStateDecoratorBase::isExecuted public function Determines if the form was submitted and has been processed and executed. Overrides FormStateInterface::isExecuted
FormStateDecoratorBase::isMethodType public function Returns the HTTP form method. Overrides FormStateInterface::isMethodType
FormStateDecoratorBase::isProcessingInput public function Determines if the form input will be processed. Overrides FormStateInterface::isProcessingInput
FormStateDecoratorBase::isProgrammed public function Returns if this form was submitted programmatically. Overrides FormStateInterface::isProgrammed
FormStateDecoratorBase::isRebuilding public function Determines if the form should be rebuilt after processing. Overrides FormStateInterface::isRebuilding
FormStateDecoratorBase::isRedirectDisabled public function Determines if redirecting has been prevented. Overrides FormStateInterface::isRedirectDisabled
FormStateDecoratorBase::isSubmitted public function Determines if the form has been submitted. Overrides FormStateInterface::isSubmitted
FormStateDecoratorBase::isValidationComplete public function Determines if validation has been completed. Overrides FormStateInterface::isValidationComplete
FormStateDecoratorBase::isValidationEnforced public function Checks if validation is enforced. Overrides FormStateInterface::isValidationEnforced
FormStateDecoratorBase::loadInclude public function Ensures an include file is loaded whenever the form is processed. Overrides FormStateInterface::loadInclude
FormStateDecoratorBase::prepareCallback public function Converts support notations for a form callback to a valid callable. Overrides FormStateInterface::prepareCallback
FormStateDecoratorBase::set public function Sets a value to an arbitrary property. Overrides FormStateInterface::set
FormStateDecoratorBase::setAlwaysProcess public function Sets this form to always be processed. Overrides FormStateInterface::setAlwaysProcess
FormStateDecoratorBase::setBuildInfo public function Sets the build info for the form. Overrides FormStateInterface::setBuildInfo
FormStateDecoratorBase::setButtons public function Stores the submit and button elements for the form. Overrides FormStateInterface::setButtons
FormStateDecoratorBase::setCached public function Sets this form to be cached. Overrides FormStateInterface::setCached
FormStateDecoratorBase::setCleanValueKeys public function Sets the keys of the form values that will be cleaned. Overrides FormStateInterface::setCleanValueKeys
FormStateDecoratorBase::setCompleteForm public function Stores the complete form array. Overrides FormStateInterface::setCompleteForm
FormStateDecoratorBase::setError public function Flags an element as having an error. Overrides FormStateInterface::setError
FormStateDecoratorBase::setExecuted public function Sets that the form was submitted and has been processed and executed. Overrides FormStateInterface::setExecuted
FormStateDecoratorBase::setFormObject public function Sets the form object that is responsible for building this form. Overrides FormStateInterface::setFormObject
FormStateDecoratorBase::setFormState public function Sets the value of the form state. Overrides FormStateInterface::setFormState
FormStateDecoratorBase::setGroups public function Sets references to details elements to render them within vertical tabs. Overrides FormStateInterface::setGroups
FormStateDecoratorBase::setHasFileElement public function Sets that this form has a file element. Overrides FormStateInterface::setHasFileElement
FormStateDecoratorBase::setInvalidToken public function Flags the form state as having or not an invalid token. Overrides FormStateInterface::setInvalidToken
FormStateDecoratorBase::setMethod public function Sets the HTTP method to use for the form's submission. Overrides FormStateInterface::setMethod
FormStateDecoratorBase::setProcessInput public function Sets that the form should process input. Overrides FormStateInterface::setProcessInput
FormStateDecoratorBase::setProgrammed public function Sets that this form was submitted programmatically. Overrides FormStateInterface::setProgrammed
FormStateDecoratorBase::setProgrammedBypassAccessCheck public function Sets if this form submission should bypass #access. Overrides FormStateInterface::setProgrammedBypassAccessCheck
FormStateDecoratorBase::setRebuild public function Sets the form to be rebuilt after processing. Overrides FormStateInterface::setRebuild
FormStateDecoratorBase::setRebuildInfo public function Sets the rebuild info. Overrides FormStateInterface::setRebuildInfo
FormStateDecoratorBase::setRedirect public function Sets the redirect for the form. Overrides FormStateInterface::setRedirect
FormStateDecoratorBase::setRedirectUrl public function Sets the redirect URL for the form. Overrides FormStateInterface::setRedirectUrl
FormStateDecoratorBase::setRequestMethod public function Sets the HTTP method used by the request that is building the form. Overrides FormStateInterface::setRequestMethod
FormStateDecoratorBase::setResponse public function Sets a response for this form. Overrides FormStateInterface::setResponse
FormStateDecoratorBase::setStorage public function Sets the entire set of arbitrary data. Overrides FormStateInterface::setStorage
FormStateDecoratorBase::setSubmitHandlers public function Sets the submit handlers. Overrides FormStateInterface::setSubmitHandlers
FormStateDecoratorBase::setSubmitted public function Sets that the form has been submitted. Overrides FormStateInterface::setSubmitted
FormStateDecoratorBase::setTemporary public function Sets temporary data. Overrides FormStateInterface::setTemporary
FormStateDecoratorBase::setTemporaryValue public function Sets an arbitrary value in temporary storage. Overrides FormStateInterface::setTemporaryValue
FormStateDecoratorBase::setTriggeringElement public function Sets the form element that triggered submission. Overrides FormStateInterface::setTriggeringElement
FormStateDecoratorBase::setUserInput public function Sets the form values as though they were submitted by a user. Overrides FormStateInterface::setUserInput
FormStateDecoratorBase::setValidateHandlers public function Sets the validate handlers. Overrides FormStateInterface::setValidateHandlers
FormStateDecoratorBase::setValidationComplete public function Sets that validation has been completed. Overrides FormStateInterface::setValidationComplete
FormStateDecoratorBase::setValidationEnforced public function Enforces that validation is run. Overrides FormStateInterface::setValidationEnforced
FormStateValuesTrait::getValue public function Implements \Drupal\Core\Form\FormStateInterface::getValue()
FormStateValuesTrait::hasValue public function Implements \Drupal\Core\Form\FormStateInterface::hasValue()
FormStateValuesTrait::isValueEmpty public function Implements \Drupal\Core\Form\FormStateInterface::isValueEmpty()
FormStateValuesTrait::setValue public function Implements \Drupal\Core\Form\FormStateInterface::setValue()
FormStateValuesTrait::setValueForElement public function Implements \Drupal\Core\Form\FormStateInterface::setValueForElement()
FormStateValuesTrait::setValues public function Implements \Drupal\Core\Form\FormStateInterface::setValues()
FormStateValuesTrait::unsetValue public function Implements \Drupal\Core\Form\FormStateInterface::unsetValue()
SubformState::$arrayParents protected property The array parents; i.e., where the sub-form is located in the parent.
SubformState::$parentForm protected property The parent form.
SubformState::$subform protected property The subform.
SubformState::createForSubform public static function Creates a new instance for a subform.
SubformState::createWithParents public static function Creates a new subform by specifying the array parents.
SubformState::getCompleteFormState public function Gets the complete form state. Overrides SubformStateInterface::getCompleteFormState
SubformState::getLimitValidationErrors public function Retrieves the limited validation error sections. Overrides FormStateDecoratorBase::getLimitValidationErrors
SubformState::getNewSubForm public static function Gets a new sub-form array.
SubformState::getParents protected function Gets the subform's parents relative to its parent form.
SubformState::getValues public function Implements \Drupal\Core\Form\FormStateInterface::getValues() Overrides FormStateValuesTrait::getValues
SubformState::setErrorByName public function Files an error against a form element. Overrides FormStateDecoratorBase::setErrorByName
SubformState::setLimitValidationErrors public function Sets the limited validation error sections. Overrides FormStateDecoratorBase::setLimitValidationErrors
SubformState::__construct protected function Constructs a new instance.