class FieldWidget

Same name and namespace in other branches
  1. 11.x core/lib/Drupal/Core/Field/Attribute/FieldWidget.php \Drupal\Core\Field\Attribute\FieldWidget
  2. 11.x core/lib/Drupal/Core/Field/Annotation/FieldWidget.php \Drupal\Core\Field\Annotation\FieldWidget
  3. 10 core/lib/Drupal/Core/Field/Attribute/FieldWidget.php \Drupal\Core\Field\Attribute\FieldWidget
  4. 10 core/lib/Drupal/Core/Field/Annotation/FieldWidget.php \Drupal\Core\Field\Annotation\FieldWidget
  5. 8.9.x core/lib/Drupal/Core/Field/Annotation/FieldWidget.php \Drupal\Core\Field\Annotation\FieldWidget

Defines a FieldWidget annotation object.

Widgets handle how fields are displayed in edit forms.

Additional annotation keys for widgets can be defined in hook_field_widget_info_alter().

Hierarchy

Expanded class hierarchy of FieldWidget

See also

\Drupal\Core\Field\WidgetPluginManager

\Drupal\Core\Field\WidgetInterface

Related topics

35 classes are annotated with FieldWidget
BooleanCheckboxWidget in core/lib/Drupal/Core/Field/Plugin/Field/FieldWidget/BooleanCheckboxWidget.php
Plugin implementation of the 'boolean_checkbox' widget.
CommentWidget in core/modules/comment/src/Plugin/Field/FieldWidget/CommentWidget.php
Provides a default comment widget.
DateRangeDatelistWidget in core/modules/datetime_range/src/Plugin/Field/FieldWidget/DateRangeDatelistWidget.php
Plugin implementation of the 'daterange_datelist' widget.
DateRangeDefaultWidget in core/modules/datetime_range/src/Plugin/Field/FieldWidget/DateRangeDefaultWidget.php
Plugin implementation of the 'daterange_default' widget.
DateTimeDatelistWidget in core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDatelistWidget.php
Plugin implementation of the 'datetime_datelist' widget.

... See full list

File

core/lib/Drupal/Core/Field/Annotation/FieldWidget.php, line 22

Namespace

Drupal\Core\Field\Annotation
View source
class FieldWidget extends Plugin {
  
  /**
   * The plugin ID.
   *
   * @var string
   */
  public $id;
  
  /**
   * The human-readable name of the widget type.
   *
   * @ingroup plugin_translatable
   *
   * @var \Drupal\Core\Annotation\Translation
   */
  public $label;
  
  /**
   * A short description of the widget type.
   *
   * @ingroup plugin_translatable
   *
   * @var \Drupal\Core\Annotation\Translation
   */
  public $description;
  
  /**
   * The name of the widget class.
   *
   * This is not provided manually, it will be added by the discovery mechanism.
   *
   * @var string
   */
  public $class;
  
  /**
   * An array of field types the widget supports.
   *
   * @var array
   */
  public $field_types = [];
  
  /**
   * Does the field widget handles multiple values at once.
   *
   * @var bool
   */
  public $multiple_values = FALSE;
  
  /**
   * An integer to determine weight of this widget relative to other widgets.
   *
   * Other widgets are in the Field UI when selecting a widget for a given
   * field.
   *
   * This property is optional and it does not need to be declared.
   *
   * @var int
   */
  public $weight = NULL;

}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.