com.explodingpixels.macwidgets.plaf
Class EmphasizedLabelUI

java.lang.Object
  extended by javax.swing.plaf.ComponentUI
      extended by javax.swing.plaf.LabelUI
          extended by javax.swing.plaf.basic.BasicLabelUI
              extended by com.explodingpixels.macwidgets.plaf.EmphasizedLabelUI
All Implemented Interfaces:
PropertyChangeListener, EventListener

public class EmphasizedLabelUI
extends BasicLabelUI

A BasicLabelUI that paints a shadow under the text using the given shadow color, which helps emphasize the text. The UI delegate also provides a facility for drawing a different shadow color when the corresponding label's containing Window is unfocused.

While this UI delegate can be directly installed on existing JLabels, it is recommended that you use the MacWidgetFactory.createEmphasizedLabel(String) or MacWidgetFactory.makeEmphasizedLabel(JLabel, Color, Color, Color) factory methods.

Here's a close-up of an emphasized label:


Field Summary
static Color DEFAULT_DISABLED_FONT_COLOR
           
static Color DEFAULT_EMPHASIS_COLOR
           
static Color DEFAULT_FOCUSED_FONT_COLOR
           
static Color DEFAULT_UNFOCUSED_FONT_COLOR
           
 
Fields inherited from class javax.swing.plaf.basic.BasicLabelUI
labelUI
 
Constructor Summary
EmphasizedLabelUI()
          Creates an EmphasizedLabelUI using the default colors.
EmphasizedLabelUI(Color focusedTextColor, Color unfocusedTextColor, Color emphasisColor)
          Creates an EmphasizedLabelUI using the given colors.
 
Method Summary
 void installUI(JComponent c)
           
protected  void paintDisabledText(JLabel label, Graphics g, String s, int textX, int textY)
           
protected  void paintEnabledText(JLabel label, Graphics g, String s, int textX, int textY)
           
 void uninstallUI(JComponent c)
           
 
Methods inherited from class javax.swing.plaf.basic.BasicLabelUI
createUI, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, installComponents, installDefaults, installKeyboardActions, installListeners, layoutCL, paint, propertyChange, uninstallComponents, uninstallDefaults, uninstallKeyboardActions, uninstallListeners
 
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_EMPHASIS_COLOR

public static final Color DEFAULT_EMPHASIS_COLOR

DEFAULT_FOCUSED_FONT_COLOR

public static final Color DEFAULT_FOCUSED_FONT_COLOR

DEFAULT_UNFOCUSED_FONT_COLOR

public static final Color DEFAULT_UNFOCUSED_FONT_COLOR

DEFAULT_DISABLED_FONT_COLOR

public static final Color DEFAULT_DISABLED_FONT_COLOR
Constructor Detail

EmphasizedLabelUI

public EmphasizedLabelUI()
Creates an EmphasizedLabelUI using the default colors.


EmphasizedLabelUI

public EmphasizedLabelUI(Color focusedTextColor,
                         Color unfocusedTextColor,
                         Color emphasisColor)
Creates an EmphasizedLabelUI using the given colors.

Parameters:
focusedTextColor - the color to draw the text with when the parent Window has focus.
unfocusedTextColor - the color to draw the text with when the parent Window does not have focus.
emphasisColor - the color to draw the emphasis text with.
Method Detail

installUI

public void installUI(JComponent c)
Overrides:
installUI in class BasicLabelUI

uninstallUI

public void uninstallUI(JComponent c)
Overrides:
uninstallUI in class BasicLabelUI

paintEnabledText

protected void paintEnabledText(JLabel label,
                                Graphics g,
                                String s,
                                int textX,
                                int textY)
Overrides:
paintEnabledText in class BasicLabelUI

paintDisabledText

protected void paintDisabledText(JLabel label,
                                 Graphics g,
                                 String s,
                                 int textX,
                                 int textY)
Overrides:
paintDisabledText in class BasicLabelUI