Class LafWidgetUtilities

java.lang.Object
org.pushingpixels.lafwidget.LafWidgetUtilities

public class LafWidgetUtilities extends Object
Various utility functions.
  • Field Details

    • PREVIEW_MODE

      public static final String PREVIEW_MODE
      Name for the internal client property that marks a component as previewable.
      See Also:
  • Method Details

    • getBlankImage

      public static BufferedImage getBlankImage(int width, int height)
      Retrieves transparent image of specified dimension.
      Parameters:
      width - Image width.
      height - Image height.
      Returns:
      Transparent image of specified dimension.
    • createCompatibleImage

      public static BufferedImage createCompatibleImage(BufferedImage image)
      Creates a compatible image (for efficient processing and drawing).
      Parameters:
      image - The original image.
      Returns:
      Compatible version of the original image.
    • createThumbnail

      public static BufferedImage createThumbnail(BufferedImage image, int requestedThumbWidth)
      Creates a thumbnail of the specified width.
      Parameters:
      image - The original image.
      requestedThumbWidth - The width of the resulting thumbnail.
      Returns:
      Thumbnail of the specified width.
    • getSearchIcon

      public static Icon getSearchIcon(int dimension, boolean leftToRight)
      Returns search icon.
      Parameters:
      dimension - Icon dimension.
      leftToRight - Indicates the orientation of the resulting icon.
      Returns:
      Search icon.
    • getHexaMarker

      public static Icon getHexaMarker(int value)
      Returns small icon representation of the specified integer value. The remainder of dividing the integer by 16 is translated to four circles arranged in 2*2 grid.
      Parameters:
      value - Integer value to represent.
      Returns:
      Icon representation of the specified integer value.
    • makePreviewable

      public static void makePreviewable(Component comp, Map<Component,Boolean> dbSnapshot)
      Makes the specified component and all its descendants previewable.
      Parameters:
      comp - Component.
      dbSnapshot - The "snapshot" map that will contain the original double-buffer status of the specified component and all its descendants. Key is JComponent, value is Boolean.
    • restorePreviewable

      public static void restorePreviewable(Component comp, Map<Component,Boolean> dbSnapshot)
      Restores the regular (non-previewable) status of the specified component and all its descendants.
      Parameters:
      comp - Component.
      dbSnapshot - The "snapshot" map that contains the original double-buffer status of the specified component and all its descendants. Key is JComponent, value is Boolean.
    • getSmallLockIcon

      public static Icon getSmallLockIcon()
      Returns a lock icon.
      Returns:
      Lock icon.
    • hasTextFocusSelectAllProperty

      public static boolean hasTextFocusSelectAllProperty(JTextComponent textComp)
      Checks whether the specified text component has "select all on focus gain" property.
      Parameters:
      textComp - Text component.
      Returns:
      true if the specified text component has "select all on focus gain" property, false otherwise.
    • hasTextFlipSelectOnEscapeProperty

      public static boolean hasTextFlipSelectOnEscapeProperty(JTextComponent textComp)
      Checks whether the specified text component has "flip select on escape" property.
      Parameters:
      textComp - Text component.
      Returns:
      true if the specified text component has "flip select on escape" property, false otherwise.
    • hasTextEditContextMenu

      public static boolean hasTextEditContextMenu(JTextComponent textComp)
      Checks whether the specified text component has edit context menu property.
      Parameters:
      textComp - Text component.
      Returns:
      true if the specified text component has edit context menu property, false otherwise.
    • hasAutoScroll

      public static boolean hasAutoScroll(JScrollPane scrollPane)
      Checks whether the specified scroll pane supports auto scroll.
      Parameters:
      scrollPane - Scroll pane component.
      Returns:
      true if the specified scroll pane supports auto scroll, false otherwise.
    • hasAutomaticDnDSupport

      public static boolean hasAutomaticDnDSupport(JTree tree)
      Checks whether the specified tree component has automatic drag and drop support.
      Parameters:
      tree - Tree component.
      Returns:
      true if the specified text component has automatic drag and drop support, false otherwise.
    • toIgnoreGlobalLocale

      public static boolean toIgnoreGlobalLocale(JComponent jcomp)
      Checks whether the label lookup should use component-specific locale on the specified component.
      Parameters:
      jcomp - Component.
      Returns:
      true if the custom labels should be looked up based on the component locale as returned by Component.getLocale(), false if the custom labels should be looked up based on the global locale as returned by Locale.getDefault().
    • getResourceBundle

      public static ResourceBundle getResourceBundle(JComponent jcomp)
      Returns the resource bundle for the specified component.
      Parameters:
      jcomp - Component.
      Returns:
      Resource bundle for the specified component.
    • hasNoAnimations

      public static boolean hasNoAnimations(Component comp, AnimationFacet animationFacet)
      Checks whether the specified component has been configured (specifically or globally) to have no animations of the specific facet. Can be used to cull unnecessary code in animation listeners on large tables and lists.
      Parameters:
      comp - Component.
      animationFacet - Animation facet.
      Returns:
      true if the specified component has been configured (specifically or globally) to have no animations of the specific facet, false otherwise.
    • getIcon

      public static Icon getIcon(AbstractButton b)
      Returns the current icon for the specified button. This method is for internal use only.
      Parameters:
      b - Button.
      Returns:
      Icon for the specified button.
    • toIgnoreAnimations

      public static boolean toIgnoreAnimations(Component comp)
    • testComponentStateChangeThreadingViolation

      public static void testComponentStateChangeThreadingViolation(Component comp)
      Tests UI threading violations on changing the state the specified component.
      Parameters:
      comp - Component.
      Throws:
      UiThreadingViolationException - If the component is changing state off Event Dispatch Thread.
    • firePropertyChangeEvent

      public static void firePropertyChangeEvent(JComponent component, String propertyName, Object oldValue, Object newValue)
      Fires the matching property change event on the specific component.
      Parameters:
      component - Component.
      propertyName - Property name.
      oldValue - Old property value.
      newValue - New property value.
    • getAlphaComposite

      public static Composite getAlphaComposite(Component c, float translucency, Graphics g)
      Returns the composite to use for painting the specified component. The result should be set on the Graphics2D before any custom rendering is done. This method can be used by application painting code and by look-and-feel delegates.
      Parameters:
      c - Component.
      translucency - The translucency of the original painting.
      g - The original graphics context.
      Returns:
      The composite to use for painting the specified component.
    • getAlphaComposite

      public static Composite getAlphaComposite(Component c, float translucency)
    • getAlphaComposite

      public static Composite getAlphaComposite(Component c, Graphics g)
      Returns the composite to use for painting the specified component. The result should be set on the Graphics2D before any custom rendering is done. This method can be used by application painting code and by look-and-feel delegates.
      Parameters:
      c - Component.
      Returns:
      The composite to use for painting the specified component.
    • getAlphaComposite

      public static Composite getAlphaComposite(Component c)
      Returns the composite to use for painting the specified component. The result should be set on the Graphics2D before any custom rendering is done. This method can be used by application painting code and by look-and-feel delegates.
      Parameters:
      c - Component.
      Returns:
      The composite to use for painting the specified component.