org.tbee.swing.gauge
Class GaugeNeedleSingle

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JLabel
                  extended by org.tbee.swing.gauge.GaugeNeedleSingle
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.SwingConstants
Direct Known Subclasses:
DotLTR, StylishBlackAnalogBottom, StylishBlackAnalogLargeLTR, StylishBlackAnalogLTR

public abstract class GaugeNeedleSingle
extends javax.swing.JLabel

Contains the generic code for a needle gauge. The value per default is percentage [0,100]. You can set the labels separately from the value, for example the labels could depict temperature, but the value still is percentage.

Version:
$Revision: 1.17 $
See Also:
Serialized Form

Nested Class Summary
protected static class GaugeNeedleSingle.LabelPoint
           
protected static class GaugeNeedleSingle.Point2d
           
 
Nested classes/interfaces inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
 
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
protected static java.awt.font.FontRenderContext cLabelFontRenderContext
           
static java.lang.String SOURCECODE_VERSION
          Standard variable for determining version of a class file.
 
Fields inherited from class javax.swing.JLabel
labelFor
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
GaugeNeedleSingle()
           
 
Method Summary
protected  double calculateAngle(double value)
           
protected  void clearImage(java.awt.image.BufferedImage image)
           
protected abstract  java.awt.image.BufferedImage drawCompleteGauge()
          This generates the complete gauge
protected  void drawImageTicks(java.awt.image.BufferedImage image, java.awt.image.BufferedImage tick, GaugeNeedleSingle.Point2d center, int tickDistance, double minAngle, double maxAngle, int numberOfTicks, int highlightTicks)
           
protected  void drawLabels(java.awt.image.BufferedImage image, java.awt.Font font, java.awt.Color color)
           
protected  void drawNeedle(java.awt.image.BufferedImage image, java.awt.image.BufferedImage needle, GaugeNeedleSingle.Point2d center, java.awt.Point offset, double angle)
           
protected  void drawNeedleArc(java.awt.image.BufferedImage image, java.awt.image.BufferedImage needle, GaugeNeedleSingle.Point2d center, java.awt.Point offset, double minAngle, double angle)
           
protected abstract  java.awt.image.BufferedImage drawNeedleOnly()
          This only regenerates the needle part.
protected  void drawTicks(java.awt.image.BufferedImage image, GaugeNeedleSingle.Point2d center, int tickDistance, int tickLength, double minAngle, double maxAngle, int numberOfTicks, int highlightTicks)
           
protected  void drawTickTrack(java.awt.image.BufferedImage image, java.awt.image.BufferedImage tick, GaugeNeedleSingle.Point2d center, int tickDistance, double minAngle, double maxAngle, java.awt.Color color)
           
protected  void drawTitle(java.awt.image.BufferedImage image, java.awt.Font font, java.awt.Color color)
           
protected  void drawUnit(java.awt.image.BufferedImage image, java.awt.Font font, java.awt.Color color)
           
protected  double getAngle()
           
 boolean getAnimate()
           
 int getHighlightTicks()
           
 java.lang.String getLabel(int index)
           
protected abstract  GaugeNeedleSingle.LabelPoint[] getLabelPoints()
          LabelPoint[0] is the minvalue and LabelPoint[size-1] is the maxvalue label.
protected abstract  double getMaxAngle()
           
 double getMaxBoundary()
           
 double getMaxValue()
           
protected abstract  double getMinAngle()
           
 double getMinBoundary()
           
protected  int getMinimalStepDelay()
           
 double getMinValue()
           
 int getNumberOfTicks()
           
protected abstract  double getPowerOffAngle()
           
abstract  java.awt.Dimension getPreferredSize()
           
protected  double getStepSize()
           
 java.lang.String getTitle()
           
protected abstract  GaugeNeedleSingle.LabelPoint getTitleLabelPoint()
           
 java.lang.String getUnit()
           
protected abstract  GaugeNeedleSingle.LabelPoint getUnitLabelPoint()
           
 double getValue()
           
 boolean isAnimating()
          return if the button currently is animating
protected  boolean isMaxAlertVisible()
           
protected  boolean isMinAlertVisible()
           
 boolean isPowerOn()
           
protected  boolean mustDrawMaxAlert()
           
protected  boolean mustDrawMinAlert()
           
 void paint(java.awt.Graphics g)
           
protected  void setAngle()
           
protected  void setAngle(double v)
          The angle of the needle
 void setAnimate(boolean v)
          animate
 void setHighlightTicks(int cnt)
          HighlightTicks
 void setLabel(int index, java.lang.String label)
          set one of the tick labels
protected  void setMaxAlertVisible(boolean v)
           
 void setMaxBoundary(double v)
          The Boundary associated with the maximum needle position
 void setMaxValue(double v)
          The value associated with the maximum needle position
protected  void setMinAlertVisible(boolean v)
           
 void setMinBoundary(double v)
          The Boundary associated with the minimum needle position
 void setMinValue(double v)
          The value associated with the minimum needle position
 void setNumberOfTicks(int cnt)
          NumberOfTicks
 void setPowerOn(boolean v)
          Is the gauge under power
 void setTitle(java.lang.String label)
          A short text on the cover
 void setUnit(java.lang.String label)
          the unit of the value (e.g.
 void setValue(double v)
          The value associated supposed needle position
 void setValueNotAnimated(double v)
           
 
Methods inherited from class javax.swing.JLabel
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, 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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, 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, 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, transferFocusBackward, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SOURCECODE_VERSION

public static final java.lang.String SOURCECODE_VERSION
Standard variable for determining version of a class file.

See Also:
Constant Field Values

cLabelFontRenderContext

protected static final java.awt.font.FontRenderContext cLabelFontRenderContext
Constructor Detail

GaugeNeedleSingle

public GaugeNeedleSingle()
Method Detail

setMinValue

public void setMinValue(double v)
The value associated with the minimum needle position


getMinValue

public double getMinValue()

setMaxValue

public void setMaxValue(double v)
The value associated with the maximum needle position


getMaxValue

public double getMaxValue()

setMinBoundary

public void setMinBoundary(double v)
The Boundary associated with the minimum needle position


getMinBoundary

public double getMinBoundary()

setMaxBoundary

public void setMaxBoundary(double v)
The Boundary associated with the maximum needle position


getMaxBoundary

public double getMaxBoundary()

setPowerOn

public void setPowerOn(boolean v)
Is the gauge under power


isPowerOn

public boolean isPowerOn()

setAnimate

public void setAnimate(boolean v)
animate


getAnimate

public boolean getAnimate()

setTitle

public void setTitle(java.lang.String label)
A short text on the cover


getTitle

public java.lang.String getTitle()

setUnit

public void setUnit(java.lang.String label)
the unit of the value (e.g. C for degrees celcius)


getUnit

public java.lang.String getUnit()

setLabel

public void setLabel(int index,
                     java.lang.String label)
set one of the tick labels


getLabel

public java.lang.String getLabel(int index)

setNumberOfTicks

public void setNumberOfTicks(int cnt)
NumberOfTicks


getNumberOfTicks

public int getNumberOfTicks()

setHighlightTicks

public void setHighlightTicks(int cnt)
HighlightTicks


getHighlightTicks

public int getHighlightTicks()

setValue

public void setValue(double v)
The value associated supposed needle position


getValue

public double getValue()

setValueNotAnimated

public void setValueNotAnimated(double v)

setAngle

protected void setAngle(double v)
The angle of the needle


getAngle

protected double getAngle()

getPowerOffAngle

protected abstract double getPowerOffAngle()

getMinAngle

protected abstract double getMinAngle()

getMaxAngle

protected abstract double getMaxAngle()

getTitleLabelPoint

protected abstract GaugeNeedleSingle.LabelPoint getTitleLabelPoint()

getUnitLabelPoint

protected abstract GaugeNeedleSingle.LabelPoint getUnitLabelPoint()

setMinAlertVisible

protected void setMinAlertVisible(boolean v)

isMinAlertVisible

protected boolean isMinAlertVisible()

setMaxAlertVisible

protected void setMaxAlertVisible(boolean v)

isMaxAlertVisible

protected boolean isMaxAlertVisible()

getLabelPoints

protected abstract GaugeNeedleSingle.LabelPoint[] getLabelPoints()
LabelPoint[0] is the minvalue and LabelPoint[size-1] is the maxvalue label.


getStepSize

protected double getStepSize()

getMinimalStepDelay

protected int getMinimalStepDelay()

getPreferredSize

public abstract java.awt.Dimension getPreferredSize()
Overrides:
getPreferredSize in class javax.swing.JComponent

setAngle

protected void setAngle()

calculateAngle

protected double calculateAngle(double value)

drawCompleteGauge

protected abstract java.awt.image.BufferedImage drawCompleteGauge()
This generates the complete gauge


drawNeedleOnly

protected abstract java.awt.image.BufferedImage drawNeedleOnly()
This only regenerates the needle part.


paint

public void paint(java.awt.Graphics g)
Overrides:
paint in class javax.swing.JComponent

isAnimating

public boolean isAnimating()
return if the button currently is animating


drawTicks

protected void drawTicks(java.awt.image.BufferedImage image,
                         GaugeNeedleSingle.Point2d center,
                         int tickDistance,
                         int tickLength,
                         double minAngle,
                         double maxAngle,
                         int numberOfTicks,
                         int highlightTicks)

drawImageTicks

protected void drawImageTicks(java.awt.image.BufferedImage image,
                              java.awt.image.BufferedImage tick,
                              GaugeNeedleSingle.Point2d center,
                              int tickDistance,
                              double minAngle,
                              double maxAngle,
                              int numberOfTicks,
                              int highlightTicks)

drawTickTrack

protected void drawTickTrack(java.awt.image.BufferedImage image,
                             java.awt.image.BufferedImage tick,
                             GaugeNeedleSingle.Point2d center,
                             int tickDistance,
                             double minAngle,
                             double maxAngle,
                             java.awt.Color color)

drawLabels

protected void drawLabels(java.awt.image.BufferedImage image,
                          java.awt.Font font,
                          java.awt.Color color)

drawUnit

protected void drawUnit(java.awt.image.BufferedImage image,
                        java.awt.Font font,
                        java.awt.Color color)

drawTitle

protected void drawTitle(java.awt.image.BufferedImage image,
                         java.awt.Font font,
                         java.awt.Color color)

mustDrawMinAlert

protected boolean mustDrawMinAlert()

mustDrawMaxAlert

protected boolean mustDrawMaxAlert()

drawNeedle

protected void drawNeedle(java.awt.image.BufferedImage image,
                          java.awt.image.BufferedImage needle,
                          GaugeNeedleSingle.Point2d center,
                          java.awt.Point offset,
                          double angle)

drawNeedleArc

protected void drawNeedleArc(java.awt.image.BufferedImage image,
                             java.awt.image.BufferedImage needle,
                             GaugeNeedleSingle.Point2d center,
                             java.awt.Point offset,
                             double minAngle,
                             double angle)

clearImage

protected void clearImage(java.awt.image.BufferedImage image)


Copyright © 2010. All Rights Reserved.