# Class DatalessLayerControl

java.lang.Object
uk.ac.starlink.topcat.plot2.TabberControl
uk.ac.starlink.topcat.plot2.ConfigControl
uk.ac.starlink.topcat.plot2.SingleZoneLayerControl
uk.ac.starlink.topcat.plot2.DatalessLayerControl

All Implemented Interfaces:
  `Configger, Control, LayerControl`

public class DatalessLayerControl extends SingleZoneLayerControl
Minimal LayerControl implementation. Suitable for basic plotters with no table data, so no coordpanels required. Currently, no legend entries are reported either.

Since:
  10 Apr 2017
Author:
  Mark Taylor

## Constructor Summary

Constructors
Constructor
Description
`DatalessLayerControl(uk.ac.starlink.ttools.plot2.Plotter<?> plotter, uk.ac.starlink.ttools.plot2.config.Specifier<ZoneId> zsel, Configger baseConfigger)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`String`
`getCoordLabel(String userCoordName)`
Returns a text label associated with one of the user coords for this control, typically the name of the column or expression supplying the data.
`uk.ac.starlink.ttools.plot2.LegendEntry[]`
`getLegendEntries()`
Returns legend entries associated with this control.
`uk.ac.starlink.ttools.plot2.Plotter<?>[]`
`getPlotters()`
Returns a list of the plotters that will be used by this control to create layers.
`protected SingleZoneLayer`
`getSingleZoneLayer()`
Returns the layer produced by this control.
`TablesListComboBox`
`getTableSelector()`
Returns the selection widget for choosing which table this control is working with.
`uk.ac.starlink.ttools.plot2.config.Specifier<ZoneId>`
`getZoneSpecifier()`
Returns a specifier that determines which zone of a multi-zone plot this control's layers will be displayed in.

### Methods inherited from class SingleZoneLayerControl

`getLayers, hasLayers, submitReports`

### Methods inherited from class ConfigControl

`addSpecifierTab, getConfig, getConfigSpecifiers`

### Methods inherited from class TabberControl

`addActionListener, addControlTab, addZoneTab, getActionForwarder, getControlIcon, getControlLabel, getPanel, getTabber, removeActionListener`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface Control

`addActionListener, getControlIcon, getControlLabel, getPanel, removeActionListener`

## Constructor Details

### DatalessLayerControl

public DatalessLayerControl(uk.ac.starlink.ttools.plot2.Plotter<?> plotter, uk.ac.starlink.ttools.plot2.config.Specifier<ZoneId> zsel, Configger baseConfigger)
Constructor.

Parameters:
  `plotter` - plotter
  `zsel` - zone id specifier, may be null for single-zone case
  `baseConfigger` - provides global configuration info

## Method Details

### getPlotters

public uk.ac.starlink.ttools.plot2.Plotter<?>[] getPlotters()
Description copied from interface: `LayerControl`
Returns a list of the plotters that will be used by this control to create layers.

Returns:
  list of active plotters

### getSingleZoneLayer

protected SingleZoneLayer getSingleZoneLayer()
Description copied from class: `SingleZoneLayerControl`
Returns the layer produced by this control.

Specified by:
  `getSingleZoneLayer` in class `SingleZoneLayerControl`
Returns:
  single zone layer, or null if none is active

### getLegendEntries

public uk.ac.starlink.ttools.plot2.LegendEntry[] getLegendEntries()
Description copied from interface: `LayerControl`
Returns legend entries associated with this control.

Returns:
  legend entries

### getCoordLabel

public String getCoordLabel(String userCoordName)
Description copied from interface: `LayerControl`
Returns a text label associated with one of the user coords for this control, typically the name of the column or expression supplying the data. Null may be returned if there's no good answer.

Parameters:
  `userCoordName` - name of one of the user value infos of an input coord for this control
Returns:
  text label associated with user coordinate

### getZoneSpecifier

public uk.ac.starlink.ttools.plot2.config.Specifier<ZoneId> getZoneSpecifier()
Description copied from interface: `LayerControl`
Returns a specifier that determines which zone of a multi-zone plot this control's layers will be displayed in. If this control is known to be used in a single-zone context, null should be returned.

Returns:
  zone id specifier, or null

### getTableSelector

public TablesListComboBox getTableSelector()
Description copied from interface: `LayerControl`
Returns the selection widget for choosing which table this control is working with. If this control does not use a table, null is returned. The assumption is (currently) that a given control uses a maximum of one table.

Returns:
  table selector, or null