interface PluginFormInterface
Same name in other branches
- 8.9.x core/lib/Drupal/Core/Plugin/PluginFormInterface.php \Drupal\Core\Plugin\PluginFormInterface
- 10 core/lib/Drupal/Core/Plugin/PluginFormInterface.php \Drupal\Core\Plugin\PluginFormInterface
- 11.x core/lib/Drupal/Core/Plugin/PluginFormInterface.php \Drupal\Core\Plugin\PluginFormInterface
Provides an interface for an embeddable plugin form.
Plugins can implement this form directly, or a standalone class can be used. Decoupled forms can implement \Drupal\Component\Plugin\PluginAwareInterface in order to gain access to the plugin.
Hierarchy
- interface \Drupal\Core\Plugin\PluginFormInterface
Expanded class hierarchy of PluginFormInterface
All classes that implement PluginFormInterface
Related topics
29 files declare their use of PluginFormInterface
- ActionFormBase.php in core/
modules/ action/ src/ Form/ ActionFormBase.php - AggregatorPluginSettingsBase.php in core/
modules/ aggregator/ src/ Plugin/ AggregatorPluginSettingsBase.php - BlockPluginInterface.php in core/
lib/ Drupal/ Core/ Block/ BlockPluginInterface.php - ChooseSectionController.php in core/
modules/ layout_builder/ src/ Controller/ ChooseSectionController.php - CKEditor5PluginConfigurableInterface.php in core/
modules/ ckeditor5/ src/ Plugin/ CKEditor5PluginConfigurableInterface.php
File
-
core/
lib/ Drupal/ Core/ Plugin/ PluginFormInterface.php, line 16
Namespace
Drupal\Core\PluginView source
interface PluginFormInterface {
/**
* Form constructor.
*
* Plugin forms are embedded in other forms. In order to know where the plugin
* form is located in the parent form, #parents and #array_parents must be
* known, but these are not available during the initial build phase. In order
* to have these properties available when building the plugin form's
* elements, let this method return a form element that has a #process
* callback and build the rest of the form in the callback. By the time the
* callback is executed, the element's #parents and #array_parents properties
* will have been set by the form API. For more documentation on #parents and
* #array_parents, see \Drupal\Core\Render\Element\FormElement.
*
* @param array $form
* An associative array containing the initial structure of the plugin form.
* @param \Drupal\Core\Form\FormStateInterface $form_state
* The current state of the form. Calling code should pass on a subform
* state created through
* \Drupal\Core\Form\SubformState::createForSubform().
*
* @return array
* The form structure.
*/
public function buildConfigurationForm(array $form, FormStateInterface $form_state);
/**
* Form validation handler.
*
* @param array $form
* An associative array containing the structure of the plugin form as built
* by static::buildConfigurationForm().
* @param \Drupal\Core\Form\FormStateInterface $form_state
* The current state of the form. Calling code should pass on a subform
* state created through
* \Drupal\Core\Form\SubformState::createForSubform().
*/
public function validateConfigurationForm(array &$form, FormStateInterface $form_state);
/**
* Form submission handler.
*
* @param array $form
* An associative array containing the structure of the plugin form as built
* by static::buildConfigurationForm().
* @param \Drupal\Core\Form\FormStateInterface $form_state
* The current state of the form. Calling code should pass on a subform
* state created through
* \Drupal\Core\Form\SubformState::createForSubform().
*/
public function submitConfigurationForm(array &$form, FormStateInterface $form_state);
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overrides |
---|---|---|---|---|
PluginFormInterface::buildConfigurationForm | public | function | Form constructor. | 33 |
PluginFormInterface::submitConfigurationForm | public | function | Form submission handler. | 31 |
PluginFormInterface::validateConfigurationForm | public | function | Form validation handler. | 17 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.