You are here

interface MapThemerInterface in Geofield Map 8.2

Provides an interface for Geofield Map Themers plugins.

Geofield Map Themers are plugins that allow to differentiate map elements (markers, poly-lines, polygons) based on specific dynamic logics .

Hierarchy

Expanded class hierarchy of MapThemerInterface

All classes that implement MapThemerInterface

1 file declares its use of MapThemerInterface
GeofieldMapLegend.php in src/Plugin/Block/GeofieldMapLegend.php

File

src/MapThemerInterface.php, line 16

Namespace

Drupal\geofield_map
View source
interface MapThemerInterface extends PluginInspectionInterface {

  /**
   * Get the MapThemer name property.
   *
   * @return string
   *   The MapThemer name.
   */
  public function getName();

  /**
   * Get the MapThemer description property.
   *
   * @return string
   *   The MapThemer description.
   */
  public function getDescription();

  /**
   * Get the defaultSettings for the Map Themer Plugin.
   *
   * @param string $k
   *   A specific defaultSettings key index.
   *
   * @return array|string
   *   The defaultSettings to be returned.
   */
  public function defaultSettings($k = NULL);

  /**
   * Provides a Map Themer Options Element.
   *
   * @param array $defaults
   *   The default values/settings.
   * @param array $form
   *   The form array.
   * @param \Drupal\Core\Form\FormStateInterface $form_state
   *   The form state.
   * @param \Drupal\geofield_map\Plugin\views\style\GeofieldGoogleMapViewStyle $geofieldMapView
   *   The Geofield Map View display object.
   *
   * @return array
   *   The Map Themer Options Element
   */
  public function buildMapThemerElement(array $defaults, array &$form, FormStateInterface $form_state, GeofieldGoogleMapViewStyle $geofieldMapView);

  /**
   * Retrieve the icon for theming definition.
   *
   * @param array $datum
   *   The geometry feature array definition.
   * @param \Drupal\geofield_map\Plugin\views\style\GeofieldGoogleMapViewStyle $geofieldMapView
   *   The Geofield Map View dispaly object.
   * @param \Drupal\Core\Entity\EntityInterface $entity
   *   The entity generating the datum.
   * @param mixed $map_theming_values
   *   The Map themer mapping values.
   *
   * @return mixed
   *   The icon definition.
   */
  public function getIcon(array $datum, GeofieldGoogleMapViewStyle $geofieldMapView, EntityInterface $entity, $map_theming_values);

  /**
   * Generate the Legend render array.
   *
   * @param array $map_theming_values
   *   The Map themer mapping values.
   * @param array $configuration
   *   The legend block configuration array.
   *
   * @return mixed
   *   The icon definition.
   */
  public function getLegend(array $map_theming_values, array $configuration = []);

}

Members

Namesort descending Modifiers Type Description Overrides
MapThemerInterface::buildMapThemerElement public function Provides a Map Themer Options Element. 4
MapThemerInterface::defaultSettings public function Get the defaultSettings for the Map Themer Plugin. 1
MapThemerInterface::getDescription public function Get the MapThemer description property. 1
MapThemerInterface::getIcon public function Retrieve the icon for theming definition. 4
MapThemerInterface::getLegend public function Generate the Legend render array. 4
MapThemerInterface::getName public function Get the MapThemer name property. 1
PluginInspectionInterface::getPluginDefinition public function Gets the definition of the plugin implementation. 4
PluginInspectionInterface::getPluginId public function Gets the plugin_id of the plugin instance. 2