Class DecoratedNeonIcon

  • All Implemented Interfaces:
    javax.swing.Icon, org.pushingpixels.neon.api.AsynchronousLoading, org.pushingpixels.neon.api.icon.NeonIcon


    public class DecoratedNeonIcon
    extends java.lang.Object
    implements org.pushingpixels.neon.api.icon.NeonIcon, org.pushingpixels.neon.api.AsynchronousLoading
    Implementation of NeonIcon that adds decorations to a main icon.
    • Constructor Detail

      • DecoratedNeonIcon

        public DecoratedNeonIcon​(org.pushingpixels.neon.api.icon.NeonIcon delegate,
                                 DecoratedNeonIcon.IconDecorator... decorators)
        Creates a new decorated icon.
        Parameters:
        delegate - The main icon.
        decorators - Icon decorators.
      • DecoratedNeonIcon

        public DecoratedNeonIcon​(org.pushingpixels.neon.api.icon.NeonIcon delegate)
        Creates a new decorated icon with no decorators. Decorators can be added later with addIconDecorator(IconDecorator).
        Parameters:
        delegate - Main icon.
    • Method Detail

      • getIconHeight

        public int getIconHeight​()
        Specified by:
        getIconHeight in interface javax.swing.Icon
      • getIconWidth

        public int getIconWidth​()
        Specified by:
        getIconWidth in interface javax.swing.Icon
      • paintIcon

        public void paintIcon​(java.awt.Component c,
                              java.awt.Graphics g,
                              int x,
                              int y)
        Specified by:
        paintIcon in interface javax.swing.Icon
      • setDimension

        public void setDimension​(java.awt.Dimension newDimension)
        Specified by:
        setDimension in interface org.pushingpixels.neon.api.icon.NeonIcon
      • supportsColorFilter

        public boolean supportsColorFilter​()
        Specified by:
        supportsColorFilter in interface org.pushingpixels.neon.api.icon.NeonIcon
      • setColorFilter

        public void setColorFilter​(org.pushingpixels.neon.api.icon.NeonIcon.ColorFilter colorFilter)
        Specified by:
        setColorFilter in interface org.pushingpixels.neon.api.icon.NeonIcon
      • addIconDecorator

        public void addIconDecorator​(DecoratedNeonIcon.IconDecorator decorator)
        Adds the specified decorator to the end of the decorator sequence. If the specified decorator already exists, it is not moved to the end of the sequence.
        Parameters:
        decorator - Decorator to add.
      • removeIconDecorator

        public void removeIconDecorator​(DecoratedNeonIcon.IconDecorator decorator)
        Removes the specified decorator.
        Parameters:
        decorator - Decorator to remove.
      • addAsynchronousLoadListener

        public void addAsynchronousLoadListener​(org.pushingpixels.neon.api.AsynchronousLoadListener l)
        Specified by:
        addAsynchronousLoadListener in interface org.pushingpixels.neon.api.AsynchronousLoading
      • removeAsynchronousLoadListener

        public void removeAsynchronousLoadListener​(org.pushingpixels.neon.api.AsynchronousLoadListener l)
        Specified by:
        removeAsynchronousLoadListener in interface org.pushingpixels.neon.api.AsynchronousLoading
      • isLoading

        public boolean isLoading​()
        Specified by:
        isLoading in interface org.pushingpixels.neon.api.AsynchronousLoading
      • factory

        public static org.pushingpixels.neon.api.icon.NeonIcon.Factory factory​(org.pushingpixels.neon.api.icon.NeonIcon.Factory original,
                                                                               DecoratedNeonIcon.IconDecorator... decorators)