Class SynthGraphicsUtils

java.lang.Object
javax.swing.plaf.synth.SynthGraphicsUtils

public class SynthGraphicsUtils extends Object
Wrapper for primitive graphics calls.
Since:
1.5
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a SynthGraphicsUtils.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Returns the size of the passed in string.
    void
    drawLine(SynthContext context, Object paintKey, Graphics g, int x1, int y1, int x2, int y2)
    Draws a line between the two end points.
    void
    drawLine(SynthContext context, Object paintKey, Graphics g, int x1, int y1, int x2, int y2, Object styleKey)
    Draws a line between the two end points.
    static int
    Returns the icon's height.
    static int
    getIconWidth(Icon icon, SynthContext context)
    Returns the icon's width.
    int
    Returns the maximum height of the Font from the passed in SynthContext.
    getMaximumSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)
    Returns the maximum size needed to properly render an icon and text.
    getMinimumSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)
    Returns the minimum size needed to properly render an icon and text.
    getPreferredSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)
    Returns the preferred size needed to properly render an icon and text.
    layoutText(SynthContext ss, FontMetrics fm, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int iconTextGap)
    Lays out text and an icon returning, by reference, the location to place the icon and text.
    static void
    paintIcon(Icon icon, SynthContext context, Graphics g, int x, int y, int width, int height)
    Paints the icon.
    void
    paintText(SynthContext ss, Graphics g, String text, int x, int y, int mnemonicIndex)
    Paints text at the specified location.
    void
    paintText(SynthContext ss, Graphics g, String text, Rectangle bounds, int mnemonicIndex)
    Paints text at the specified location.
    void
    paintText(SynthContext ss, Graphics g, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex, int textOffset)
    Paints an icon and text.

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Creates and returns a copy of this object.
    boolean
    Indicates whether some other object is "equal to" this one.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Finalization is deprecated and subject to removal in a future release.
    final Class<?>
    Returns the runtime class of this Object.
    int
    Returns a hash code value for this object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    Returns a string representation of the object.
    final void
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
    final void
    wait(long timeoutMillis)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
    final void
    wait(long timeoutMillis, int nanos)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  • Constructor Details

    • SynthGraphicsUtils

      public SynthGraphicsUtils()
      Creates a SynthGraphicsUtils.
  • Method Details

    • drawLine

      public void drawLine(SynthContext context, Object paintKey, Graphics g, int x1, int y1, int x2, int y2)
      Draws a line between the two end points.
      Parameters:
      context - Identifies hosting region.
      paintKey - Identifies the portion of the component being asked to paint, may be null.
      g - Graphics object to paint to
      x1 - x origin
      y1 - y origin
      x2 - x destination
      y2 - y destination
    • drawLine

      public void drawLine(SynthContext context, Object paintKey, Graphics g, int x1, int y1, int x2, int y2, Object styleKey)
      Draws a line between the two end points.

      This implementation supports only one line style key, "dashed". The "dashed" line style is applied only to vertical and horizontal lines.

      Specifying null or any key different from "dashed" will draw solid lines.

      Parameters:
      context - identifies hosting region
      paintKey - identifies the portion of the component being asked to paint, may be null
      g - Graphics object to paint to
      x1 - x origin
      y1 - y origin
      x2 - x destination
      y2 - y destination
      styleKey - identifies the requested style of the line (e.g. "dashed")
      Since:
      1.6
    • layoutText

      public String layoutText(SynthContext ss, FontMetrics fm, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int iconTextGap)
      Lays out text and an icon returning, by reference, the location to place the icon and text.
      Parameters:
      ss - SynthContext
      fm - FontMetrics for the Font to use, this may be ignored
      text - Text to layout
      icon - Icon to layout
      hAlign - horizontal alignment
      vAlign - vertical alignment
      hTextPosition - horizontal text position
      vTextPosition - vertical text position
      viewR - Rectangle to layout text and icon in.
      iconR - Rectangle to place icon bounds in
      textR - Rectangle to place text in
      iconTextGap - gap between icon and text
      Returns:
      by reference, the location to place the icon and text.
    • computeStringWidth

      public int computeStringWidth(SynthContext ss, Font font, FontMetrics metrics, String text)
      Returns the size of the passed in string.
      Parameters:
      ss - SynthContext
      font - Font to use
      metrics - FontMetrics, may be ignored
      text - Text to get size of.
      Returns:
      the size of the passed in string.
    • getMinimumSize

      public Dimension getMinimumSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)
      Returns the minimum size needed to properly render an icon and text.
      Parameters:
      ss - SynthContext
      font - Font to use
      text - Text to layout
      icon - Icon to layout
      hAlign - horizontal alignment
      vAlign - vertical alignment
      hTextPosition - horizontal text position
      vTextPosition - vertical text position
      iconTextGap - gap between icon and text
      mnemonicIndex - Index into text to render the mnemonic at, -1 indicates no mnemonic.
      Returns:
      the minimum size needed to properly render an icon and text.
    • getMaximumSize

      public Dimension getMaximumSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)
      Returns the maximum size needed to properly render an icon and text.
      Parameters:
      ss - SynthContext
      font - Font to use
      text - Text to layout
      icon - Icon to layout
      hAlign - horizontal alignment
      vAlign - vertical alignment
      hTextPosition - horizontal text position
      vTextPosition - vertical text position
      iconTextGap - gap between icon and text
      mnemonicIndex - Index into text to render the mnemonic at, -1 indicates no mnemonic.
      Returns:
      the maximum size needed to properly render an icon and text.
    • getMaximumCharHeight

      public int getMaximumCharHeight(SynthContext context)
      Returns the maximum height of the Font from the passed in SynthContext.
      Parameters:
      context - SynthContext used to determine font.
      Returns:
      maximum height of the characters for the font from the passed in context.
    • getPreferredSize

      public Dimension getPreferredSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)
      Returns the preferred size needed to properly render an icon and text.
      Parameters:
      ss - SynthContext
      font - Font to use
      text - Text to layout
      icon - Icon to layout
      hAlign - horizontal alignment
      vAlign - vertical alignment
      hTextPosition - horizontal text position
      vTextPosition - vertical text position
      iconTextGap - gap between icon and text
      mnemonicIndex - Index into text to render the mnemonic at, -1 indicates no mnemonic.
      Returns:
      the preferred size needed to properly render an icon and text.
    • paintText

      public void paintText(SynthContext ss, Graphics g, String text, Rectangle bounds, int mnemonicIndex)
      Paints text at the specified location. This will not attempt to render the text as html nor will it offset by the insets of the component.
      Parameters:
      ss - SynthContext
      g - Graphics used to render string in.
      text - Text to render
      bounds - Bounds of the text to be drawn.
      mnemonicIndex - Index to draw string at.
    • paintText

      public void paintText(SynthContext ss, Graphics g, String text, int x, int y, int mnemonicIndex)
      Paints text at the specified location. This will not attempt to render the text as html nor will it offset by the insets of the component.
      Parameters:
      ss - SynthContext
      g - Graphics used to render string in.
      text - Text to render
      x - X location to draw text at.
      y - Upper left corner to draw text at.
      mnemonicIndex - Index to draw string at.
    • paintText

      public void paintText(SynthContext ss, Graphics g, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex, int textOffset)
      Paints an icon and text. This will render the text as html, if necessary, and offset the location by the insets of the component.
      Parameters:
      ss - SynthContext
      g - Graphics to render string and icon into
      text - Text to layout
      icon - Icon to layout
      hAlign - horizontal alignment
      vAlign - vertical alignment
      hTextPosition - horizontal text position
      vTextPosition - vertical text position
      iconTextGap - gap between icon and text
      mnemonicIndex - Index into text to render the mnemonic at, -1 indicates no mnemonic.
      textOffset - Amount to offset the text when painting
    • getIconWidth

      public static int getIconWidth(Icon icon, SynthContext context)
      Returns the icon's width. The getIconWidth(context) method is called for SynthIcon.
      Parameters:
      icon - the icon
      context - SynthContext requesting the icon, may be null.
      Returns:
      an int specifying the width of the icon.
    • getIconHeight

      public static int getIconHeight(Icon icon, SynthContext context)
      Returns the icon's height. The getIconHeight(context) method is called for SynthIcon.
      Parameters:
      icon - the icon
      context - SynthContext requesting the icon, may be null.
      Returns:
      an int specifying the height of the icon.
    • paintIcon

      public static void paintIcon(Icon icon, SynthContext context, Graphics g, int x, int y, int width, int height)
      Paints the icon. The paintIcon(context, g, x, y, width, height) method is called for SynthIcon.
      Parameters:
      icon - the icon
      context - identifies hosting region, may be null.
      g - the graphics context
      x - the x location to paint to
      y - the y location to paint to
      width - the width of the region to paint to, may be 0
      height - the height of the region to paint to, may be 0