You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-dev@xmlgraphics.apache.org by Venkataramana_Jaladurgam <Ve...@Satyam.com> on 2005/01/19 14:16:46 UTC

Mix SVG and Swing components

Hello,
  I am required to add Swing components to the SVG canvas. I want to use the
batik extensions.
 The trouble I am facing is in the actual rendering class:

public class SwingGraphicsNode extends AbstractGraphicsNode
{
	JTextField fComponent = new JTextField(10);

	public void primitivePaint(Graphics2D g2d) {
                       Rectangle2D bounds = getBounds();
                       g = g2d.create();
                       g.translate(20,20); //Example translation
                       fComponent.paint(g);
        } 

}
  

The output I am getting in the JSVGCanvas is a static version of JTextField.
I cannot enter characters or do anything with it. 
Any ideas? I believe if I can access JSVGCanvas or the related class where
the components are being rendered, then I can directly add my swing
component to it. But couldn't get how to get it. Batik developers pls. help.


************************************************************************** 
This email (including any attachments) is intended for the sole use of the
intended recipient/s and may contain material that is CONFIDENTIAL AND
PRIVATE COMPANY INFORMATION. Any review or reliance by others or copying or
distribution or forwarding of any or all of the contents in this message is
STRICTLY PROHIBITED. If you are not the intended recipient, please contact
the sender by email and delete all copies; your cooperation in this regard
is appreciated.
**************************************************************************

---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: batik-dev-help@xml.apache.org


Re: Mix SVG and Swing components

Posted by Tonny Kohar <to...@kiyut.com>.
Hi,

>   I am required to add Swing components to the SVG canvas. I want to use the
> batik extensions.
>  The trouble I am facing is in the actual rendering class:

> The output I am getting in the JSVGCanvas is a static version of JTextField.
> I cannot enter characters or do anything with it. 
> Any ideas? I believe if I can access JSVGCanvas or the related class where
> the components are being rendered, then I can directly add my swing
> component to it. But couldn't get how to get it. Batik developers pls. help.

I do not know how to solve your problem, but as far as I know the batik
GVT part is render the SVG stuff into Image that will be painted into
the JSVGCanvas. The package org.apache.batik.gvt.renderer is where the
rendering stuff.

How about extending JSVGCanvas or its parent paintComponent method and
adding your textField there. Or maybe wrap JSVGCanvas and your textfield
into custom component and using Java JComponent layer or z-order
capability.

Regards
Tonny Kohar
-- 
Sketsa 
SVG Graphics Editor
http://www.kiyut.com



---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: batik-dev-help@xml.apache.org