Class CombinedLayer
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.visualization.segmentation.layer.AbstractLayer
-
- adams.gui.visualization.segmentation.layer.AbstractImageLayer
-
- adams.gui.visualization.segmentation.layer.CombinedLayer
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
public class CombinedLayer extends AbstractImageLayer
Combines multiple images into single one for annotation.- 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
CombinedLayer.CombinedLayerState
For storing the state of a combined layer.static class
CombinedLayer.CombinedSubLayer
A single layer.static class
CombinedLayer.CombinedSubLayerState
For storing the state of a sub layer.-
Nested classes/interfaces inherited from class adams.gui.visualization.segmentation.layer.AbstractImageLayer
AbstractImageLayer.AbstractImageLayerState
-
Nested classes/interfaces inherited from class adams.gui.visualization.segmentation.layer.AbstractLayer
AbstractLayer.AbstractLayerState
-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description static String
LAYER_NAME
protected CombinedLayer.CombinedSubLayer
m_ActiveSubLayer
the currently active layer.protected float
m_Alpha
the applied alpha.protected BaseFlatButton
m_ButtonApply
the button for applying the values.protected JPanel
m_PanelLayers
the panel for the layers.protected List<CombinedLayer.CombinedSubLayer>
m_SubLayers
the layers.protected BaseObjectTextField<BaseFloat>
m_TextAlpha
the overall alpha to use.-
Fields inherited from class adams.gui.visualization.segmentation.layer.AbstractImageLayer
m_Image
-
Fields inherited from class adams.gui.visualization.segmentation.layer.AbstractLayer
m_CheckboxEnabled, m_Manager
-
Fields inherited from class adams.gui.core.BasePanel
m_FileChooser
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
Constructor Summary
Constructors Constructor Description CombinedLayer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
activate(CombinedLayer.CombinedSubLayer layer)
Activates the specified layer.CombinedLayer.CombinedSubLayer
add(String name, Color color, float alpha)
Adds a layer with no image.CombinedLayer.CombinedSubLayer
add(String name, Color color, float alpha, BufferedImage image)
Adds a layer with image.void
clear()
Clears image and layers.protected void
doDraw(Graphics2D g2d)
Performs the drawing.CombinedLayer.CombinedSubLayer
getActiveSubLayer()
Returns the active layer.float
getAlpha()
Returns the overall alpha value.String
getName()
Returns the name of the layer.AbstractLayer.AbstractLayerState
getSettings()
Returns the current settings.AbstractLayer.AbstractLayerState
getState()
Returns the current state.CombinedLayer.CombinedSubLayer
getSubLayer(String name)
Returns the sub layer by name.List<CombinedLayer.CombinedSubLayer>
getSubLayers()
Returns the list of sub layers.boolean
hasActionsAvailable()
Returns whether actions are available.boolean
hasActiveSubLayer()
Returns whether an active layer is available.protected void
initGUI()
Initializes the widgets.protected void
initialize()
Initializes the members.boolean
isRemovable()
Returns whether the layer can be removed.void
setAlpha(float value)
Sets the overall alpha value.void
setName(String value)
Ignored.void
setSettings(AbstractLayer.AbstractLayerState settings)
Restores the settings of the layer.void
setState(AbstractLayer.AbstractLayerState state)
Restores the state of the layer.protected void
update()
Notifies the change listeners.-
Methods inherited from class adams.gui.visualization.segmentation.layer.AbstractImageLayer
draw, getImage, setImage
-
Methods inherited from class adams.gui.visualization.segmentation.layer.AbstractLayer
createApplyButton, getManager, isEnabled, setApplyButtonState, setEnabled, setManager
-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, finishInit, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, main, printErrorMessage, printException, saveComponent, setEnabledCascade, setEnabledCascade, setParentTitle, setVisible
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
LAYER_NAME
public static final String LAYER_NAME
- See Also:
- Constant Field Values
-
m_TextAlpha
protected BaseObjectTextField<BaseFloat> m_TextAlpha
the overall alpha to use.
-
m_Alpha
protected float m_Alpha
the applied alpha.
-
m_ButtonApply
protected BaseFlatButton m_ButtonApply
the button for applying the values.
-
m_SubLayers
protected List<CombinedLayer.CombinedSubLayer> m_SubLayers
the layers.
-
m_PanelLayers
protected JPanel m_PanelLayers
the panel for the layers.
-
m_ActiveSubLayer
protected CombinedLayer.CombinedSubLayer m_ActiveSubLayer
the currently active layer.
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the members.- Overrides:
initialize
in classAbstractImageLayer
-
initGUI
protected void initGUI()
Initializes the widgets.- Overrides:
initGUI
in classAbstractLayer
-
setName
public void setName(String value)
Ignored.- Specified by:
setName
in classAbstractImageLayer
- Parameters:
value
- the name
-
getName
public String getName()
Returns the name of the layer.- Specified by:
getName
in classAbstractLayer
- Returns:
- the layer
-
isRemovable
public boolean isRemovable()
Returns whether the layer can be removed.- Specified by:
isRemovable
in classAbstractLayer
- Returns:
- true if can be removed
-
hasActionsAvailable
public boolean hasActionsAvailable()
Returns whether actions are available.- Specified by:
hasActionsAvailable
in classAbstractLayer
- Returns:
- true if available
-
clear
public void clear()
Clears image and layers.
-
add
public CombinedLayer.CombinedSubLayer add(String name, Color color, float alpha)
Adds a layer with no image.- Parameters:
name
- the namecolor
- the coloralpha
- the alpha value
-
add
public CombinedLayer.CombinedSubLayer add(String name, Color color, float alpha, BufferedImage image)
Adds a layer with image.- Parameters:
name
- the namecolor
- the coloralpha
- the alpha valueimage
- the image, can be null
-
getSubLayers
public List<CombinedLayer.CombinedSubLayer> getSubLayers()
Returns the list of sub layers.- Returns:
- the sub layers
-
getSubLayer
public CombinedLayer.CombinedSubLayer getSubLayer(String name)
Returns the sub layer by name.- Returns:
- the sub layer, null if not found
-
hasActiveSubLayer
public boolean hasActiveSubLayer()
Returns whether an active layer is available.- Returns:
- true if available
-
getActiveSubLayer
public CombinedLayer.CombinedSubLayer getActiveSubLayer()
Returns the active layer.- Returns:
- the layer, null if none active
-
activate
public void activate(CombinedLayer.CombinedSubLayer layer)
Activates the specified layer.- Parameters:
layer
- the layer to activate
-
doDraw
protected void doDraw(Graphics2D g2d)
Performs the drawing.- Specified by:
doDraw
in classAbstractLayer
- Parameters:
g2d
- the graphics context
-
getState
public AbstractLayer.AbstractLayerState getState()
Returns the current state.- Specified by:
getState
in classAbstractLayer
- Returns:
- the state
-
setState
public void setState(AbstractLayer.AbstractLayerState state)
Restores the state of the layer.- Specified by:
setState
in classAbstractLayer
- Parameters:
state
- the state
-
getSettings
public AbstractLayer.AbstractLayerState getSettings()
Returns the current settings.- Specified by:
getSettings
in classAbstractLayer
- Returns:
- the settings
-
setSettings
public void setSettings(AbstractLayer.AbstractLayerState settings)
Restores the settings of the layer.- Specified by:
setSettings
in classAbstractLayer
- Parameters:
settings
- the settings
-
setAlpha
public void setAlpha(float value)
Sets the overall alpha value.- Parameters:
value
- the alpha
-
getAlpha
public float getAlpha()
Returns the overall alpha value.- Returns:
- the alpha
-
update
protected void update()
Notifies the change listeners.- Overrides:
update
in classAbstractLayer
-
-