You are here

public function Title::settingsForm in Display Suite 8.4

Same name and namespace in other branches
  1. 8.2 src/Plugin/DsField/Title.php \Drupal\ds\Plugin\DsField\Title::settingsForm()
  2. 8.3 src/Plugin/DsField/Title.php \Drupal\ds\Plugin\DsField\Title::settingsForm()

The form that holds the settings for this plugin.

Parameters

array $form: The form definition array for the field configuration form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

Return value

array The renderable form array representing the entire configuration form.

Overrides DsFieldBase::settingsForm

File

src/Plugin/DsField/Title.php, line 15

Class

Title
Plugin that renders a title.

Namespace

Drupal\ds\Plugin\DsField

Code

public function settingsForm($form, FormStateInterface $form_state) {
  $config = $this
    ->getConfiguration();
  $settings['link'] = [
    '#type' => 'checkbox',
    '#title' => 'Link',
    '#default_value' => $config['link'],
  ];
  $settings['link class'] = [
    '#type' => 'textfield',
    '#title' => 'Link class',
    '#default_value' => $config['link class'],
    '#description' => $this
      ->t('Put a class on the link. Eg: btn btn-default'),
    '#states' => [
      'visible' => [
        ':input[name="fields[node_title][settings_edit_form][settings][link]"]' => [
          'checked' => TRUE,
        ],
      ],
    ],
  ];
  $settings['wrapper'] = [
    '#type' => 'textfield',
    '#title' => 'Wrapper',
    '#default_value' => $config['wrapper'],
    '#description' => $this
      ->t('Eg: h1, h2, p'),
  ];
  $settings['class'] = [
    '#type' => 'textfield',
    '#title' => 'Class',
    '#default_value' => $config['class'],
    '#description' => $this
      ->t('Put a class on the wrapper. Eg: block-title'),
  ];
  return $settings;
}