|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectucar.unidata.collab.SharableImpl
ucar.unidata.idv.control.DisplayControlBase
ucar.unidata.idv.control.DisplayControlImpl
edu.wisc.ssec.mcidasv.control.HydraControl
edu.wisc.ssec.mcidasv.control.MultiSpectralControl
public class MultiSpectralControl
Nested Class Summary | |
---|---|
class |
MultiSpectralControl.ColorEditor
|
class |
MultiSpectralControl.ColorRenderer
|
class |
MultiSpectralControl.HackyDragDropRowUI
|
private static class |
MultiSpectralControl.ProbeTableModel
|
private static class |
MultiSpectralControl.Spectrum
|
Nested classes/interfaces inherited from class ucar.unidata.idv.control.DisplayControlImpl |
---|
DisplayControlImpl.SideLegendLabel |
Field Summary | |
---|---|
private JButton |
addProbe
|
private static int |
DEFAULT_FLAGS
|
private MultiSpectralDisplay |
display
|
private DisplayMaster |
displayMaster
|
private McIDASVHistogramWrapper |
histoWrapper
|
private static org.slf4j.Logger |
logger
|
(package private) JTextField |
maxBox
|
(package private) JTextField |
minBox
|
private String |
PARAM
|
private int |
probesSeen
|
private JTable |
probeTable
|
private float |
rangeMax
|
private float |
rangeMin
|
private JButton |
removeProbe
|
private JScrollPane |
scrollPane
|
private List<MultiSpectralControl.Spectrum> |
spectra
|
private List<Hashtable<String,Object>> |
spectraProperties
|
private JLabel |
wavelengthLabel
|
private JTextField |
wavenumbox
|
static String |
WAVENUMLABEL
|
Fields inherited from class ucar.unidata.idv.control.DisplayControlImpl |
---|
categories, colorScaleInfo, colorScales, contourInfo, contourInfoParams, contourWidget, controlContext, ctw, dataSelection, defaultView, defaultViewManager, DISPLAY_LIST_NAME, displayListTable, displayListUsesColor, displayMasters, displayUnit, helpUrl, initNoteText, instantiatedWithNoData, noteTextArea, noteWrapper, paramName, requestProperties, selectRangeWidget, settingVisibility, sharables, showNoteText, skipSlider, version, viewManagers, ZFUDGE |
Fields inherited from interface ucar.unidata.idv.DisplayControl |
---|
BOTTOM_LEGEND, DEFAULT_PROBEFORMAT, PREF_PREFIX, PREF_PROBEFORMAT, PREF_REMOVEONWINDOWCLOSE, PREF_SAMPLING_MODE, PREF_STANDALONE_REMOVEONCLOSE, PREF_STANDALONE_REMOVEONCLOSE_ASK, PROP_LEGENDICON, RASTERMODE_SHOWALL, RASTERMODE_SHOWNONRASTER, RASTERMODE_SHOWRASTER, SIDE_LEGEND |
Constructor Summary | |
---|---|
MultiSpectralControl()
|
Method Summary | |
---|---|
protected void |
addSpectra(Color... colors)
Uses a variable-length array of Color s to create new readout
probes using the specified colors. |
MultiSpectralControl.Spectrum |
addSpectrum(Color color)
Creates a new ReadoutProbe with the specified Color . |
protected void |
clearViewManagers()
Runs through the list of ViewManager-s and tells each to destroy. |
protected void |
contrastStretch(double low,
double high)
|
Container |
doMakeContents()
Make Gui contents |
protected JComponent |
doMakeWidgetComponent()
A helper method for constructing the ui. |
void |
doRemove()
Remove this DisplayControl. |
MapProjection |
getDataProjection()
get MapProjection of data to display |
DataSelection |
getDataSelection()
This is used for xml persistence. |
private JComponent |
getDisplayTab()
|
private JComponent |
getHistogramTabComponent()
|
protected ColorTable |
getInitialColorTable()
A hook so derived classes can return a colortable. |
protected Range |
getInitialRange()
Hook method to allow derived classes to return a different initial Range |
protected MultiSpectralDisplay |
getMultiSpectralDisplay()
|
List<Hashtable<String,Object>> |
getSpectraProperties()
|
void |
handleChannelChange(float newChan)
|
void |
handleChannelChange(float newChan,
boolean update)
|
boolean |
init(DataChoice choice)
Initialize this instance according to a data choice. |
void |
initDone()
Called after all initialization has been done. |
static float[] |
minmax(float[] values)
|
void |
pokeSpectra()
Makes each ReadoutProbe in this display control attempt to
redisplay its readout value. |
void |
removeSpectra()
Iterates through the list of MultiSpectralControl.Spectrum s that manage each
ReadoutProbe associated with this display control and calls
MultiSpectralControl.Spectrum.removeValueDisplay() in an effort to remove this
control's probes. |
void |
removeSpectrum(int index)
Attempts to remove the MultiSpectralControl.Spectrum at the given index . |
void |
resetColorTable()
|
void |
setDataSelection(DataSelection newSelection)
This is used for xml persistence. |
void |
setDisplayVisibility(boolean on)
Overridden by McIDAS-V so that "hide" probes when their display is turned off. |
void |
setSpectraProperties(List<Hashtable<String,Object>> props)
|
void |
setWavelengthLabel(String s)
Updates the Wavelength label when user manipulates drag line UI |
private void |
updateHistogramTab()
|
boolean |
updateImage(float newChan)
|
protected void |
updateList(List<MultiSpectralControl.Spectrum> updatedSpectra)
|
Methods inherited from class edu.wisc.ssec.mcidasv.control.HydraControl |
---|
updateRange |
Methods inherited from class ucar.unidata.idv.control.DisplayControlBase |
---|
boxToEarth, boxToEarth, boxToEarth, boxToEarth, boxToEarth, boxToScreen, calculateRectangle, createStationTfo, earthToBox, earthToBox, earthToBoxTuple, earthToScreen, formatLevels, getLabeledReal, getLevelReal, getScreenCenter, getSelectedStation, getTmpProperty, isLeftButtonDown, logException, logException, makeEarthLocation, putTmpProperty, removeTmpProperty, screenToBox, screenToBox, screenToEarth, setStations, setStations, toBox, toEarth, userErrorMessage, userMessage |
Methods inherited from class ucar.unidata.collab.SharableImpl |
---|
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getReceiveShareTime, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, removeSharable, setReceiveShareTime, setShareGroup, setSharing, setUniqueId, showSharableDialog |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface ucar.unidata.idv.DisplayControl |
---|
getTmpProperty, putTmpProperty, removeTmpProperty |
Methods inherited from interface ucar.unidata.collab.Sharable |
---|
getReceiveShareTime, getShareGroup, getSharing, getUniqueId, setReceiveShareTime |
Field Detail |
---|
private static final org.slf4j.Logger logger
private String PARAM
public static String WAVENUMLABEL
private JLabel wavelengthLabel
private static final int DEFAULT_FLAGS
private MultiSpectralDisplay display
private DisplayMaster displayMaster
private final JTextField wavenumbox
final JTextField minBox
final JTextField maxBox
private final List<Hashtable<String,Object>> spectraProperties
private final List<MultiSpectralControl.Spectrum> spectra
private McIDASVHistogramWrapper histoWrapper
private float rangeMin
private float rangeMax
private int probesSeen
private final JTable probeTable
private final JScrollPane scrollPane
private final JButton addProbe
private final JButton removeProbe
Constructor Detail |
---|
public MultiSpectralControl()
Method Detail |
---|
public boolean init(DataChoice choice) throws VisADException, RemoteException
ucar.unidata.idv.control.DisplayControlImpl
Initialize this instance according to a data choice. Subclasses should
override this method. Overridding methods should probably invoke DisplayControlImpl.setData(DataChoice)
as part of their initialization procedure --
although it is unclear when this is actually necessary.
This implementation simply returns true
.
init
in class DisplayControlImpl
choice
- A data choice or null
.
true
if and only if this instance
was correctly initialized by the data choice.
VisADException
- if a VisAD Failure occurs.
RemoteException
- if a Java RMI failure occurs.public void setWavelengthLabel(String s)
s
- full label text, prefix and numeric valuepublic void initDone()
ucar.unidata.idv.control.DisplayControlImpl
initDone
in class DisplayControlImpl
public void setDisplayVisibility(boolean on)
setDisplayVisibility
in interface DisplayControl
setDisplayVisibility
in class DisplayControlImpl
on
- true
if we're visible, false
otherwise.DisplayControl.setDisplayVisibility(boolean)
public void setSpectraProperties(List<Hashtable<String,Object>> props)
public List<Hashtable<String,Object>> getSpectraProperties()
protected void updateList(List<MultiSpectralControl.Spectrum> updatedSpectra)
protected void addSpectra(Color... colors)
Color
s to create new readout
probes using the specified colors.
colors
- Variable length array of Color
s. Shouldn't be
null
.public MultiSpectralControl.Spectrum addSpectrum(Color color)
ReadoutProbe
with the specified Color
.
color
- Color
of the new ReadoutProbe
.
null
values are not allowed.
MultiSpectralControl.Spectrum
wrapper for the newly created
ReadoutProbe
.
NullPointerException
- if color
is null
.public void removeSpectrum(int index)
MultiSpectralControl.Spectrum
at the given index
.
index
- Index of the probe to be removed (within spectra
).public void removeSpectra()
MultiSpectralControl.Spectrum
s that manage each
ReadoutProbe
associated with this display control and calls
MultiSpectralControl.Spectrum.removeValueDisplay()
in an effort to remove this
control's probes.
spectra
public void pokeSpectra()
ReadoutProbe
in this display control attempt to
redisplay its readout value.
Sometimes the probes don't initialize correctly and this method is a stop-gap solution.
public DataSelection getDataSelection()
ucar.unidata.idv.control.DisplayControlImpl
getDataSelection
in class DisplayControlImpl
public void setDataSelection(DataSelection newSelection)
ucar.unidata.idv.control.DisplayControlImpl
setDataSelection
in class DisplayControlImpl
newSelection
- The new dataSelection memberpublic MapProjection getDataProjection()
ucar.unidata.idv.control.DisplayControlImpl
getDataProjection
in interface DisplayControl
getDataProjection
in class DisplayControlImpl
public static float[] minmax(float[] values)
protected Range getInitialRange() throws VisADException, RemoteException
ucar.unidata.idv.control.DisplayControlImpl
Range
getInitialRange
in class DisplayControlImpl
VisADException
- VisAD problem
RemoteException
- Java RMI problemprotected ColorTable getInitialColorTable()
ucar.unidata.idv.control.DisplayControlImpl
DisplayConventions
to get the color table based on the paramName
getInitialColorTable
in class DisplayControlImpl
public Container doMakeContents()
ucar.unidata.idv.control.DisplayControlImpl
doMakeContents
in class DisplayControlImpl
public void doRemove() throws VisADException, RemoteException
ucar.unidata.idv.control.DisplayControlImpl
ControlContext
to removeDisplayControl.
Removes all Displayable-s from
their ViewManager-s, remove this object from its Sharable
group, and sets the visibility of the dialog window to false.
doRemove
in interface DisplayControl
doRemove
in class DisplayControlImpl
VisADException
RemoteException
protected void clearViewManagers()
clearViewManagers
in class DisplayControlImpl
protected JComponent doMakeWidgetComponent()
ucar.unidata.idv.control.DisplayControlImpl
ControlWidget
(e.g., ColorTableWidget) and creates a gridded
ui with them.
doMakeWidgetComponent
in class DisplayControlImpl
protected MultiSpectralDisplay getMultiSpectralDisplay()
getMultiSpectralDisplay
in class HydraControl
public boolean updateImage(float newChan)
public void handleChannelChange(float newChan)
handleChannelChange
in class HydraControl
public void handleChannelChange(float newChan, boolean update)
private JComponent getDisplayTab()
private JComponent getHistogramTabComponent()
private void updateHistogramTab()
public void resetColorTable()
protected void contrastStretch(double low, double high)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |