Package mgui.interfaces.maps
Class ContinuousColourBar
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
mgui.interfaces.InterfacePanel
mgui.interfaces.maps.ContinuousColourBar
- All Implemented Interfaces:
java.awt.event.ComponentListener
,java.awt.event.KeyListener
,java.awt.event.MouseListener
,java.awt.event.MouseMotionListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,AttributeListener
,AttributeObject
,DisplayListener
,InterfaceObject
,CategoryObject
,PopupMenuObject
,NamedObject
,ShapeListener
,TreeObject
,CleanableObject
,IconObject
public class ContinuousColourBar extends InterfacePanel implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.KeyListener
Component displays a continuous colour map as a horizontal bar portraying
the colour gradient between anchors. Displays the anchors themselves as solid
vertical lines
- Author:
- Andrew Reid
- See Also:
- Serialized Form
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
-
Field Summary
Fields Modifier and Type Field Description protected java.util.ArrayList<java.awt.event.ActionListener>
actionListeners
protected java.awt.image.BufferedImage
bar
int
decimals
java.lang.String
divFont
double
divSize
double
fontScale
protected boolean
isDragging
protected java.awt.Font
label_font
double
lineWeightScale
ContinuousColourMap
map
double
max
double
min
int
noDivisions
protected java.awt.BasicStroke
normalLine
int
padding
int
selectedAnchor
protected java.awt.BasicStroke
selectedLine
boolean
showAnchors
boolean
showDivisions
protected boolean
updateBar
Fields inherited from class mgui.interfaces.InterfacePanel
attributes, displayListeners, isDestroyed, last_click_point, statusBar, tree_nodes, treeNode, type
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 ContinuousColourBar()
ContinuousColourBar(ContinuousColourMap cm)
-
Method Summary
Modifier and Type Method Description void
addActionListener(java.awt.event.ActionListener l)
java.lang.Object
clone()
protected void
drawAnchorLeft(java.awt.Graphics2D g2, int pos, int width, int height, boolean selected)
protected void
drawAnchorUp(java.awt.Graphics2D g2, int pos, int width, int height, boolean selected)
protected void
fireActionListeners()
protected java.awt.image.BufferedImage
getColourBarImage(int x, int y)
InterfacePopupMenu
getPopupMenu()
Produces and returns a popup menu for this object.ContinuousColourMap.Anchor
getSelectedAnchor()
void
handlePopupEvent(java.awt.event.ActionEvent e)
Handles an event on this object's popup menu.protected void
init()
void
keyPressed(java.awt.event.KeyEvent arg0)
void
keyReleased(java.awt.event.KeyEvent arg0)
void
keyTyped(java.awt.event.KeyEvent e)
void
mouseClicked(java.awt.event.MouseEvent e)
void
mouseDragged(java.awt.event.MouseEvent e)
void
mouseEntered(java.awt.event.MouseEvent arg0)
void
mouseExited(java.awt.event.MouseEvent arg0)
void
mouseMoved(java.awt.event.MouseEvent e)
void
mousePressed(java.awt.event.MouseEvent e)
void
mouseReleased(java.awt.event.MouseEvent e)
protected void
paintComponent(java.awt.Graphics g)
void
removeActionListener(java.awt.event.ActionListener l)
void
removeAnchor(int anchor)
void
selectAnchor(int anchor)
void
setMap(ContinuousColourMap m)
void
update()
void
writeToImage(java.io.File file)
Writes this colour bar to an image file.void
writeToImage(java.io.File file, int width, int height)
Writes this colour bar to an image file.Methods inherited from class mgui.interfaces.InterfacePanel
_init, addDisplayListener, attributeUpdated, clean, cleanUpPanel, collapseAllCategories, collapseCategory, collapseOtherCategories, componentHidden, componentMoved, componentResized, componentShown, destroy, expandAllCategories, expandCategory, fireDisplayListeners, getAttribute, getAttributes, getAttributeValue, getLocalAttributes, getObjectIcon, getPopupMenu, getSource, getTitle, getTreeLabel, getType, isDestroyed, issueTreeNode, removeDisplayListener, setAttribute, setAttributes, setSource, setStatusBar, setTreeNode, setType, shapeUpdated, showPanel, showPopupMenu, updateDisplay, updateDisplays, updateFromDialog, updateTreeNodes
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, 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, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, 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, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, 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, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface mgui.interfaces.NamedObject
getName, setName
-
Field Details
-
map
-
selectedAnchor
public int selectedAnchor -
updateBar
protected boolean updateBar -
bar
protected java.awt.image.BufferedImage bar -
selectedLine
protected java.awt.BasicStroke selectedLine -
normalLine
protected java.awt.BasicStroke normalLine -
actionListeners
protected java.util.ArrayList<java.awt.event.ActionListener> actionListeners -
isDragging
protected boolean isDragging -
showAnchors
public boolean showAnchors -
showDivisions
public boolean showDivisions -
noDivisions
public int noDivisions -
divSize
public double divSize -
max
public double max -
min
public double min -
decimals
public int decimals -
divFont
public java.lang.String divFont -
fontScale
public double fontScale -
lineWeightScale
public double lineWeightScale -
padding
public int padding -
label_font
protected java.awt.Font label_font
-
-
Constructor Details
-
ContinuousColourBar
public ContinuousColourBar() -
ContinuousColourBar
-
-
Method Details
-
init
protected void init()- Specified by:
init
in classInterfacePanel
-
clone
public java.lang.Object clone()- Overrides:
clone
in classjava.lang.Object
-
paintComponent
protected void paintComponent(java.awt.Graphics g)- Overrides:
paintComponent
in classjavax.swing.JComponent
-
drawAnchorUp
protected void drawAnchorUp(java.awt.Graphics2D g2, int pos, int width, int height, boolean selected) -
drawAnchorLeft
protected void drawAnchorLeft(java.awt.Graphics2D g2, int pos, int width, int height, boolean selected) -
getColourBarImage
protected java.awt.image.BufferedImage getColourBarImage(int x, int y) -
setMap
-
getSelectedAnchor
-
addActionListener
public void addActionListener(java.awt.event.ActionListener l) -
removeActionListener
public void removeActionListener(java.awt.event.ActionListener l) -
fireActionListeners
protected void fireActionListeners() -
selectAnchor
public void selectAnchor(int anchor) -
removeAnchor
public void removeAnchor(int anchor) -
mouseClicked
public void mouseClicked(java.awt.event.MouseEvent e)- Specified by:
mouseClicked
in interfacejava.awt.event.MouseListener
- Overrides:
mouseClicked
in classInterfacePanel
-
update
public void update() -
mouseEntered
public void mouseEntered(java.awt.event.MouseEvent arg0)- Specified by:
mouseEntered
in interfacejava.awt.event.MouseListener
- Overrides:
mouseEntered
in classInterfacePanel
-
mouseExited
public void mouseExited(java.awt.event.MouseEvent arg0)- Specified by:
mouseExited
in interfacejava.awt.event.MouseListener
- Overrides:
mouseExited
in classInterfacePanel
-
mousePressed
public void mousePressed(java.awt.event.MouseEvent e)- Specified by:
mousePressed
in interfacejava.awt.event.MouseListener
- Overrides:
mousePressed
in classInterfacePanel
-
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent e)- Specified by:
mouseReleased
in interfacejava.awt.event.MouseListener
- Overrides:
mouseReleased
in classInterfacePanel
-
mouseDragged
public void mouseDragged(java.awt.event.MouseEvent e)- Specified by:
mouseDragged
in interfacejava.awt.event.MouseMotionListener
- Overrides:
mouseDragged
in classInterfacePanel
-
mouseMoved
public void mouseMoved(java.awt.event.MouseEvent e)- Specified by:
mouseMoved
in interfacejava.awt.event.MouseMotionListener
- Overrides:
mouseMoved
in classInterfacePanel
-
keyPressed
public void keyPressed(java.awt.event.KeyEvent arg0)- Specified by:
keyPressed
in interfacejava.awt.event.KeyListener
- Overrides:
keyPressed
in classInterfacePanel
-
keyReleased
public void keyReleased(java.awt.event.KeyEvent arg0)- Specified by:
keyReleased
in interfacejava.awt.event.KeyListener
- Overrides:
keyReleased
in classInterfacePanel
-
keyTyped
public void keyTyped(java.awt.event.KeyEvent e)- Specified by:
keyTyped
in interfacejava.awt.event.KeyListener
- Overrides:
keyTyped
in classInterfacePanel
-
getPopupMenu
Description copied from interface:PopupMenuObject
Produces and returns a popup menu for this object.- Specified by:
getPopupMenu
in interfacePopupMenuObject
- Overrides:
getPopupMenu
in classInterfacePanel
- Returns:
-
handlePopupEvent
public void handlePopupEvent(java.awt.event.ActionEvent e)Description copied from interface:PopupMenuObject
Handles an event on this object's popup menu.- Specified by:
handlePopupEvent
in interfacePopupMenuObject
- Overrides:
handlePopupEvent
in classInterfacePanel
-
writeToImage
public void writeToImage(java.io.File file) throws java.io.IOExceptionWrites this colour bar to an image file.- Parameters:
file
-- Throws:
java.io.IOException
-
writeToImage
public void writeToImage(java.io.File file, int width, int height) throws java.io.IOExceptionWrites this colour bar to an image file.- Parameters:
file
-- Throws:
java.io.IOException
-