class SystemCompactLink in Zircon Profile 8.0
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Render/Element/SystemCompactLink.php \Drupal\Core\Render\Element\SystemCompactLink
Provides a link render element to show or hide inline help descriptions.
Plugin annotation
@RenderElement("system_compact_link");
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, StringTranslationTrait
- class \Drupal\Core\Render\Element\RenderElement implements ElementInterface
- class \Drupal\Core\Render\Element\Link
- class \Drupal\Core\Render\Element\SystemCompactLink
- class \Drupal\Core\Render\Element\Link
- class \Drupal\Core\Render\Element\RenderElement implements ElementInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, StringTranslationTrait
Expanded class hierarchy of SystemCompactLink
4 #type uses of SystemCompactLink
- RenderElementTypesTest::testSystemCompactLink in core/
modules/ system/ src/ Tests/ Common/ RenderElementTypesTest.php - Tests system #type 'system_compact_link'.
- template_preprocess_admin_page in core/
modules/ system/ system.admin.inc - Prepares variables for administrative index page templates.
- template_preprocess_system_admin_index in core/
modules/ system/ system.admin.inc - Prepares variables for admin index templates.
- UserPermissionsForm::buildForm in core/
modules/ user/ src/ Form/ UserPermissionsForm.php - Form constructor.
File
- core/
lib/ Drupal/ Core/ Render/ Element/ SystemCompactLink.php, line 18 - Contains \Drupal\Core\Render\Element\SystemCompactLink.
Namespace
Drupal\Core\Render\ElementView source
class SystemCompactLink extends Link {
/**
* {@inheritdoc}
*/
public function getInfo() {
$class = get_class($this);
return array(
'#pre_render' => array(
array(
$class,
'preRenderCompactLink',
),
array(
$class,
'preRenderLink',
),
),
'#theme_wrappers' => array(
'container' => array(
'#attributes' => array(
'class' => array(
'compact-link',
),
),
),
),
);
}
/**
* Pre-render callback: Renders a link into #markup.
*
* Doing so during pre_render gives modules a chance to alter the link parts.
*
* @param array $element
* A structured array whose keys form the arguments to Drupal::l():
* - #title: The link text to pass as argument to Drupal::l().
* - One of the following:
* - #route_name and (optionally) a #route_parameters array; The route
* name and route parameters which will be passed into the link
* generator.
* - #href: The system path or URL to pass as argument to Drupal::l().
* - #options: (optional) An array of options to pass to Drupal::l() or the
* link generator.
*
* @return array
* The passed-in element containing the system compact link default values.
*/
public static function preRenderCompactLink($element) {
// By default, link options to pass to l() are normally set in #options.
$element += array(
'#options' => array(),
);
if (system_admin_compact_mode()) {
$element['#title'] = t('Show descriptions');
$element['#url'] = BaseUrl::fromRoute('system.admin_compact_page', array(
'mode' => 'off',
));
$element['#options'] = array(
'attributes' => array(
'title' => t('Expand layout to include descriptions.'),
),
'query' => \Drupal::destination()
->getAsArray(),
);
}
else {
$element['#title'] = t('Hide descriptions');
$element['#url'] = BaseUrl::fromRoute('system.admin_compact_page', array(
'mode' => 'on',
));
$element['#options'] = array(
'attributes' => array(
'title' => t('Compress layout by hiding descriptions.'),
),
'query' => \Drupal::destination()
->getAsArray(),
);
}
$options = NestedArray::mergeDeep($element['#url']
->getOptions(), $element['#options']);
$element['#markup'] = \Drupal::l($element['#title'], $element['#url']
->setOptions($options));
return $element;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
Link:: |
public static | function | Pre-render callback: Renders a link into #markup. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 2 |
PluginBase:: |
protected | property | The plugin implementation definition. | |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Constructs a Drupal\Component\Plugin\PluginBase object. | 69 |
RenderElement:: |
public static | function | Adds Ajax information about an element to communicate with JavaScript. | |
RenderElement:: |
public static | function | Adds members of this group as actual elements for rendering. | |
RenderElement:: |
public static | function | Form element processing handler for the #ajax form property. | |
RenderElement:: |
public static | function | Arranges elements into groups. | |
RenderElement:: |
public static | function |
Sets a form element's class attribute. Overrides ElementInterface:: |
|
StringTranslationTrait:: |
protected | property | The string translation service. | |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
SystemCompactLink:: |
public | function |
Returns the element properties for this element. Overrides Link:: |
|
SystemCompactLink:: |
public static | function | Pre-render callback: Renders a link into #markup. |