protected EntityViewDisplayEditForm::buildFieldRow(FieldDefinitionInterface $field_definition, array $form, FormStateInterface $form_state)
Builds the table row structure for a single field.
Parameters
\Drupal\Core\Field\FieldDefinitionInterface $field_definition: The field definition.
array $form: An associative array containing the structure of the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
array A table row array.
Overrides EntityDisplayFormBase::buildFieldRow
File
- core/modules/field_ui/src/Form/EntityViewDisplayEditForm.php, line 35
Class
- EntityViewDisplayEditForm
- Edit form for the EntityViewDisplay entity type.
Namespace
Drupal\field_ui\Form
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | protected function buildFieldRow(FieldDefinitionInterface $field_definition , array $form , FormStateInterface $form_state ) { $field_row = parent::buildFieldRow( $field_definition , $form , $form_state ); $field_name = $field_definition ->getName(); $display_options = $this ->entity->getComponent( $field_name ); // Insert the label column. $label = array ( 'label' => array ( '#type' => 'select' , '#title' => $this ->t( 'Label display for @title' , array ( '@title' => $field_definition ->getLabel())), '#title_display' => 'invisible' , '#options' => $this ->getFieldLabelOptions(), '#default_value' => $display_options ? $display_options [ 'label' ] : 'above' , ), ); $label_position = array_search ( 'plugin' , array_keys ( $field_row )); $field_row = array_slice ( $field_row , 0, $label_position , TRUE) + $label + array_slice ( $field_row , $label_position , count ( $field_row ) - 1, TRUE); // Update the (invisible) title of the 'plugin' column. $field_row [ 'plugin' ][ '#title' ] = $this ->t( 'Formatter for @title' , array ( '@title' => $field_definition ->getLabel())); if (! empty ( $field_row [ 'plugin' ][ 'settings_edit_form' ]) && ( $plugin = $this ->entity->getRenderer( $field_name ))) { $plugin_type_info = $plugin ->getPluginDefinition(); $field_row [ 'plugin' ][ 'settings_edit_form' ][ 'label' ][ '#markup' ] = $this ->t( 'Format settings:' ) . ' <span class="plugin-name">' . $plugin_type_info [ 'label' ] . '</span>' ; } return $field_row ; } |
Please login to continue.