ucar.unidata.idv
Class CrossSectionViewManager

java.lang.Object
  extended by ucar.unidata.collab.SharableImpl
      extended by ucar.unidata.idv.ViewManager
          extended by ucar.unidata.idv.CrossSectionViewManager
All Implemented Interfaces:
ActionListener, ItemListener, EventListener, Sharable, ControlListener, DisplayListener

public class CrossSectionViewManager
extends ViewManager

A wrapper around a Cross Section (XSDisplay) display master. Provides an interface for managing user interactions, gui creation, etc.

Author:
IDV development team

Nested Class Summary
 
Nested classes/interfaces inherited from class ucar.unidata.idv.ViewManager
ViewManager.MatrixCommand
 
Field Summary
static String PREF_CLIP
          Preference for clipping at 3d box_
static String PREF_PREFIX
          Prefix for preferences
 
Fields inherited from class ucar.unidata.idv.ViewManager
animationHolder, animationMenu, borderHighlightColor, borderWidth, clickToFocus, displayBounds, fullScreenWindow, highlightBorder, innerContents, lastActive, lastTimeActivated, logoPoses, nameLabel, normalBorder, PREF_3DCLIP, PREF_ANIREADOUT, PREF_BGCOLOR, PREF_BORDERCOLOR, PREF_CONTOUR_LABELALIGN, PREF_CONTOUR_LABELFONT, PREF_CONTOUR_LABELSIZE, PREF_DIMENSION, PREF_DISPLAYLISTCOLOR, PREF_DISPLAYLISTFONT, PREF_FGCOLOR, PREF_LOGO, PREF_LOGO_POSITION_OFFSET, PREF_LOGO_SCALE, PREF_LOGO_VISIBILITY, PREF_SHAREVIEWS, PREF_SHOWANIMATIONBOXES, PREF_SHOWBOTTOMLEGEND, PREF_SHOWCURSOR, PREF_SHOWDISPLAYLIST, PREF_SHOWSCALES, PREF_SHOWSIDELEGEND, PREF_SHOWTOOLBAR, PREF_SHOWTRANSECTSCALES, PREF_TOOLBARSFLOATABLE, PREF_TOPBAR_VISIBLE, PREF_WAITMSG, PREF_WIREFRAME, showControlLegend, showControlMenu, TAG_COLORPAIR, TAG_COLORPAIRS, toolbarIds, toolbarNames, toolbars, windowBounds
 
Constructor Summary
CrossSectionViewManager()
          A paramterless ctor for XmlEncoder based decoding.
CrossSectionViewManager(ViewContext viewContext, ViewDescriptor desc, String properties)
          Create a CrossSectionViewManager with the given context, descriptor, object store and properties string.
CrossSectionViewManager(ViewContext viewContext, ViewDescriptor desc, String properties, AnimationInfo animationInfo)
          Create a CrossSectionViewManager with the given context, descriptor, object store, properties string and animation state
 
Method Summary
 void applyPreferences()
          Some user preferences have changed.
protected  Container doMakeContents()
          Create the GUI.
protected  DisplayMaster doMakeDisplayMaster()
          Factory method for creating the display master
 boolean getClipping()
          Get the 3d clipping flag
protected  Color getDefaultBackground()
          Get the default background color
protected  Color getDefaultForeground()
          Get the default foreground color
protected  void getInitialBooleanProperties(List props)
          Get the intial BooleanProperty-s
 boolean getShowSideLegend()
          Don't show the side legend
 String getTypeName()
          What type of view is this
 XSDisplay getXSDisplay()
          Get the cross section display that this view manager uses.
protected  void handleBooleanPropertyChange(String id, boolean value)
          The BooleanProperty identified byt he given id has changed.
protected  void init()
          Initializr this object.
 void initializeViewMenu(JMenu viewMenu)
          Initialize the view menu
protected  JMenu makeShowMenu()
          Create and return the show menu.
 void setClipping(boolean value)
          Set the clipping flag
 void setDisplayTitle(String titlePart)
          Set the title shown in the gui by appending the given titlePart to the name of the XSDisplay.
 void setNewDisplayTitle(String newTitle)
          Make this String the new title on the display
 
Methods inherited from class ucar.unidata.idv.ViewManager
actionPerformed, addBooleanProperty, addCommand, addContextMenuItems, addDisplayInfo, addDisplayInfos, addDisplayListener, addPropertiesComponents, addRemovable, addToolBar, addViewDescriptor, animationOk, animationTimeChanged, applyProperties, aspectSliderChanged, brighter, canBe, checkForKmlImageCapture, checkToolBarVisibility, clearDisplays, clearImageGrabber, controlChanged, controlMoved, createCBMI, destroy, displayChanged, displayControlChanged, displayControlVisibilityChanged, displayDataChanged, doClose, doDrop, doMakeMenuBar, doMakeMenuList, doMakeViewState, doneFirstFrame, doPrintImage, doPublishImage, doPublishImage, doSaveImage, doSaveImage, doSaveImageInThread, doSaveState, ensureOnlyOneTimeDriver, fillLegends, fillLegendsInner, fillLegendsLater, findLoc, firstInitializeViewMenu, getAliases, getAnimation, getAnimationInfo, getAnimationStringVisible, getAnimationTimes, getAnimationWidget, getAniReadout, getAspectPropertiesComponent, getAspectRatio, getBackground, getBooleanPropertiesForPersistence, getBooleanProperty, getBooleanProperty, getBp, getBp, getClickToFocus, getCommandManager, getComponent, getContents, getContentsBorder, getControls, getControlsForLegend, getDisplayBounds, getDisplayConventions, getDisplayCoordinateSystem, getDisplayInfos, getDisplayListColor, getDisplayListFont, getDisplayMatrix, getDisplayRenderer, getDisplayWindow, getExternalAnimation, getExternalAnimationWidget, getForeground, getFullScreenHeight, getFullScreenWidth, getHasWindow, getHaveInitialized, getHighlightBorder, getIdv, getIdvUIManager, getInitDone, getInitViewStateName, getInnerContents, getIsActive, getIsDestroyed, getIsShared, getLastFrameDoneTime, getLastTimeActivated, getLegendOnLeft, getLegends, getLegendState, getLights, getLogoFile, getLogoPosition, getLogoScale, getLogoVisibility, getMainPropertiesComponent, getMaster, getMySize, getName, getNormalBorder, getPerspectiveView, getProjectionControl, getProjectionList, getProperties, getPropertiesComponent, getProperty, getPublishManager, getReallyHasWindow, getResourceManager, getShareViews, getShowAnimationBoxes, getShowBottomLegend, getShowControlLegend, getShowDisplayList, getShowScales, getSideComponent, getSideDividerLocation, getSideLegend, getSideLegendContainer, getSkinProperties, getSkinProperty, getSplitPaneLocation, getStateManager, getStore, getTimeDriverTimes, getTimelineComponent, getToolbarsFloatable, getTopBarVisible, getUniqueId, getUseFastRendering, getViewDescriptor, getViewManager, getVisibleGeoBounds, getVMManager, getWaitMessageVisible, getWireframe, guiInitializationDone, handleControlChanged, hasBooleanProperty, hasDisplayMaster, initAfterUnPersistence, initBooleanProperties, initColorMenu, initDisplayMenu, initFromSkin, initializeBooleanProperty, initPreferences, initToolBars, initUI, initViewState, initViewStateMenu, initWith, initWith, initWith, initWithInner, insertSideLegend, isClassOk, isCompatibleWith, isCompatibleWith, isDefinedBy, isFullScreen, isInteractive, isVectorGraphicsFile, itemStateChanged, keyWasTyped, logException, makeColorMenu, makeDropPanel, makeFrames, makeLogoPosition, makeSavedViewsMenu, makeViewMenu, makeViewStateMenu, notifyDisplayControls, okToImportDisplay, paintDisplayList, parseLogoPosition, parseProperties, printAspect, putProperty, reallyFillLegends, removeColorPair, removeDisplayInfo, resetAspectSliders, resetFullScreen, resetProjectionControl, setAliases, setAnimatedVisibility, setAnimationInfo, setAnimationStringVisible, setAniReadout, setAspectRatio, setBackground, setBooleanProperties, setBooleanPropertiesForPersistence, setBp, setClickToFocus, setColors, setContentsBorder, setCursorInDisplay, setDisplayBounds, setDisplayListColor, setDisplayListFont, setDisplayMaster, setDisplayMatrix, setExternalAnimation, setForeground, setFullScreen, setFullScreenHeight, setFullScreenWidth, setHasWindow, setHighlightBorder, setIdv, setInitialSplitPaneLocation, setInitViewStateName, setIsShared, setLastActive, setLegendOnLeft, setLegendState, setLegendState, setLights, setLogoFile, setLogoPosition, setLogoScale, setLogoVisibility, setMasterActive, setMasterActive, setMasterInactive, setName, setProperties, setProperty, setShareViews, setShowControlLegend, setShowDisplayList, setShowScales, setShowToolBars, setSideDividerLocation, setSideLegend, setSideLegendPosition, setSize, setSkinProperties, setSplitPaneLocation, setTopBarVisible, setView, setViewDescriptor, setWaitMessageVisible, setWindow, setWindowBounds, setWireframe, shouldDoThingsRightAway, showColorPairDialog, showHighlight, showLegend, showPropertiesDialog, showTimeline, showWindow, startImageCapture, toFront, toggleFullScreen, toString, turnOnOffAllDisplays, updateAnnotations, updateDisplayIfNeeded, updateDisplayList, updateNameLabel, useDisplay, useImages, useImages, writeImage, writeImage, writeImage, writeImage, writeImage, writeImage, writeImage, writeTestArchive
 
Methods inherited from class ucar.unidata.collab.SharableImpl
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getReceiveShareTime, getSharablePropertiesComponent, getShareGroup, getSharing, initSharable, receiveShareData, removeSharable, setReceiveShareTime, setShareGroup, setSharing, setUniqueId, showSharableDialog
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

PREF_PREFIX

public static final String PREF_PREFIX
Prefix for preferences

See Also:
Constant Field Values

PREF_CLIP

public static final String PREF_CLIP
Preference for clipping at 3d box_

See Also:
Constant Field Values
Constructor Detail

CrossSectionViewManager

public CrossSectionViewManager()
A paramterless ctor for XmlEncoder based decoding.


CrossSectionViewManager

public CrossSectionViewManager(ViewContext viewContext,
                               ViewDescriptor desc,
                               String properties)
                        throws VisADException,
                               RemoteException
Create a CrossSectionViewManager with the given context, descriptor, object store and properties string.

Parameters:
viewContext - Provides a context for the VM to be in.
desc - The ViewDescriptor that identifies this VM
properties - A set of ";" delimited name-value pairs.
Throws:
RemoteException
VisADException

CrossSectionViewManager

public CrossSectionViewManager(ViewContext viewContext,
                               ViewDescriptor desc,
                               String properties,
                               AnimationInfo animationInfo)
                        throws VisADException,
                               RemoteException
Create a CrossSectionViewManager with the given context, descriptor, object store, properties string and animation state

Parameters:
viewContext - Provides a context for the VM to be in.
desc - The ViewDescriptor that identifies this VM
properties - A set of ";" delimited name-value pairs.
animationInfo - Initial animation properties
Throws:
RemoteException
VisADException
Method Detail

initializeViewMenu

public void initializeViewMenu(JMenu viewMenu)
Initialize the view menu

Overrides:
initializeViewMenu in class ViewManager
Parameters:
viewMenu - the view menu

doMakeDisplayMaster

protected DisplayMaster doMakeDisplayMaster()
                                     throws VisADException,
                                            RemoteException
Factory method for creating the display master

Overrides:
doMakeDisplayMaster in class ViewManager
Returns:
The Display Master
Throws:
RemoteException - On badness
VisADException - On badness

init

protected void init()
             throws VisADException,
                    RemoteException
Initializr this object. This creates and initializes the XSDisplay.

Overrides:
init in class ViewManager
Throws:
RemoteException
VisADException

getDefaultForeground

protected Color getDefaultForeground()
Get the default foreground color

Overrides:
getDefaultForeground in class ViewManager
Returns:
the color

getDefaultBackground

protected Color getDefaultBackground()
Get the default background color

Overrides:
getDefaultBackground in class ViewManager
Returns:
the color

applyPreferences

public void applyPreferences()
Some user preferences have changed.

Overrides:
applyPreferences in class ViewManager

getXSDisplay

public XSDisplay getXSDisplay()
Get the cross section display that this view manager uses.

Returns:
XSDisplay

setClipping

public void setClipping(boolean value)
Set the clipping flag

Parameters:
value - The value

getClipping

public boolean getClipping()
Get the 3d clipping flag

Returns:
The flag value

doMakeContents

protected Container doMakeContents()
Create the GUI. This is a titled border around the XSDisplay.

Overrides:
doMakeContents in class ViewManager
Returns:
The GUI

setDisplayTitle

public void setDisplayTitle(String titlePart)
Set the title shown in the gui by appending the given titlePart to the name of the XSDisplay.

Parameters:
titlePart - The suffix

setNewDisplayTitle

public void setNewDisplayTitle(String newTitle)
Make this String the new title on the display

Parameters:
newTitle - The new title

getShowSideLegend

public boolean getShowSideLegend()
Don't show the side legend

Overrides:
getShowSideLegend in class ViewManager
Returns:
false

getTypeName

public String getTypeName()
What type of view is this

Overrides:
getTypeName in class ViewManager
Returns:
The type of view

handleBooleanPropertyChange

protected void handleBooleanPropertyChange(String id,
                                           boolean value)
                                    throws Exception
The BooleanProperty identified byt he given id has changed. Apply the change to the display.

Overrides:
handleBooleanPropertyChange in class ViewManager
Parameters:
id - Id of the changed BooleanProperty
value - Its new value
Throws:
Exception - problem handeling the change

getInitialBooleanProperties

protected void getInitialBooleanProperties(List props)
Get the intial BooleanProperty-s

Overrides:
getInitialBooleanProperties in class ViewManager
Parameters:
props - list to add them to.

makeShowMenu

protected JMenu makeShowMenu()
Create and return the show menu.

Overrides:
makeShowMenu in class ViewManager
Returns:
The Show menu