
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import java.util.*;
import java.net.*;
import java.io.*;
import org.apache.batik.swing.*;
import org.w3c.dom.svg.*;
import org.w3c.dom.*;
import org.apache.batik.dom.svg.*;

import org.apache.batik.swing.gvt.*;
import org.apache.batik.swing.svg.*;

import org.apache.batik.bridge.* ;

public class MyApplet extends JApplet {


/*
    StringBuffer buffer;

    public void init() {
	buffer = new StringBuffer();
        addItem("initializing... ");
    }

    public void start() {
        addItem("starting... ");
    }

    public void stop() {
        addItem("stopping... ");
    }

    public void destroy() {
        addItem("preparing for unloading...");
    }

    void addItem(String newWord) {
        System.out.println(newWord);
        buffer.append(newWord);
        repaint();
    }

    public void paint(Graphics g) {
	//Draw a Rectangle around the applet's display area.
        g.drawRect(0, 0, getSize().width - 1, getSize().height - 1);

	//Draw the current string inside the rectangle.
        g.drawString(buffer.toString(), 5, 15);
    }
*/

 public void init()
   {

	JSVGCanvas svgCanvas = new JSVGCanvas() ;

	svgCanvas.setURI(getClass().getClassLoader().getResource("test.svg").toExternalForm());
	//svgCanvas.setURI(f.toURL().toString());
  	getContentPane().add(svgCanvas);

	// Set the JSVGCanvas listeners.
        svgCanvas.addSVGDocumentLoaderListener(new SVGDocumentLoaderAdapter() {
            public void documentLoadingStarted(SVGDocumentLoaderEvent e) {
                System.out.println("Document Loading...");
            }
            public void documentLoadingCompleted(SVGDocumentLoaderEvent e) {
                System.out.println("Document Loaded.");
            }
        });

        svgCanvas.addGVTTreeBuilderListener(new GVTTreeBuilderAdapter() {
            public void gvtBuildStarted(GVTTreeBuilderEvent e) {
                System.out.println("Build Started...");
            }
            public void gvtBuildCompleted(GVTTreeBuilderEvent e) {
                System.out.println("Build Done.");
                
            }
        });

        svgCanvas.addGVTTreeRendererListener(new GVTTreeRendererAdapter() {
            public void gvtRenderingPrepare(GVTTreeRendererEvent e) {
                System.out.println("Rendering Started...");
            }
            public void gvtRenderingCompleted(GVTTreeRendererEvent e) {
                System.out.println("Rendering Done.");
            }
        });

        svgCanvas.addSVGLoadEventDispatcherListener(new SVGLoadEventDispatcherAdapter() {
            public void svgLoadEventDispatchStarted(SVGLoadEventDispatcherEvent e) {
                System.out.println("Load dispatch Started...");
            }
            public void svgLoadEventDispatchCompleted(SVGLoadEventDispatcherEvent e) {
                System.out.println("Load dispatch Done.");
            }
        });

        svgCanvas.addUpdateManagerListener(new UpdateManagerAdapter() {

            public void updateCompleted(UpdateManagerEvent e) {
                System.out.println("Update Done.");
            }

        });

   }

}
