I have an application that I would like to implement using SVG and the Java
Language Binding Scripting. I have an SVG document and a Java
EventListenerInitializer that is working in Squiggle. So far, so good. Now
I would like to sping off a thread that creates a socket connection and
listens for data. When the data arrives I would like to update the SVG DOM.
To do that I need to ask the Batik canvas for the update manager and ask
that for the runnable queue then queue up a runnable to do the update.
However, I don't have a reference to the canvas. Is there some way to get
one from the document?
I would also like my code to not use any Batik implementation specific stuff
(in the hope that other browsers will also support SVG with Java scripting).
So I took a look at the SVG 1.2 spec to see if there was some upcoming
standard way to do this. Section 11 talks about adding a SVGWindow
interface with a way to create SVGTimer objects that can run a set of
SVGRunnable objects. So it sounds like the following:
SVGDocument document = ?:
SVGWindow window = document.getSVGWindow();
SVGTimer timer = window.createTimer(0, false);
timer.addHandler(new SVGRunnable() {
public void run() {
}
});
timer.start();
will have the same effect as:
SVGCanvas canvas = ?;
UpdateManager updateManager = canvas.getUpdateManager();
RunnableQueue runnableQueue = updateManager.getRunnableQueue();
runnableQueue.invokeLater(new Runnable() {
public void run() {
}
});
but it could potentially run in other implementations. Does that sound
right?
BTW: It looks like adding these interfaces and an implementation that just
routes the calls the existing Batik code would be fairly straight forward.
Is there any interest in that?
Thanks,
Denis
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]