RadioactivityFieldWidget.php in Radioactivity 8.2
File
src/Plugin/Field/FieldWidget/RadioactivityFieldWidget.phpView source
<?php
/**
* @file
* Contains \Drupal\radioactivity\Plugin\Field\FieldWidget\RadioactivityFieldWidget.
*/
namespace Drupal\radioactivity\Plugin\Field\FieldWidget;
use Drupal\Core\Field\FieldItemListInterface;
use Drupal\Core\Field\WidgetBase;
use Drupal\Core\Form\FormStateInterface;
/**
* Plugin implementation of the 'radioactivity_field_widget' widget.
*
* @FieldWidget(
* id = "radioactivity_field_widget",
* label = @Translation("Radioactivity field widget"),
* field_types = {
* "radioactivity"
* }
* )
*/
class RadioactivityFieldWidget extends WidgetBase {
/**
* {@inheritdoc}
*/
public static function defaultSettings() {
return array(
'energy' => 0.0,
'timestamp' => time(),
) + parent::defaultSettings();
}
/**
* {@inheritdoc}
*/
public function settingsForm(array $form, FormStateInterface $form_state) {
$elements = [];
/*
$elements['size'] = array(
'#type' => 'number',
'#title' => t('Size of textfield'),
'#default_value' => $this->getSetting('size'),
'#required' => TRUE,
'#min' => 1,
);
$elements['placeholder'] = array(
'#type' => 'textfield',
'#title' => t('Placeholder'),
'#default_value' => $this->getSetting('placeholder'),
'#description' => t('Text that will be shown inside the field until a value is entered. This hint is usually a sample value or a brief description of the expected format.'),
);
*/
return $elements;
}
/**
* {@inheritdoc}
*/
public function settingsSummary() {
$summary = [];
// $summary[] = t('Textfield size: !size', array('!size' => $this->getSetting('size')));
// if (!empty($this->getSetting('placeholder'))) {
// $summary[] = t('Placeholder: @placeholder', array('@placeholder' => $this->getSetting('placeholder')));
// }
return $summary;
}
/**
* {@inheritdoc}
*/
public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
$element = [];
$element['energy'] = $element + array(
'#type' => 'textfield',
'#pattern' => '[0-9\\.]*',
'#default_value' => isset($items[$delta]->energy) ? $items[$delta]->energy : 0,
);
// $element['timestamp'] = $element + array(
// '#type' => 'hidden',
// '#default_value' => timestamp();
// );
return $element;
}
}
Classes
Name | Description |
---|---|
RadioactivityFieldWidget | Plugin implementation of the 'radioactivity_field_widget' widget. |