Package adams.flow.sink
Class ArrayDisplay
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ClearableDisplay
,DisplayTypeSupporter
,ErrorHandler
,InputConsumer
,ComponentSupplier
,MenuBarProvider
,SendToActionSupporter
,Serializable
,Comparable
public class ArrayDisplay extends AbstractGraphicalDisplay
Displays the array elements in a single panel.
Input/output:
- accepts:
java.lang.String[]
java.io.File[]
java.awt.image.BufferedImage[]
adams.data.image.AbstractImageContainer[]
adams.data.image.BufferedImageSupporter[]
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-name <java.lang.String> (property: name) The name of the actor. default: ArrayDisplay
-annotation <adams.core.base.BaseAnnotation> (property: annotations) The annotations to attach to this actor. default:
-skip <boolean> (property: skip) If set to true, transformation is skipped and the input token is just forwarded as it is. default: false
-stop-flow-on-error <boolean> (property: stopFlowOnError) If set to true, the flow execution at this level gets stopped in case this actor encounters an error; the error gets propagated; useful for critical actors. default: false
-silent <boolean> (property: silent) If enabled, then no errors are output in the console; Note: the enclosing actor handler must have this enabled as well. default: false
-short-title <boolean> (property: shortTitle) If enabled uses just the name for the title instead of the actor's full name. default: false
-display-type <adams.flow.core.displaytype.AbstractDisplayType> (property: displayType) Determines how to show the display, eg as standalone frame (default) or in the Flow editor window. default: adams.flow.core.displaytype.Default
-width <int> (property: width) The width of the dialog. default: 800 minimum: -1
-height <int> (property: height) The height of the dialog. default: 600 minimum: -1
-x <int> (property: x) The X position of the dialog (>=0: absolute, -1: left, -2: center, -3: right ). default: -1 minimum: -3
-y <int> (property: y) The Y position of the dialog (>=0: absolute, -1: top, -2: center, -3: bottom ). default: -1 minimum: -3
-writer <adams.gui.print.JComponentWriter> (property: writer) The writer to use for generating the graphics output. default: adams.gui.print.NullWriter
-panel-provider <adams.flow.sink.DisplayPanelProvider> (property: panelProvider) The actor for generating the display sub-panels. default: adams.flow.sink.ImageViewer -display-type adams.flow.core.displaytype.Default -writer adams.gui.print.NullWriter -selection-processor adams.gui.visualization.image.selection.NullProcessor -left-click-processor adams.gui.visualization.image.leftclick.NullProcessor -selection-shape-painter adams.gui.visualization.image.selectionshape.RectanglePainter -image-overlay adams.gui.visualization.image.NullOverlay
-arrangement <TABBED|HORIZONTAL|VERTICAL|GRID> (property: arrangement) How to arrange the elements of the array. default: TABBED
-num-cols <int> (property: numCols) The number of columns to use in case of arrangement type GRID. default: 1 minimum: 1
-panel-width <int> (property: panelWidth) The width of the individual panels. default: 400 minimum: 1
-panel-height <int> (property: panelHeight) The height of the individual panels. default: 300 minimum: 1
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ArrayDisplay.Arrangement
How to display the array elements.
-
Field Summary
Fields Modifier and Type Field Description protected ArrayDisplay.Arrangement
m_Arrangement
how to display the array elements.protected List<DisplayPanel>
m_DisplayPanels
the panels to display.protected int
m_NumCols
the number of columns to use (in case of GRID).protected int
m_PanelHeight
the height of the individual panels.protected DisplayPanelProvider
m_PanelProvider
the actor to use for generating panels.protected int
m_PanelWidth
the width of the individual panels.-
Fields inherited from class adams.flow.sink.AbstractGraphicalDisplay
m_GraphicFileChooser, m_MenuBar, m_MenuItemFileClear, m_MenuItemFileClose, m_MenuItemFileSaveAs, m_MenuItemFileSaveTextAs, m_MenuItemFlowPauseResume, m_MenuItemFlowStop, m_ShowFlowControlSubMenu, m_TextFileChooser, m_Writer
-
Fields inherited from class adams.flow.core.AbstractDisplay
BACKUP_INPUT, m_CreateFrame, m_DisplayType, m_Frame, m_Height, m_InputToken, m_KeepOpen, m_Panel, m_ShortTitle, m_Updating, m_Width, m_X, m_Y
-
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_LoggingPrefix, m_Name, m_Parent, m_ScopeHandler, m_Self, m_Silent, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
-
-
Constructor Summary
Constructors Constructor Description ArrayDisplay()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class[]
accepts()
Returns the class that the consumer accepts.String
arrangementTipText()
Returns the tip text for this property.void
clearPanel()
Clears the content of the panel.void
defineOptions()
Adds options to the internal list of options.protected void
display(Token token)
Displays the token (the panel and dialog have already been created at this stage).protected void
displayGridded(Object[] elements, int numCols, int numRows)
Displays the array in a grid.protected void
displayTabbed(Object[] elements)
Displays the array in tabs.ArrayDisplay.Arrangement
getArrangement()
Returns how to arrange the elements of the array.int
getNumCols()
Returns the number of cols to use in case ofArrayDisplay.Arrangement.GRID
.int
getPanelHeight()
Returns the currently set height of the individual panels.DisplayPanelProvider
getPanelProvider()
Returns the panel provider in use for generating the sub-panels.int
getPanelWidth()
Returns the currently set width of the individual panels.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.String
globalInfo()
Returns a string describing the object.protected void
initialize()
Initializes the members.protected BasePanel
newPanel()
Creates the panel to display in the dialog.String
numColsTipText()
Returns the tip text for this property.String
panelHeightTipText()
Returns the tip text for this property.String
panelProviderTipText()
Returns the tip text for this property.String
panelWidthTipText()
Returns the tip text for this property.void
setArrangement(ArrayDisplay.Arrangement value)
Sets how to arrange the elements of the array.void
setNumCols(int value)
Sets the number of cols to use in case ofArrayDisplay.Arrangement.GRID
.void
setPanelHeight(int value)
Sets the height of the individual panels.void
setPanelProvider(DisplayPanelProvider value)
Sets the panel provider to use for generating the sub-panels.void
setPanelWidth(int value)
Sets the width of the individual panels.boolean
supportsClear()
Whether "clear" is supported and shows up in the menu.void
wrapUp()
Cleans up after the execution has finished.-
Methods inherited from class adams.flow.sink.AbstractGraphicalDisplay
canPauseOrResume, cleanUpGUI, clear, close, createMenuBar, getGraphicFileChooser, getMenuBar, getSendToClasses, getSendToItem, getShowFlowControlSubMenu, getTextFileChooser, getWriter, hasPanel, hasSendToItem, isPaused, pauseResumeFlow, saveAs, saveTextAs, setShowFlowControlSubMenu, setWriter, showFlowControlSubMenuTipText, stopFlow, supplyComponent, updateMenu, writerTipText
-
Methods inherited from class adams.flow.sink.AbstractDisplay
newDisplayRunnable, postDisplay, preDisplay
-
Methods inherited from class adams.flow.core.AbstractDisplay
backupState, cleanUp, cleanUpGUIKeepOpen, closeFrame, createFrame, createTitle, currentInput, deregisterInWrapUp, deregisterWindow, deregisterWithEditor, displayTypeTipText, doCreateFrame, doExecute, getCreateFrame, getDefaultDisplayType, getDefaultHeight, getDefaultShortTitle, getDefaultWidth, getDefaultX, getDefaultY, getDisplayType, getFrame, getFrameDefaultCloseOperation, getHeight, getKeepOpen, getPanel, getShortTitle, getWidth, getX, getY, hasInput, heightTipText, input, postCreateFrame, preCreateFrame, registerWindow, registerWithEditor, reset, restoreState, setCreateFrame, setDisplayType, setHeight, setKeepOpen, setShortTitle, setWidth, setX, setY, shortTitleTipText, stopExecution, widthTipText, xTipText, yTipText
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, compareTo, configureLogger, destroy, equals, execute, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, postExecute, preExecute, pruneBackup, pruneBackup, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, destroy, equals, execute, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine, variableChanged
-
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
-
Methods inherited from interface adams.flow.core.InputConsumer
currentInput, hasInput, input
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel, setLoggingLevel
-
Methods inherited from interface adams.core.logging.LoggingSupporter
getLogger, isLoggingEnabled
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
-
Methods inherited from interface adams.core.VariablesInspectionHandler
canInspectOptions
-
-
-
-
Field Detail
-
m_PanelProvider
protected DisplayPanelProvider m_PanelProvider
the actor to use for generating panels.
-
m_Arrangement
protected ArrayDisplay.Arrangement m_Arrangement
how to display the array elements.
-
m_NumCols
protected int m_NumCols
the number of columns to use (in case of GRID).
-
m_PanelWidth
protected int m_PanelWidth
the width of the individual panels.
-
m_PanelHeight
protected int m_PanelHeight
the height of the individual panels.
-
m_DisplayPanels
protected List<DisplayPanel> m_DisplayPanels
the panels to display.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractGraphicalDisplay
-
initialize
protected void initialize()
Initializes the members.- Overrides:
initialize
in classAbstractDisplay
-
setPanelProvider
public void setPanelProvider(DisplayPanelProvider value)
Sets the panel provider to use for generating the sub-panels.- Parameters:
value
- the panel provider to use
-
getPanelProvider
public DisplayPanelProvider getPanelProvider()
Returns the panel provider in use for generating the sub-panels.- Returns:
- the panel provider in use
-
panelProviderTipText
public String panelProviderTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setArrangement
public void setArrangement(ArrayDisplay.Arrangement value)
Sets how to arrange the elements of the array.- Parameters:
value
- the arrangement
-
getArrangement
public ArrayDisplay.Arrangement getArrangement()
Returns how to arrange the elements of the array.- Returns:
- the arrangement
-
arrangementTipText
public String arrangementTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setNumCols
public void setNumCols(int value)
Sets the number of cols to use in case ofArrayDisplay.Arrangement.GRID
.- Parameters:
value
- the number of cols
-
getNumCols
public int getNumCols()
Returns the number of cols to use in case ofArrayDisplay.Arrangement.GRID
.- Returns:
- the number of cols
-
numColsTipText
public String numColsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPanelWidth
public void setPanelWidth(int value)
Sets the width of the individual panels.- Parameters:
value
- the width
-
getPanelWidth
public int getPanelWidth()
Returns the currently set width of the individual panels.- Returns:
- the width
-
panelWidthTipText
public String panelWidthTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPanelHeight
public void setPanelHeight(int value)
Sets the height of the individual panels.- Parameters:
value
- the height
-
getPanelHeight
public int getPanelHeight()
Returns the currently set height of the individual panels.- Returns:
- the height
-
panelHeightTipText
public String panelHeightTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceActor
- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractDisplay
- Returns:
- null if no info available, otherwise short string
-
accepts
public Class[] accepts()
Returns the class that the consumer accepts.- Returns:
- the Class of objects that can be processed
-
supportsClear
public boolean supportsClear()
Whether "clear" is supported and shows up in the menu.- Specified by:
supportsClear
in interfaceClearableDisplay
- Overrides:
supportsClear
in classAbstractGraphicalDisplay
- Returns:
- true if supported
-
clearPanel
public void clearPanel()
Clears the content of the panel.- Specified by:
clearPanel
in classAbstractDisplay
-
newPanel
protected BasePanel newPanel()
Creates the panel to display in the dialog.- Specified by:
newPanel
in classAbstractDisplay
- Returns:
- the panel
-
displayTabbed
protected void displayTabbed(Object[] elements)
Displays the array in tabs.- Parameters:
elements
- the array to display
-
displayGridded
protected void displayGridded(Object[] elements, int numCols, int numRows)
Displays the array in a grid.- Parameters:
elements
- the array to displaynumCols
- the number of columnsnumRows
- the number of rows
-
display
protected void display(Token token)
Displays the token (the panel and dialog have already been created at this stage).- Specified by:
display
in classAbstractDisplay
- Parameters:
token
- the token to display
-
wrapUp
public void wrapUp()
Cleans up after the execution has finished.- Specified by:
wrapUp
in interfaceActor
- Overrides:
wrapUp
in classAbstractGraphicalDisplay
-
-