Module java.desktop

Class SynthGraphicsUtils

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

public class SynthGraphicsUtils
extends Object
Wrapper for primitive graphics calls.
Since:
1.5
  • 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