hillion 02/03/18 04:46:13
Modified: sources/org/apache/batik/bridge ScriptingEnvironment.java
Log:
Fixed the handling of UI events on dynamically inserted elements.
Revision Changes Path
1.14 +38 -2
xml-batik/sources/org/apache/batik/bridge/ScriptingEnvironment.java
Index: ScriptingEnvironment.java
===================================================================
RCS file:
/home/cvs/xml-batik/sources/org/apache/batik/bridge/ScriptingEnvironment.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- ScriptingEnvironment.java 18 Mar 2002 10:28:20 -0000 1.13
+++ ScriptingEnvironment.java 18 Mar 2002 12:46:13 -0000 1.14
@@ -29,7 +29,7 @@
* This class contains the informations needed by the SVG scripting.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Stephane Hillion</a>
- * @version $Id: ScriptingEnvironment.java,v 1.13 2002/03/18 10:28:20 hillion Exp $
+ * @version $Id: ScriptingEnvironment.java,v 1.14 2002/03/18 12:46:13 hillion Exp $
*/
public class ScriptingEnvironment extends BaseScriptingEnvironment {
@@ -59,6 +59,16 @@
protected EventListener domAttrModifiedListener;
/**
+ * The DOMNodeInserted event listener.
+ */
+ protected EventListener domNodeInsertedListener;
+
+ /**
+ * The DOMNodeRemoved event listener.
+ */
+ protected EventListener domNodeRemovedListener;
+
+ /**
* The SVGAbort event listener.
*/
protected EventListener svgAbortListener =
@@ -181,12 +191,20 @@
// Add the scripting listeners.
addScriptingListeners(doc.getDocumentElement());
- // Add the listener responsible of updating the event attributes
+ // Add the listeners responsible of updating the event attributes
EventTarget et = (EventTarget)doc;
domAttrModifiedListener = new DOMAttrModifiedListener();
et.addEventListener("DOMAttrModified",
domAttrModifiedListener,
false);
+ domNodeInsertedListener = new DOMNodeInsertedListener();
+ et.addEventListener("DOMNodeInserted",
+ domNodeInsertedListener,
+ false);
+ domNodeRemovedListener = new DOMNodeRemovedListener();
+ et.addEventListener("DOMAttrRemoved",
+ domNodeRemovedListener,
+ false);
}
/**
@@ -593,6 +611,24 @@
* document.
*/
protected class DOMAttrModifiedListener implements EventListener {
+ public void handleEvent(Event evt) {
+ // !!! Updates the listeners.
+ }
+ }
+
+ /**
+ * The listener class for 'DOMNodeInserted' event.
+ */
+ protected class DOMNodeInsertedListener implements EventListener {
+ public void handleEvent(Event evt) {
+ addScriptingListeners((Node)evt.getTarget());
+ }
+ }
+
+ /**
+ * The listener class for 'DOMNodeRemoved' event.
+ */
+ protected class DOMNodeRemovedListener implements EventListener {
public void handleEvent(Event evt) {
// !!! Updates the listeners.
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]