Package edu.wisc.ssec.mcidasv.control
Class McIdasImageSequenceControl
java.lang.Object
ucar.unidata.collab.SharableImpl
ucar.unidata.idv.control.DisplayControlBase
ucar.unidata.idv.control.DisplayControlImpl
ucar.unidata.idv.control.GridDisplayControl
ucar.unidata.idv.control.BaseImageControl
ucar.unidata.idv.control.ImageSequenceControl
edu.wisc.ssec.mcidasv.control.McIdasImageSequenceControl
- All Implemented Interfaces:
ActionListener
,ItemListener
,PropertyChangeListener
,EventListener
,HyperlinkListener
,Sharable
,DataChangeListener
,DisplayControl
,Prototypable
,ControlListener
,DisplayListener
A DisplayControl for handling McIDAS-X image sequences
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate class
Try my hand at creating a threadNested classes/interfaces inherited from class ucar.unidata.idv.control.DisplayControlImpl
DisplayControlImpl.SideLegendLabel
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ArrayList
private int
private boolean
private static DataChoice
private FrameComponentInfo
Holds frame component informationprivate List
private McIdasFrameDisplay
private JPanel
private List
private Dimension
private static Integer
private JTextField
private McIdasXDataSource
private McIdasXInfo
McIDAS-X handlesprivate JCheckBox
private Font
private JScrollPane
private StyledDocument
private JLabel
private int
Fields inherited from class ucar.unidata.idv.control.BaseImageControl
EMPTY_IMAGE, EMPTY_RGB_IMAGE, emptyImage, emptyRGBImage
Fields inherited from class ucar.unidata.idv.control.GridDisplayControl
CMD_CONTOURDIALOG, CMD_SETLEVELS, gridDataInstance, INITIAL_PROBE_EARTHLOCATION, log_, settingLevel
Fields inherited from class ucar.unidata.idv.control.DisplayControlImpl
categories, colorScaleInfo, colorScales, contourInfo, contourInfoParams, contourWidget, controlContext, ctw, dataSelection, defaultView, defaultViewManager, DISPLAY_LIST_NAME, displayables, displayId, displayListTable, displayListTemplate, displayListUsesColor, displayMasters, displayUnit, helpUrl, initNoteText, instantiatedWithNoData, isProgressiveResolution, matchDisplayRegion, noteTextArea, noteWrapper, paramName, reloadFromBounds, requestProperties, resolutionReadout, selectRangeWidget, settingVisibility, sharables, showNoteText, skipSlider, skipTextField, SLIDER_DEFAULT_MAJOR_TICK, SLIDER_DEFAULT_MAX, SLIDER_DEFAULT_MIN, SLIDER_DEFAULT_MINOR_TICK, SLIDER_DEFAULT_SKIP, version, viewManagers, ZFUDGE
Fields inherited from class ucar.unidata.idv.control.DisplayControlBase
APPEARANCE_DARK, APPEARANCE_IDV, APPEARANCE_LIGHT, CMD_BARBSIZE, CMD_COLORS, CMD_COLORTABLE, CMD_INTERVAL, CMD_LEVEL, CMD_LINEWIDTH, CMD_POPUP, CMD_REMOVE, DEFAULT_POINT_SIZE, DEFAULT_SAMPLING_MODE, FIND_ALL, FIND_CATEGORY, FIND_CLASS, FIND_SPECIAL, FIND_THIS, FIND_WITHDATA, FIND_WITHTHISDATA, FIND_WITHTHISFIELD, FIND_WITHTHISVIEW, FLAG_COLOR, FLAG_COLORTABLE, FLAG_COLORUNIT, FLAG_CONTOUR, FLAG_DATACONTROL, FLAG_DISPLAYUNIT, FLAG_GRIDTRAJECTORY, FLAG_LINEWIDTH, FLAG_NONE, FLAG_SELECTRANGE, FLAG_SKIPFACTOR, FLAG_SMOOTHING, FLAG_TEXTUREQUALITY, FLAG_TIMERANGE, FLAG_ZPOSITION, GRID_INSETS, ICON_LOCK, ICON_REMOVE, ICON_UNLOCK, LABEL_NONE, MACRO_DATASOURCENAME, MACRO_DISPLAYNAME, MACRO_DISPLAYUNIT, MACRO_FHOUR, MACRO_FHOUR2, MACRO_LONGNAME, MACRO_POSITION, MACRO_RESOLUTION, MACRO_SHORTNAME, MACRO_STATION, MACRO_TIMESTAMP, MACRO_VALUE, NEAREST_NEIGHBOR, PREF_DISPLAYLIST_TEMPLATE, PREF_EXTRALABEL_TEMPLATE, PREF_LEGENDLABEL_TEMPLATE, PROP_REMOVED, SETTINGS_GROUP_DISPLAY, SETTINGS_GROUP_FLAGS, SHARE_CHOICES, SHARE_COLOR, SHARE_COLORSCALE, SHARE_COLORTABLE, SHARE_DISPLAYUNIT, SHARE_POSITION, SHARE_SELECTRANGE, SHARE_SKIPVALUE, SHARE_TRANSECT, SHARE_VISIBILITY, WEIGHTED_AVERAGE
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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
appendTextLineCommand
(String line) private void
appendTextLineError
(String line) private void
appendTextLineNormal
(String line) protected Component
Make the frame component check boxes.protected Component
Make the frame component check boxes.protected JTextField
protected Component
Make the frame behavior check boxes.private JPanel
Get frame control widgets specific to this control.protected Component
Make the frame component check boxes.protected Component
Make the frame component check boxes.protected JScrollPane
protected Component
Make the frame behavior check boxes.private Component
protected JComponent
A helper method for constructing the ui.void
getControlWidgets
(List controlWidgets) Get control widgets specific to this control.protected Hashtable
Override the base class method that creates request properties and add in the appropriate frame component request parameters.boolean
init
(DataChoice choice) Initialize this instance according to a data choice.private void
Creates, if needed, the frameComponentInfo member.private void
Initializes the frameDirtyInfoList member.private void
private void
private void
private void
private void
protected void
This gets called when the control has received notification of a dataChange event.private void
private void
sendCommandLine
(String line, boolean showprocess) Send the given commandline to McIDAS-X over the bridgeprivate void
sendCommandLineThread
(String line, boolean showprocess) Threaded sendCommandLineprivate void
setFrameDirtyInfoList
(int frameNumber, boolean dirtyImage, boolean dirtyGraphics, boolean dirtyColorTable) Sets the frameDirtyInfoList member based on frame numberprivate void
showXImage
(int inFrame) private void
private void
updateXImage
(int inFrame) Methods inherited from class ucar.unidata.idv.control.ImageSequenceControl
applySkipFactor, applyTextureQuality, cancelPressed, checkIfDataOk, doMakeContents, doMakeDataInstance, doRemove, getColorRangeFromData, getDisplayUnit, getInitialColorTable, getInitialRange, getIsRaster, getShowProgressBar, init, initDone, setAlphaFromSlider, setShowProgressBar, setWorkingSequence
Methods inherited from class ucar.unidata.idv.control.BaseImageControl
doMakeAlphaSlider, getAlpha, getDataProjectionLabel, getSkipWidgetLabel, getWorkingImage, setAlpha, setInverseAlphaFromSlider, showSkipFactorSlider
Methods inherited from class ucar.unidata.idv.control.GridDisplayControl
actionPerformed, addTopographyMap, addTopographyMap, applyForecastHourMacro, canDoProgressiveResolution, convertColorRange, doExport, doMakeContourLevelControl, doMakeLevelControl, doMakeLevelControl, exportDisplayedData, getColorParamName, getColorRangeIndex, getColorUnit, getContourInfo, getCursorReadoutData, getCursorReadoutInner, getDataProjection, getDataRangeInColorUnits, getDefaultContourInfo, getGridDataInstance, getRawDataUnit, haveMultipleFields, initializeDefaultContourInfo, isDisplayUnitAlsoColorUnit, normalizeRectangle, setLevel, setLevel, setLevelFromUser, shouldAddControlListener, shouldAddDisplayListener
Methods inherited from class ucar.unidata.idv.control.DisplayControlImpl
activateDisplays, addAttributedDisplayable, addAttributedDisplayable, addAttributedDisplayable, addAttributeFlags, addCheckBoxSettings, addDataChoice, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayable, addDisplayMaster, addDisplaySettings, addLabelMacros, addNewData, addNoteText, addPropertiesComponents, addPropertyChangeListener, addRemovable, addSharable, addTimeModeWidget, addToControlContext, addToRangeMenu, addToRangeMenu, addToRangeMenu, addViewManager, appendDataChoices, applyAttributesToDisplayables, applyColor, applyColorScaleInfo, applyColorTable, applyColorUnit, applyContourInfo, applyDisplaySetting, applyDisplayUnit, applyLineWidth, applyPreferences, applyProperties, applyProperties, applyPropertyValues, applyRange, applySelectRange, applySmoothing, applyTimeRange, applyZPosition, boundsClose, canBeDocked, canDataDoProgressiveResolution, canExportData, canSaveDataInCache, captureWindow, centerOnDisplay, changeColorUnit, changeDisplayUnit, checkBoundsChange, checkFlag, checkImageSize, clearDataInstance, clearPrototype, clearViewManagers, clipDisplayedRange, close, colorUnitChanged, controlChanged, convertColorRange, convertRange, createDisplayListDisplayable, createIdvWindow, dataChanged, dataSelectionAdaptiveResolution, deactivateDisplays, debug, displayableToFront, displayChanged, displayControlFailed, displayUnitChanged, doApplyProperties, doInitialUpdateLegendAndList, doMakeBottomLegendComponent, doMakeChangeColorMenu, doMakeChangeColorMenu, doMakeChangeParameterMenuItem, doMakeColorControl, doMakeColorControl, doMakeColorScales, doMakeMenuBar, doMakeMenuBarMenus, doMakePointSizeWidget, doMakeRemoveControl, doMakeSideLegendComponent, doMakeSkipFactorSlider, doMakeSkipFactorSlider, doMakeTextureSlider, doMakeVisibilityControl, doMakeWindow, doMakeZPositionSlider, doMakeZPositionSlider, doRemoveWithPrompt, findDisplayInfo, findDisplays, findDisplays, firePropertyChangeEvent, firstFrameDone, forceUpdateList, formatForCursorReadout, getActive, getAnimation, getAnimation, getAnimation, getAnimation, getAnimationInfo, getAnimationWidget, getAttributeFlags, getCachedData, getCanDoRemoveAll, getCategories, getChangeParameterLabel, getCollapseLegend, getColor, getColorDimness, getColorScaleInfo, getColorTable, getColorTableForDisplayable, getColorTableToApply, getColorTableWidget, getColorUnitName, getColorWidgetLabel, getComponentHolder, getContents, getControlChangeSleepTime, getControlContext, getControlMenus, getCursorReadout, getCursorReadoutInner, getData, getDataChoice, getDataChoices, getDataForDisplayList, getDataInstance, getDataInstance, getDataProjectionForMenu, getDataSelection, getDataSources, getDataTimeRange, getDataTimeRange, getDataTimeSet, getDebugDetails, getDefaultColorScaleInfo, getDefaultDisplayListTemplate, getDefaultDisplayListTemplateJPSS, getDefaultDisplayListTemplatePoint, getDefaultDistanceUnit, getDefaultFastRendering, getDefaultSamplingMode, getDefaultSamplingModeValue, getDefaultView, getDefaultViewDescriptor, getDefaultViewManager, getDetailsContents, getDisplayAltitudeType, getDisplayCategory, getDisplayCenter, getDisplayConventions, getDisplayedData, getDisplayId, getDisplayInfos, getDisplayListColor, getDisplayListData, getDisplayListDisplayable, getDisplayListTemplate, getDisplayMaster, getDisplayName, getDisplayScale, getDisplayUnit, getDisplayUnitName, getDisplayVisibility, getDoCursorReadout, getEditMenuItems, getEditMenuItems, getExpandedInTabs, getExtraLabelTemplate, getExtraLegendComponent, getExtraMenus, getFileMenuItems, getFileMenuItems, getGraphicsConfiguration, getGrid, getGrid, getHadDataChoices, getHaveInitialized, getHelpIds, getHelpMenuItems, getId, getIdv, getImage, getImage, getInitDataChoices, getInitialFastRendering, getInitialZPosition, getInternalAnimation, getInternalAnimation, getIsProgressiveResolution, getIsTimeDriver, getLabel, getLastFileMenuItems, getLatLonPoints, getLegendButtons, getLegendComponent, getLegendLabel, getLegendLabels, getLegendLabelTemplate, getLegendToolTip, getLineWidth, getLineWidthWidget, getLineWidthWidgetLabel, getLockVisibilityToggle, getLongParamName, getMacroNames, getMainPanel, getMainPanelSize, getMakeWindow, getMapDisplay, getMapViewManager, getMapViewProjection, getMatchDisplayRegion, getMenuLabel, getMyDataChoices, getNavigatedDisplay, getNoteText, getObjectStore, getOkToFireEvents, getOldColorTableOrInitialColorTable, getOriginalDataChoicesLabel, getOuterContents, getPointSize, getProperty, getProperty, getPropertyDisplayName, getRange, getRangeForColorTable, getRangeToApply, getSamplingModeName, getSamplingModeValue, getSamplingModeValue, getSaveMenuItems, getSelectRange, getSelectRangeEnabled, getSelectRangeWidget, getSettingsPanel, getShortParamName, getShoulDoProgressiveResolution, getShowInDisplayList, getShowInLegend, getShowInTabs, getShowNoteText, getSkipValue, getSmoothingFactor, getSmoothingType, getSomeAnimation, getStore, getTemplateName, getTextureQuality, getTextureQualityLabel, getTimeSet, getTitle, getTransientProperty, getUnitForColor, getUseFastRendering, getUsesTimeDriver, getUseTimesInAnimation, getVersion, getVerticalValue, getViewAnimation, getViewContext, getViewer, getViewManager, getViewManager, getViewManager, getViewManagerClassNames, getViewManagerForCapture, getViewManagers, getViewMenuItems, getViewMenuItems, getVisbilityAnimationPause, getWasUnPersisted, getWindow, getWindowSize, getWindowVisible, getWindowX, getWindowY, getZPosition, getZPositionSliderLabel, guiExported, guiImported, handleDisplayChanged, handleWindowClosing, hasForecastHourMacro, hasMapProjection, hasTimeMacro, haveDataTimes, haveParameterDefaults, hide, hyperlinkUpdate, inGlobeDisplay, init, init, init, initAfterUnPersistence, initAfterUnPersistence, initAsPrototype, initAsTemplate, initBasic, initializeWithNewData, initWindow, isDisplay3D, isGuiShown, isInitDone, isInTransectView, isInViewManager, isRectBad, itemStateChanged, makeChangeColorMenuItems, makeLegendLabel, makeLockButton, makeMiscButton, makeRemoveButton, moveTo, notifyViewManagersOfChange, parseProperties, popup, popupDataDialog, popupDataDialog, popupDataDialog, processRequestProperties, projectionChanged, propertyChange, putTransientProperty, reallySetAttributeFlags, receiveShareData, redoGuiLayout, reloadDataSource, reloadDataSourceInThread, relocateDisplay, relocateDisplay, removeDataChoice, removeDisplayable, removeDisplayables, removeDisplayables, removeOnWindowClose, removePropertyChangeListener, resetDimness, resetViewManager, revertToDefaultColorTable, revertToDefaultColorTable, revertToDefaultRange, revertToDefaultRange, saveAsFavorite, saveAsParameterDefaults, saveAsPrototype, saveAsTemplate, saveDataChoiceInCache, saveImage, selectDataChoices, setAnimationInfo, setAnimationSet, setAttributeFlags, setCachedData, setCanDoRemoveAll, setCategories, setCollapseLegend, setColor, setColorBrighter, setColorDimmer, setColorDimness, setColorScaleInfo, setColorScaleVisible, setColorTable, setColorTable, setColorTableName, setColorUnit, setColorUnitName, setComponentHolder, setContents, setContourInfo, setContourInfoParams, setData, setData, setDataChoices, setDataInstance, setDataInstances, setDataSelection, setDataTimeRange, setDefaultSamplingMode, setDefaultView, setDisplayableVisibility, setDisplayableVisiblity, setDisplayActive, setDisplayCategory, setDisplayId, setDisplayInactive, setDisplayListColor, setDisplayListColor, setDisplayListProperties, setDisplayListTemplate, setDisplayName, setDisplayUnit, setDisplayUnitName, setDisplayVisibility, setDoCursorReadout, setExpandedInTabs, setExtraLabelTemplate, setHadDataChoices, setHelpUrl, setId, setInitDataChoices, setInitialSettings, setInitialViewManager, setIsProgressiveResolution, setIsRaster, setIsTimeDriver, setLabelAsPreference, setLegendBackground, setLegendForeground, setLegendLabel, setLegendLabelTemplate, setLineWidth, setLockVisibilityToggle, setMainPanelDimensions, setMainPanelSize, setMakeWindow, setMatchDisplayRegion, setName, setNameFromUser, setNewColorUnit, setNewDisplayUnit, setNoteText, setOkToFireEvents, setOriginalDataChoicesLabel, setParamName, setPersistedVisadData, setPointSize, setProjectionInView, setProjectionInView, setProperty, setRange, setRange, setSelectRange, setSelectRangeEnabled, setSettingsDisplayUnit, setSharedColorScaleInfo, setShowInDisplayList, setShowInLegend, setShowInTabs, setShowNoteText, setSkipValue, setSmoothingFactor, setSmoothingType, setTemplateName, setTextureQuality, setTitle, setUnitForColor, setUseFastRendering, setUsesTimeDriver, setUseTimesInAnimation, setVersion, setViewer, setViewManagerClassNames, setViewManagerDisplayListColor, setVisbilityAnimationPause, setWindowSize, setWindowVisible, setWindowX, setWindowY, setZPosition, setZPosition, shouldAddAnimationListener, shouldApplyFastRendering, shouldBeDocked, shouldWindowBeVisible, show, showColorControlWidget, showColorDialog, showColorDialog, showColorScaleDialog, showColorScales, showColorSwatches, showContourPropertiesDialog, showDetails, showDisplaySettingsDialog, showHelp, showLegendMenu, showNormalCursor, showProperties, showTimeRangeDialog, showWaitCursor, timeChanged, toFront, toggleNoteTextArea, toggleVisibilityForVectorGraphicsRendering, toggleWindow, toString, transectChanged, updateAnimation, updateDataInstance, updateDataSelection, updateDisplayList, updateGridDataInstance, updateLegendAndList, updateLegendLabel, updateLockButton, updateMiscButton, useSmoothingFactor, useZPosition, viewManagerChanged, viewManagerDestroyed, viewpointChanged, writeTestArchive, xxxsetDisplayActive, zSliderChanged
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 Details
-
runningThreads
-
frameDisplay
-
frameSize
-
inputText
-
outputPane
-
outputText
-
outputFont
-
commandHistory
-
commandHistoryIdx
-
commandHistoryMode
-
mcidasxInfo
McIDAS-X handles -
mcidasxDS
-
threadCount
-
dc
-
frmI
-
frameComponentInfo
Holds frame component information -
frameDirtyInfoList
-
frameNumbers
-
-
Constructor Details
-
McIdasImageSequenceControl
public McIdasImageSequenceControl()Default ctor; sets the attribute flags
-
-
Method Details
-
initFrameComponentInfo
Creates, if needed, the frameComponentInfo member. -
initFrameDirtyInfoList
Initializes the frameDirtyInfoList member. -
setFrameDirtyInfoList
private void setFrameDirtyInfoList(int frameNumber, boolean dirtyImage, boolean dirtyGraphics, boolean dirtyColorTable) Sets the frameDirtyInfoList member based on frame number -
getRequestProperties
Override the base class method that creates request properties and add in the appropriate frame component request parameters.- Overrides:
getRequestProperties
in classDisplayControlImpl
- Returns:
- table of properties
-
doMakeWidgetComponent
A helper method for constructing the ui. This fills up a list ofControlWidget
(e.g., ColorTableWidget) and creates a gridded ui with them.- Overrides:
doMakeWidgetComponent
in classDisplayControlImpl
- Returns:
- The ui for the widgets
-
getControlWidgets
Get control widgets specific to this control.- Overrides:
getControlWidgets
in classDisplayControlImpl
- Parameters:
controlWidgets
- list of control widgets from other places- Throws:
RemoteException
- Java RMI errorVisADException
- VisAD Error
-
doMakeFramePanel
Get frame control widgets specific to this control.- Throws:
RemoteException
- Java RMI errorVisADException
- VisAD Error
-
doMakeImageBox
Make the frame component check boxes.- Returns:
- Check box for Images
-
doMakeGraphicsBox
Make the frame component check boxes.- Returns:
- Check box for Graphics
-
doMakeColorTableBox
Make the frame component check boxes.- Returns:
- Check box for Color table
-
doMakeAnnotationBox
Make the frame component check boxes.- Returns:
- Check box for Annotation line
-
doMakeFakeDateTimeBox
Make the frame behavior check boxes.- Returns:
- Check box for Fake date/time
-
doMakeResetProjectionBox
Make the frame behavior check boxes.- Returns:
- Check box for Projection reset
-
resetCommandHistory
-
resetCommandHistoryIdx
-
doMakeCommandLine
-
doMakeSpacer
-
doMakeOutputText
-
sendCommandLine
Send the given commandline to McIDAS-X over the bridge- Parameters:
line
-showprocess
-
-
appendTextLineNormal
-
appendTextLineCommand
-
appendTextLineError
-
scrollTextLineToBottom
-
updateXImage
-
showXImage
-
updateVImage
-
init
Description copied from class: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
.- Overrides:
init
in classImageSequenceControl
- Parameters:
choice
- A data choice ornull
.- Returns:
true
if and only if this instance was correctly initialized by the data choice.- Throws:
VisADException
- if a VisAD Failure occurs.RemoteException
- if a Java RMI failure occurs.
-
resetData
This gets called when the control has received notification of a dataChange event.- Overrides:
resetData
in classImageSequenceControl
- Throws:
RemoteException
- Java RMI problemVisADException
- VisAD problem
-
sendCommandLineThread
Threaded sendCommandLine- Parameters:
line
-showprocess
-
-
notifyThreadStart
-
notifyThreadStop
-
notifyThreadCount
-