class CustomTextComponentType in Flexiform 8
Plugin for field widget component types.
Plugin annotation
@FormComponentType(
id = "custom_text",
label = @Translation("Custom Text"),
component_class = "Drupal\flexiform\Plugin\FormComponentType\CustomTextComponent",
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\flexiform\FormComponent\FormComponentTypeBase implements FormComponentTypeInterface
- class \Drupal\flexiform\FormComponent\FormComponentTypeCreateableBase implements FormComponentTypeCreateableInterface
- class \Drupal\flexiform\Plugin\FormComponentType\CustomTextComponentType
- class \Drupal\flexiform\FormComponent\FormComponentTypeCreateableBase implements FormComponentTypeCreateableInterface
- class \Drupal\flexiform\FormComponent\FormComponentTypeBase implements FormComponentTypeInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of CustomTextComponentType
File
- src/
Plugin/ FormComponentType/ CustomTextComponentType.php, line 20
Namespace
Drupal\flexiform\Plugin\FormComponentTypeView source
class CustomTextComponentType extends FormComponentTypeCreateableBase {
/**
* {@inheritdoc}
*/
public function componentRows(EntityDisplayFormBase $form_object, array $form, FormStateInterface $form_state) {
$rows = [];
foreach ($this
->getFormDisplay()
->getComponents() as $component_name => $options) {
if (isset($options['component_type']) && $options['component_type'] == $this
->getPluginId()) {
$rows[$component_name] = $this
->buildComponentRow($form_object, $component_name, $form, $form_state);
}
}
return $rows;
}
/**
* {@inheritdoc}
*/
public function addComponentForm(array $form, FormStateInterface $form_state) {
$form['content'] = [
'#title' => t('Content'),
'#type' => 'text_format',
'#required' => TRUE,
];
if (\Drupal::moduleHandler()
->moduleExists('token')) {
$tree = [];
$token_info = \Drupal::service('flexiform.token')
->getInfo();
/** @var TreeBuilderInterface $tree_builder */
$tree_builder = \Drupal::service('flexiform.token.tree_builder');
foreach ($this
->getFormEntityManager($form, $form_state)
->getContextDefinitions() as $namespace => $context_definition) {
$entity_type_id = $context_definition
->getDataType();
list(, $entity_type_id) = explode(':', $entity_type_id, 2);
if ($namespace == '') {
$namespace = 'base_entity';
}
$entity_type = \Drupal::entityTypeManager()
->getDefinition($entity_type_id);
$token_type = $entity_type
->get('token_type') ?: (!empty($token_info['types'][$entity_type_id]) ? $entity_type_id : FALSE);
if ($token_type) {
$tree[$namespace] = $token_info['types'][$token_type];
$tree[$namespace]['tokens'] = $tree_builder
->buildTree($token_type, [
'parents' => [
$namespace,
],
]);
}
}
$form['tokens'] = [
'#type' => 'token_tree_table',
'#token_tree' => $tree,
'#show_restricted' => TRUE,
'#theme_wrappers' => [
'form_element',
],
];
}
return $form;
}
/**
* {@inheritdoc}
*/
public function addComponentFormSubmit(array $form, FormStateInterface $form_state) {
$options = $form_state
->getValue($form['#parents']);
$options['format'] = $options['content']['format'];
$options['content'] = $options['content']['value'];
$form_state
->setValue($form['#parents'], $options);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
CustomTextComponentType:: |
public | function |
Get a form for adding a component of this type. Overrides FormComponentTypeCreateableBase:: |
|
CustomTextComponentType:: |
public | function |
Submit the add component options form. Overrides FormComponentTypeCreateableBase:: |
|
CustomTextComponentType:: |
public | function |
Overrides FormComponentTypeBase:: |
|
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
FormComponentTypeBase:: |
protected | property | A list of components that have been constructed. | |
FormComponentTypeBase:: |
protected | property | The form display. | |
FormComponentTypeBase:: |
protected | property | The form entity manager. | |
FormComponentTypeBase:: |
protected | function | Build a component row for a component of this type. | 1 |
FormComponentTypeBase:: |
protected | function | Get applicable renderer plugin options. | 1 |
FormComponentTypeBase:: |
public | function |
Get a component object. Overrides FormComponentTypeInterface:: |
2 |
FormComponentTypeBase:: |
protected | function | Get the default renderer plugin. | 1 |
FormComponentTypeBase:: |
public | function |
Get the form display. Overrides FormComponentTypeInterface:: |
|
FormComponentTypeBase:: |
public | function |
Get the form entity manager. Overrides FormComponentTypeInterface:: |
|
FormComponentTypeBase:: |
public | function |
Set the form display. Overrides FormComponentTypeInterface:: |
|
FormComponentTypeBase:: |
public | function | ||
FormComponentTypeBase:: |
public | function | 1 | |
FormComponentTypeCreateableBase:: |
public | function |
Validate the add component form. Overrides FormComponentTypeCreateableInterface:: |
|
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
PluginBase:: |
public | function | Constructs a \Drupal\Component\Plugin\PluginBase object. | 92 |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. |