Class ImageDescriptors

java.lang.Object
com.diffplug.common.swt.jface.ImageDescriptors

public class ImageDescriptors extends Object
Utilities for using ImageDescriptors correctly.
  • Constructor Details

    • ImageDescriptors

      public ImageDescriptors()
  • Method Details

    • createManagedImage

      public static Image createManagedImage(ImageData data, Widget lifecycle)
      Creates an image from the given data, and disposes it when the lifecycle widget is disposed.
    • createSetter

      public static Box.Nullable<ImageDescriptor> createSetter(Widget lifecycle, Supplier<Image> imageGetter, Consumer<Image> imageSetter)
      ImageDescriptor allows an Image to be shared in a pool using reference counting. In order to not screw-up the reference counting, you need to be pretty careful with how you use them.

      This creates a Box.Nullable<ImageDescriptor> which sets and gets images in a way that will keep the reference counting happy.

      NO ONE MUST SET THE IMAGE EXCEPT THIS SETTER.

      Parameters:
      lifecycle - Any outstanding images will be destroyed with the lifecycle of this Widget.
      imageGetter - Function which returns the image currently on the Widget (used to ensure that nobody messed with it).
      imageSetter - Function which sets the image on the Widget.
      Returns:
      A `Box.Nullable` for setting the Image using an ImageDescriptor.
    • set

      public static void set(Item widget, ImageDescriptor image)
      Sets the given Item to have the image described by the given descriptor, maintaining proper reference counting.
    • set

      public static void set(Button widget, ImageDescriptor image)
      Sets the given Button to have the image described by the given descriptor, maintaining proper reference counting.
    • set

      public static void set(Label widget, ImageDescriptor image)
      Sets the given Label to have the image described by the given descriptor, maintaining proper reference counting.
    • getFromPool

      public static Image getFromPool(Widget owner, ImageDescriptor descriptor)
      Returns an image which will be bound to the lifecycle of the owner widget.