class Random in Openlayers 7.3
Same name in this branch
- 7.3 modules/openlayers_library/src/Plugin/Style/Random/Random.php \Drupal\openlayers_library\Plugin\Style\Random\Random
- 7.3 modules/openlayers_library/src/Plugin/Source/Random/Random.php \Drupal\openlayers_library\Plugin\Source\Random\Random
Class Random.
Plugin annotation
@OpenlayersPlugin(
id = "Random"
)
Hierarchy
- class \Drupal\openlayers\Types\Base extends \Drupal\Component\Plugin\PluginBase implements ObjectInterface
- class \Drupal\openlayers\Types\Source implements SourceInterface
- class \Drupal\openlayers_library\Plugin\Source\Random\Random
- class \Drupal\openlayers\Types\Source implements SourceInterface
Expanded class hierarchy of Random
File
- modules/
openlayers_library/ src/ Plugin/ Source/ Random/ Random.php, line 18 - Source: Random.
Namespace
Drupal\openlayers_library\Plugin\Source\RandomView source
class Random extends Source {
/**
* {@inheritdoc}
*/
public function optionsForm(array &$form, array &$form_state) {
foreach (Openlayers::getGeometryTypes() as $geometry_type => $geometry) {
if (!in_array($geometry_type, array(
'Point',
'LineString',
'Polygon',
))) {
continue;
}
$enabled = (bool) $this
->getOption(array(
$geometry_type,
'count',
), FALSE);
$form['options'][$geometry_type] = array(
'#type' => 'fieldset',
'#title' => t('Geometry @geometry', array(
'@geometry' => $geometry,
)),
'#collapsible' => TRUE,
'#collapsed' => !$enabled,
);
$form['options'][$geometry_type]['count'] = array(
'#type' => 'textfield',
'#title' => t('Number of features'),
'#default_value' => $this
->getOption(array(
$geometry_type,
'count',
), 0),
'#required' => TRUE,
);
$form['options'][$geometry_type]['setRandomStyle'] = array(
'#type' => 'checkbox',
'#title' => t('Set random style on features ?'),
'#default_value' => $this
->getOption(array(
$geometry_type,
'setRandomStyle',
), 0),
);
$form['options'][$geometry_type]['styles'] = array(
'#type' => 'select',
'#title' => t('Styles'),
'#empty_option' => t('- Select the Styles -'),
'#default_value' => $this
->getOption(array(
$geometry_type,
'styles',
), array()),
'#description' => t('Select the styles.'),
'#options' => Openlayers::loadAllAsOptions('Style'),
'#multiple' => TRUE,
'#states' => array(
'visible' => array(
'input[name="options[' . $geometry_type . '][setRandomStyle]"' => array(
'checked' => TRUE,
),
),
),
);
}
}
/**
* {@inheritdoc}
*/
public function optionsFormSubmit(array $form, array &$form_state) {
parent::optionsFormSubmit($form, $form_state);
$options = $this
->getOptions();
foreach ($options as $geometry_type => $data) {
if ($data['setRandomStyle'] != 1) {
unset($options[$geometry_type]['styles']);
unset($options[$geometry_type]['setRandomStyle']);
}
if ($data['count'] == 0) {
unset($options[$geometry_type]);
}
}
$this
->setOptions($options);
$form_state['values']['options'] = $options;
parent::optionsFormSubmit($form, $form_state);
}
/**
* {@inheritdoc}
*/
public function optionsToObjects() {
$import = parent::optionsToObjects();
foreach ($this
->getOptions() as $geometry_type => $data) {
if ($styles = $this
->getOption(array(
$geometry_type,
'styles',
), array())) {
foreach ($styles as $style) {
$style = Openlayers::load('style', $style);
// This source is a dependency of the current one,
// we need a lighter weight.
$this
->setWeight($style
->getWeight() + 1);
$import = array_merge($style
->getCollection()
->getFlatList(), $import);
}
}
}
return $import;
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
Base:: |
protected | property | Holds all the attachment used by this object. | 6 |
Base:: |
protected | property | Holds the Collection object. | |
Base:: |
protected | property | A unique ID for the object. | |
Base:: |
public | function |
Add an object into the collection of the parent object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Returns a list of attachments for building the render array. Overrides ObjectInterface:: |
6 |
Base:: |
public | function |
Remove an option. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Defines dependencies. Overrides ObjectInterface:: |
3 |
Base:: |
public | function |
Returns the path to the plugin directory. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Returns the path to the class file. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the Collection object linked to the object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the object configuration. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return all the dependencies objects of the parent object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the description of the object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return an object, CTools Exportable. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the Factory Service of the object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the object unique ID. Overrides ObjectInterface:: |
|
Base:: |
public | function |
!Attention! This function will remove any option that is named after a
plugin type e.g.: layers, controls, styles, interactions, components . Overrides ObjectInterface:: |
6 |
Base:: |
public | function |
Return the unique machine name of the object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the human name of the object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return an array of OL objects indexed by their type. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Returns an option. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the options array. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Returns an array with the maps this object is attached on. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the description of the object's plugin. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Return the module that provides this plugin. Overrides ObjectInterface:: |
|
Base:: |
public | function |
The type of this object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Get the weight of an object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Refresh string translations. Overrides ObjectInterface:: |
1 |
Base:: |
public | function |
Initializes the object. Overrides ObjectInterface:: |
2 |
Base:: |
public | function |
Initializes the Collection,
Import objects from options,
Import the current object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Whether or not this object has to be processed asynchronously. Overrides ObjectInterface:: |
3 |
Base:: |
public | function |
Validation callback for the options form. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Invoked after an objects render array is built. Overrides ObjectInterface:: |
13 |
Base:: |
public | function |
Invoked before an objects render array is built. Overrides ObjectInterface:: |
4 |
Base:: |
public | function |
Remove an object from the collection. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Reset the object's Collection. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Set the Factory Service of the object. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Set the object ID. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Set an option. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Set the options array. Overrides ObjectInterface:: |
|
Base:: |
public | function |
Set the weight of an object. Overrides ObjectInterface:: |
|
Random:: |
public | function |
@TODO What is this return? If it is the form, why is form by reference? Overrides Base:: |
|
Random:: |
public | function |
Submit callback for the options form. Overrides Base:: |
|
Random:: |
public | function |
Return a flat array containing Openlayers Objects from the options array. Overrides Base:: |
|
Source:: |
protected | property |
The array containing the options. Overrides Base:: |