class LayoutTestPlugin in Drupal 9
Same name and namespace in other branches
- 8 core/modules/system/tests/modules/layout_test/src/Plugin/Layout/LayoutTestPlugin.php \Drupal\layout_test\Plugin\Layout\LayoutTestPlugin
The plugin that handles the default layout template.
Plugin annotation
@Layout(
id = "layout_test_plugin",
label = @Translation("Layout plugin (with settings)"),
category = @Translation("Layout test"),
description = @Translation("Test layout"),
template = "templates/layout-test-plugin",
regions = {
"main" = {
"label" = @Translation("Main Region")
}
}
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\Core\Layout\LayoutDefault implements LayoutInterface, PluginFormInterface uses ContextAwarePluginAssignmentTrait, ContextAwarePluginTrait
- class \Drupal\layout_test\Plugin\Layout\LayoutTestPlugin implements PluginFormInterface
- class \Drupal\Core\Layout\LayoutDefault implements LayoutInterface, PluginFormInterface uses ContextAwarePluginAssignmentTrait, ContextAwarePluginTrait
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of LayoutTestPlugin
File
- core/
modules/ system/ tests/ modules/ layout_test/ src/ Plugin/ Layout/ LayoutTestPlugin.php, line 25
Namespace
Drupal\layout_test\Plugin\LayoutView source
class LayoutTestPlugin extends LayoutDefault implements PluginFormInterface {
/**
* {@inheritdoc}
*/
public function defaultConfiguration() {
return [
'setting_1' => 'Default',
];
}
/**
* {@inheritdoc}
*/
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
$form['setting_1'] = [
'#type' => 'textfield',
'#title' => 'Blah',
'#default_value' => $this->configuration['setting_1'],
];
return $form;
}
/**
* {@inheritdoc}
*/
public function validateConfigurationForm(array &$form, FormStateInterface $form_state) {
if ($form_state
->getValue('setting_1') === 'Test Validation Error Message') {
$form_state
->setErrorByName('setting_1', 'Validation Error Message');
}
}
/**
* {@inheritdoc}
*/
public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
$this->configuration['setting_1'] = $form_state
->getValue('setting_1');
}
}