Actions
class Actions extends Container (View source)
Provides a wrapper element to group one or more buttons in a form.
Use of a single Actions element with an array key of 'actions' to group the primary submit buttons on a form helps to ensure proper styling in themes, and enables other modules to properly alter a form's actions.
Usage example:
Traits
Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.
Provides dependency injection friendly methods for serialization.
Provides a trait for the messenger service.
Constants
| DERIVATIVE_SEPARATOR |
A string which is used to separate base plugin IDs from the derivative ID. |
Properties
| protected string | $pluginId | The plugin_id. |
from PluginBase |
| protected array | $pluginDefinition | The plugin implementation definition. |
from PluginBase |
| protected array | $configuration | Configuration information passed into the plugin. |
from PluginBase |
| protected TranslationInterface | $stringTranslation | The string translation service. |
from StringTranslationTrait |
| protected array | $_serviceIds | An array of service IDs keyed by property name used for serialization. |
from DependencySerializationTrait |
| protected array | $_entityStorages | An array of entity type IDs keyed by the property name of their storages. |
from DependencySerializationTrait |
| protected MessengerInterface | $messenger | The messenger. |
from MessengerTrait |
Methods
Constructs a \Drupal\Component\Plugin\PluginBase object.
Translates a string to the current language or to a given language.
Formats a string containing a count of items.
Returns the number of plurals supported by a given language.
Gets the string translation service.
Sets a form element's class attribute.
Adds members of this group as actual elements for rendering.
Form element processing handler for the #ajax form property.
Adds Ajax information about an element to communicate with JavaScript.
Arranges elements into groups.
Returns the element properties for this element.
Processes a container element.
Prevents optional containers from rendering if they have no children.
Processes a form actions container element.
pre_render callback for #type 'actions'.
Details
__construct(array $configuration, string $plugin_id, mixed $plugin_definition)
Constructs a \Drupal\Component\Plugin\PluginBase object.
string
getPluginId()
Gets the plugin_id of the plugin instance.
string
getBaseId()
Gets the base_plugin_id of the plugin instance.
string|null
getDerivativeId()
Gets the derivative_id of the plugin instance.
array
getPluginDefinition()
Gets the definition of the plugin implementation.
bool
isConfigurable()
Determines if the plugin is configurable.
protected TranslatableMarkup
t(string $string, array $args = [], array $options = [])
Translates a string to the current language or to a given language.
See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.
In order for strings to be localized, make them available in one of the ways supported by the
protected
formatPlural($count, $singular, $plural, array $args = [], array $options = [])
Formats a string containing a count of items.
protected
getNumberOfPlurals($langcode = NULL)
Returns the number of plurals supported by a given language.
protected TranslationInterface
getStringTranslation()
Gets the string translation service.
$this
setStringTranslation(TranslationInterface $translation)
Sets the string translation service to use.
__sleep()
{@inheritdoc}
__wakeup()
{@inheritdoc}
setMessenger(MessengerInterface $messenger)
Sets the messenger.
MessengerInterface
messenger()
Gets the messenger.
static
setAttributes(array $element, array $class = [])
Sets a form element's class attribute.
Adds 'required' and 'error' classes as needed.
static array
preRenderGroup(array $element)
Adds members of this group as actual elements for rendering.
static array
processAjaxForm(array $element, FormStateInterface $form_state, array $complete_form)
Form element processing handler for the #ajax form property.
This method is useful for non-input elements that can be used in and outside the context of a form.
static array
preRenderAjaxForm(array $element)
Adds Ajax information about an element to communicate with JavaScript.
If #ajax is set on an element, this additional JavaScript is added to the page header to attach the Ajax behaviors. See ajax.js for more information.
static array
processGroup(array $element, FormStateInterface $form_state, array $complete_form)
Arranges elements into groups.
This method is useful for non-input elements that can be used in and outside the context of a form.
array
getInfo()
Returns the element properties for this element.
static array
processContainer(array $element, FormStateInterface $form_state, array $complete_form)
Processes a container element.
static array
preRenderContainer(array $element)
Prevents optional containers from rendering if they have no children.
static array
processActions(array $element, FormStateInterface $form_state, array $complete_form)
Processes a form actions container element.
static array
preRenderActionsDropbutton(array $element, FormStateInterface $form_state, array $complete_form)
pre_render callback for #type 'actions'.
This callback iterates over all child elements of the #type 'actions' container to look for elements with a #dropbutton property, so as to group those elements into dropbuttons. As such, it works similar to #group, but is specialized for dropbuttons.
The value of #dropbutton denotes the dropbutton to group the child element into. For example, two different values of 'foo' and 'bar' on child elements would generate two separate dropbuttons, which each contain the corresponding buttons.