Package com.moneydance.awt
Class ThermometerGraph
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
com.moneydance.awt.ThermometerGraph
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.ItemSelectable
,java.awt.MenuContainer
,java.io.Serializable
public class ThermometerGraph
extends javax.swing.JComponent
implements java.awt.ItemSelectable
Light weight stacked bar graph
- See Also:
- Serialized Form
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
ThermometerGraph.Segment
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
Field Summary
Fields Modifier and Type Field Description static java.awt.Color[]
colors
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
-
Constructor Summary
Constructors Constructor Description ThermometerGraph()
-
Method Summary
Modifier and Type Method Description void
addItemListener(java.awt.event.ItemListener l)
ThermometerGraph.Segment
addSegment(java.lang.String label, double portion)
Add a stacked segment to the graph with the given label, portion and use an automatic colorThermometerGraph.Segment
addSegment(java.lang.String label, double portion, java.awt.Color color)
Add a stacked segment to the graph with the given label, portion and colorThermometerGraph.Segment
addSegment(java.lang.String label, double portion, java.awt.Color color, java.lang.Object target)
Add a stacked segment to the graph with the given label, portion and colorThermometerGraph.Segment
addSegment(java.lang.String label, double portion, java.lang.Object target)
Add a stacked segment to the graph with the given label, portion, an automatically selected color and the given targetjava.awt.Dimension
getMinimumSize()
ThermometerGraph.Segment
getMouseOverSegment()
Get the segment that is under the mouseint
getNumSegments()
Return the number of segments in the current graphjava.awt.Dimension
getPreferredSize()
ThermometerGraph.Segment
getSegment(int i)
Returns the segment located at the given indexjava.lang.Object[]
getSelectedObjects()
ThermometerGraph.Segment
getSelectedSegment()
float
getSelectedSegmentCenter()
Returns the relative location of the center of the selected segment or -1 if no segment is selected.java.lang.Object
getSelectedTarget()
static void
main(java.lang.String[] argv)
java.awt.Color
nextColor()
Return the next color in the arrayvoid
paintComponent(java.awt.Graphics graphics)
void
removeItemListener(java.awt.event.ItemListener l)
void
reset()
Remove all segments and reset the color iterator.void
setBounds(int x, int y, int w, int h)
void
setHighlightedIndex(int newIndex)
void
setSelectedIndex(int newIndex)
void
setSelectedSegment(ThermometerGraph.Segment seg)
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, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, 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, updateUI
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, getAccessibleContext, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
colors
public static java.awt.Color[] colors
-
-
Constructor Details
-
ThermometerGraph
public ThermometerGraph()
-
-
Method Details
-
setBounds
public void setBounds(int x, int y, int w, int h)- Overrides:
setBounds
in classjava.awt.Component
-
getNumSegments
public int getNumSegments()Return the number of segments in the current graph -
getSegment
Returns the segment located at the given index -
getMouseOverSegment
Get the segment that is under the mouse -
getSelectedSegment
-
getSelectedSegmentCenter
public float getSelectedSegmentCenter()Returns the relative location of the center of the selected segment or -1 if no segment is selected. -
addItemListener
public void addItemListener(java.awt.event.ItemListener l)- Specified by:
addItemListener
in interfacejava.awt.ItemSelectable
-
removeItemListener
public void removeItemListener(java.awt.event.ItemListener l)- Specified by:
removeItemListener
in interfacejava.awt.ItemSelectable
-
getSelectedObjects
public java.lang.Object[] getSelectedObjects()- Specified by:
getSelectedObjects
in interfacejava.awt.ItemSelectable
-
setSelectedSegment
-
getSelectedTarget
public java.lang.Object getSelectedTarget() -
setSelectedIndex
public void setSelectedIndex(int newIndex) -
setHighlightedIndex
public void setHighlightedIndex(int newIndex) -
reset
public void reset()Remove all segments and reset the color iterator. -
nextColor
public java.awt.Color nextColor()Return the next color in the array -
addSegment
public ThermometerGraph.Segment addSegment(java.lang.String label, double portion, java.awt.Color color)Add a stacked segment to the graph with the given label, portion and color -
addSegment
public ThermometerGraph.Segment addSegment(java.lang.String label, double portion, java.awt.Color color, java.lang.Object target)Add a stacked segment to the graph with the given label, portion and color -
addSegment
Add a stacked segment to the graph with the given label, portion and use an automatic color -
addSegment
public ThermometerGraph.Segment addSegment(java.lang.String label, double portion, java.lang.Object target)Add a stacked segment to the graph with the given label, portion, an automatically selected color and the given target -
getPreferredSize
public java.awt.Dimension getPreferredSize()- Overrides:
getPreferredSize
in classjavax.swing.JComponent
-
getMinimumSize
public java.awt.Dimension getMinimumSize()- Overrides:
getMinimumSize
in classjavax.swing.JComponent
-
paintComponent
public void paintComponent(java.awt.Graphics graphics)- Overrides:
paintComponent
in classjavax.swing.JComponent
-
main
public static void main(java.lang.String[] argv)
-