View source
<?php
namespace Drupal\openlayers\Plugin\OpenlayersControl;
use Drupal\Component\Utility\Color;
use Drupal\Component\Utility\Rectangle;
use Drupal\Core\Form\FormStateInterface;
use Drupal\openlayers\OpenlayersConfigurablePluginBase;
class ScaleLine extends OpenlayersConfigurablePluginBase {
public function getSummary() {
$summary = [
'#theme' => 'openlayers_control_summary',
'#data' => $this->configuration,
];
$summary += parent::getSummary();
return $summary;
}
public function defaultConfiguration() {
return [
'className' => 'ol-scale-line',
];
}
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
$form['className'] = [
'#type' => 'textfield',
'#default_value' => $this->configuration['className'],
'#title' => t('Class name'),
'#description' => t('CSS class name.'),
'#size' => 50,
'#maxlength' => 50,
'#required' => FALSE,
];
$form['collapsible'] = array(
'#type' => 'checkbox',
'#title' => $this
->t('Collapsible'),
'#description' => t('Specify if attributions can be collapsed.'),
);
$form['collapsed'] = array(
'#type' => 'checkbox',
'#title' => $this
->t('Collapsed'),
'#description' => t('Specify if attributions should be collapsed at startup.'),
);
$form['tipLabel'] = [
'#type' => 'textfield',
'#title' => t('Tip label'),
'#description' => t('Text label to use for the button tip.'),
'#size' => 100,
'#maxlength' => 100,
'#required' => FALSE,
];
$form['label'] = [
'#type' => 'textfield',
'#title' => t('Label'),
'#description' => t('Text label to use for the collapsed attributions button.'),
'#size' => 100,
'#maxlength' => 100,
'#required' => FALSE,
];
$form['collapseLabel'] = [
'#type' => 'textfield',
'#title' => t('Collapse label'),
'#description' => t('Text label to use for the expanded attributions button.'),
'#size' => 100,
'#maxlength' => 100,
'#required' => FALSE,
];
return $form;
}
public function validateConfigurationForm(array &$form, FormStateInterface $form_state) {
}
public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
parent::submitConfigurationForm($form, $form_state);
$this->configuration['className'] = $form_state
->getValue('className');
}
}