Package uk.ac.starlink.topcat.plot2

# Interface ZoneLayerManager

All Known Implementing Classes:
  `MatrixLayerManager`, `SingleZoneLayerManager`

public interface ZoneLayerManager
Abstraction for behaviour of controls that may work with multiple zones, form controls and styles.

Since:
  18 Aug 2023
Author:
  Mark Taylor

## Method Summary

Modifier and Type
Method
Description
`TopcatLayer[]`
`getLayers(uk.ac.starlink.ttools.plot2.Ganger<?,?> ganger)`
Returns the layers contributed by this control.
`Map<FormControl,List<uk.ac.starlink.ttools.plot2.PlotLayer>>`
`getLayersByControl(uk.ac.starlink.ttools.plot2.Ganger<?,?> ganger)`
Returns a map associating plot layers with form controls that are associated with this object.
`Map<RowSubset,List<uk.ac.starlink.ttools.plot.Style>>`
`getStylesBySubset()`
Returns a map associating plot styles with RowSubsets for the current configuration.
`boolean`
`hasLayers()`
Indicates whether this control will yield any layers in its current state.

## Method Details

### hasLayers

boolean hasLayers()
Indicates whether this control will yield any layers in its current state. It returns true if `getLayers` will return a non-empty array. False positives are best avoided, but permitted.

Returns:
  true if there is a non-zero number of layers

### getLayers

TopcatLayer[] getLayers(uk.ac.starlink.ttools.plot2.Ganger<?,?> ganger)
Returns the layers contributed by this control.

Parameters:
  `ganger` - ganger within which layers will be used
Returns:
  layers

### getStylesBySubset

Map<RowSubset,List<uk.ac.starlink.ttools.plot.Style>> getStylesBySubset()
Returns a map associating plot styles with RowSubsets for the current configuration.

Returns:
  ordered RowSubset->Styles map

### getLayersByControl

Map<FormControl,List<uk.ac.starlink.ttools.plot2.PlotLayer>> getLayersByControl(uk.ac.starlink.ttools.plot2.Ganger<?,?> ganger)
Returns a map associating plot layers with form controls that are associated with this object.

Parameters:
  `ganger` - ganger
Returns:
  FormControl->PlotLayers map