Class SVGIcon

  • All Implemented Interfaces:
    java.io.Serializable, javax.accessibility.Accessible, javax.swing.Icon

    public class SVGIcon
    extends javax.swing.ImageIcon
    See Also:
    Serialized Form
    • Field Detail

      • changes

        private final java.beans.PropertyChangeSupport changes
      • INTERP_NEAREST_NEIGHBOR

        public static final int INTERP_NEAREST_NEIGHBOR
        See Also:
        Constant Field Values
      • antiAlias

        private boolean antiAlias
      • interpolation

        private int interpolation
      • clipToViewbox

        private boolean clipToViewbox
      • svgURI

        java.net.URI svgURI
      • scaleXform

        java.awt.geom.AffineTransform scaleXform
      • autosize

        private int autosize
      • preferredSize

        java.awt.Dimension preferredSize
    • Constructor Detail

      • SVGIcon

        public SVGIcon()
        Creates a new instance of SVGIcon
    • Method Detail

      • addPropertyChangeListener

        public void addPropertyChangeListener​(java.beans.PropertyChangeListener p)
      • removePropertyChangeListener

        public void removePropertyChangeListener​(java.beans.PropertyChangeListener p)
      • getImage

        public java.awt.Image getImage()
        Overrides:
        getImage in class javax.swing.ImageIcon
      • getIconHeightIgnoreAutosize

        public int getIconHeightIgnoreAutosize()
        Returns:
        height of this icon
      • getIconWidthIgnoreAutosize

        public int getIconWidthIgnoreAutosize()
        Returns:
        width of this icon
      • isAutoSizeBestFitUseFixedHeight

        private boolean isAutoSizeBestFitUseFixedHeight​(int iconWidthIgnoreAutosize,
                                                        int iconHeightIgnoreAutosize,
                                                        SVGDiagram diagram)
      • getIconWidth

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

        public int getIconHeight()
        Specified by:
        getIconHeight in interface javax.swing.Icon
        Overrides:
        getIconHeight in class javax.swing.ImageIcon
      • paintIcon

        public void paintIcon​(java.awt.Component comp,
                              java.awt.Graphics gg,
                              int x,
                              int y)
        Draws the icon to the specified component.
        Specified by:
        paintIcon in interface javax.swing.Icon
        Overrides:
        paintIcon in class javax.swing.ImageIcon
        Parameters:
        comp - - Component to draw icon to. This is ignored by SVGIcon, and can be set to null; only gg is used for drawing the icon
        gg - - Graphics context to render SVG content to
        x - - X coordinate to draw icon
        y - - Y coordinate to draw icon
      • paintIcon

        private void paintIcon​(java.awt.Component comp,
                               java.awt.Graphics2D g,
                               int x,
                               int y)
      • getSvgUniverse

        public SVGUniverse getSvgUniverse()
        Returns:
        the universe this icon draws it's SVGDiagrams from
      • setSvgUniverse

        public void setSvgUniverse​(SVGUniverse svgUniverse)
      • getSvgURI

        public java.net.URI getSvgURI()
        Returns:
        the uni of the document being displayed by this icon
      • setSvgURI

        public void setSvgURI​(java.net.URI svgURI)
        Loads an SVG document from a URI.
        Parameters:
        svgURI - - URI to load document from
      • setSvgResourcePath

        public void setSvgResourcePath​(java.lang.String resourcePath)
        Loads an SVG document from the classpath. This function is equivilant to setSvgURI(new URI(getClass().getResource(resourcePath).toString());
        Parameters:
        resourcePath - - resource to load
      • isScaleToFit

        public boolean isScaleToFit()
        Deprecated.
        If this SVG document has a viewbox, if scaleToFit is set, will scale the viewbox to match the preferred size of this icon
        Returns:
      • setScaleToFit

        public void setScaleToFit​(boolean scaleToFit)
        Deprecated.
      • getPreferredSize

        public java.awt.Dimension getPreferredSize()
      • setPreferredSize

        public void setPreferredSize​(java.awt.Dimension preferredSize)
      • getUseAntiAlias

        public boolean getUseAntiAlias()
        Deprecated.
        Returns:
        true if antiAliasing is turned on.
      • setUseAntiAlias

        public void setUseAntiAlias​(boolean antiAlias)
        Deprecated.
        Parameters:
        antiAlias - true to use antiAliasing.
      • getAntiAlias

        public boolean getAntiAlias()
        Returns:
        true if antiAliasing is turned on.
      • setAntiAlias

        public void setAntiAlias​(boolean antiAlias)
        Parameters:
        antiAlias - true to use antiAliasing.
      • getInterpolation

        public int getInterpolation()
        Returns:
        interpolation used in rescaling images
      • setInterpolation

        public void setInterpolation​(int interpolation)
        Parameters:
        interpolation - Interpolation value used in rescaling images. Should be one of INTERP_NEAREST_NEIGHBOR - Fastest, one pixel resampling, poor quality INTERP_BILINEAR - four pixel resampling INTERP_BICUBIC - Slowest, nine pixel resampling, best quality
      • isClipToViewbox

        public boolean isClipToViewbox()
        clipToViewbox will set a clip box equivilant to the SVG's viewbox before rendering.
      • setClipToViewbox

        public void setClipToViewbox​(boolean clipToViewbox)
      • getAutosize

        public int getAutosize()
        Returns:
        the autosize
      • setAutosize

        public void setAutosize​(int autosize)
        Parameters:
        autosize - the autosize to set