You are here

InputButton.php in Express 8

File

themes/contrib/bootstrap/src/Plugin/Preprocess/InputButton.php
View source
<?php

/**
 * @file
 * Contains \Drupal\bootstrap\Plugin\Preprocess\InputButton.
 */
namespace Drupal\bootstrap\Plugin\Preprocess;

use Drupal\bootstrap\Annotation\BootstrapPreprocess;
use Drupal\bootstrap\Utility\Element;
use Drupal\bootstrap\Utility\Variables;

/**
 * Pre-processes variables for the "input__button" theme hook.
 *
 * @ingroup plugins_preprocess
 *
 * @BootstrapPreprocess("input__button")
 */
class InputButton extends Input implements PreprocessInterface {

  /**
   * {@inheritdoc}
   */
  public function preprocessElement(Element $element, Variables $variables) {
    $element
      ->colorize();
    $element
      ->setButtonSize();
    $element
      ->setIcon($element
      ->getProperty('icon'));
    $variables['icon_only'] = $element
      ->getProperty('icon_only');
    $variables['icon_position'] = $element
      ->getProperty('icon_position');
    $variables['label'] = $element
      ->getProperty('value');
    if ($element
      ->getProperty('split')) {
      $variables
        ->map([
        $variables::SPLIT_BUTTON,
      ]);
    }
    parent::preprocessElement($element, $variables);
  }

}

Classes

Namesort descending Description
InputButton Pre-processes variables for the "input__button" theme hook.