# Class SkyPosConfigurator.SkyPosActivator

java.lang.Object
uk.ac.starlink.topcat.activate.SkyPosConfigurator.SkyPosActivator

All Implemented Interfaces:
  `Activator`

Enclosing class:
  `SkyPosConfigurator`

protected abstract static class SkyPosConfigurator.SkyPosActivator extends Object implements Activator
Partial activator implementation for use with SkyPosConfigurator.

Since:
  29 Mar 2018
Author:
  Mark Taylor

## Method Summary

Modifier and Type
Method
Description
`Outcome`
`activateRow(long lrow, ActivationMeta meta)`
Invokes some kind of action on the table row indicated by a given index.
`boolean`
`invokeOnEdt()`
Indicates how this activator's `activateRow` method should be executed.
`protected abstract Outcome`
`useSkyPos(double raDeg, double decDeg, long lrow)`
Does the work of consuming the sky position corresponding to an activated row.

### Methods inherited from class Object

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

## Method Details

### useSkyPos

protected abstract Outcome useSkyPos(double raDeg, double decDeg, long lrow)
Does the work of consuming the sky position corresponding to an activated row.

Parameters:
  `raDeg` - right ascension in degrees
  `decDeg` - declination in degrees
  `lrow` - row index
Returns:
  outcome, may have null message if nothing interesting to say

### invokeOnEdt

public boolean invokeOnEdt()
Description copied from interface: `Activator`
Indicates how this activator's `activateRow` method should be executed. If true, it is intended to be invoked synchronously on the Event Dispatch Thread. If false, it is intended to be invoked asynchronously on some less time-critical thread. False should be returned if this activator may be time-consuming.

Specified by:
  `invokeOnEdt` in interface `Activator`
Returns:
  true if it is a good idea to invoke this activator on the EDT

### activateRow

public Outcome activateRow(long lrow, ActivationMeta meta)
Description copied from interface: `Activator`
Invokes some kind of action on the table row indicated by a given index.

Note that the row index supplied is that from the TopcatModel's DataModel, not the Apparent Table, so that remapping the row index according to any current row sorting has already been applied. Possibly that's not the way it should have been done, and it may be desirable to change that in future, but at time of writing that's the way it is.

Specified by:
  `activateRow` in interface `Activator`
Parameters:
  `lrow` - row index
  `meta` - additional activation metadata if available; may be null if no special information is available
Returns:
  outcome