From 683eba468b16f0a85ded546d1426125dcf1d47b0 Mon Sep 17 00:00:00 2001 From: kitfox Date: Wed, 10 Oct 2012 08:25:22 +0000 Subject: Creating wrapper Graphics when painting SVGIcon, SVGPanel. git-svn-id: https://svn.java.net/svn/svgsalamander~svn/trunk/svg-core@131 7dc7fa77-23fb-e6ad-8e2e-c86bd48ed22b --- .../java/com/kitfox/svg/app/beans/SVGPanel.java | 43 +++++++++++++++------- 1 file changed, 30 insertions(+), 13 deletions(-) (limited to 'src/main/java/com/kitfox/svg/app/beans/SVGPanel.java') diff --git a/src/main/java/com/kitfox/svg/app/beans/SVGPanel.java b/src/main/java/com/kitfox/svg/app/beans/SVGPanel.java index 396bd9b..a60be35 100644 --- a/src/main/java/com/kitfox/svg/app/beans/SVGPanel.java +++ b/src/main/java/com/kitfox/svg/app/beans/SVGPanel.java @@ -6,13 +6,11 @@ package com.kitfox.svg.app.beans; -import javax.swing.*; +import com.kitfox.svg.*; import java.awt.*; import java.awt.geom.*; import java.net.*; -import java.beans.*; - -import com.kitfox.svg.*; +import javax.swing.*; /** * @@ -41,35 +39,54 @@ public class SVGPanel extends JPanel public int getSVGHeight() { - if (scaleToFit) return getPreferredSize().height; + if (scaleToFit) + { + return getPreferredSize().height; + } SVGDiagram diagram = svgUniverse.getDiagram(svgURI); - if (diagram == null) return 0; + if (diagram == null) + { + return 0; + } return (int)diagram.getHeight(); } public int getSVGWidth() { - if (scaleToFit) return getPreferredSize().width; + if (scaleToFit) + { + return getPreferredSize().width; + } SVGDiagram diagram = svgUniverse.getDiagram(svgURI); - if (diagram == null) return 0; + if (diagram == null) + { + return 0; + } return (int)diagram.getWidth(); } -// Draw the icon at the specified location. public void paintComponent(Graphics gg) { super.paintComponent(gg); - - Graphics2D g = (Graphics2D)gg; - + + Graphics2D g = (Graphics2D)gg.create(); + paintComponent(g); + g.dispose(); + } + + private void paintComponent(Graphics2D g) + { Object oldAliasHint = g.getRenderingHint(RenderingHints.KEY_ANTIALIASING); g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, antiAlias ? RenderingHints.VALUE_ANTIALIAS_ON : RenderingHints.VALUE_ANTIALIAS_OFF); SVGDiagram diagram = svgUniverse.getDiagram(svgURI); - if (diagram == null) return; + if (diagram == null) + { + return; + } if (!scaleToFit) { -- cgit v1.2.3-55-g7522