Java 类org.w3c.dom.events.EventListener 实例源码
项目:Push2Display
文件:BridgeEventSupport.java
/**
* Is called only for the root element in order to dispatch GVT
* events to the DOM.
*/
public static void addGVTListener(BridgeContext ctx, Document doc) {
UserAgent ua = ctx.getUserAgent();
if (ua != null) {
EventDispatcher dispatcher = ua.getEventDispatcher();
if (dispatcher != null) {
final Listener listener = new Listener(ctx, ua);
dispatcher.addGraphicsNodeMouseListener(listener);
dispatcher.addGraphicsNodeKeyListener(listener);
// add an unload listener on the SVGDocument to remove
// that listener for dispatching events
EventListener l = new GVTUnloadListener(dispatcher, listener);
NodeEventTarget target = (NodeEventTarget)doc;
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false, null);
storeEventListenerNS
(ctx, target,
XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false);
}
}
}
项目:Push2Display
文件:ScriptingEnvironment.java
/**
* Updates the registration of a listener on the given element.
*/
protected void updateScriptingListeners(Element elt, String attr) {
String domEvt = (String) attrToDOMEvent.get(attr);
if (domEvt == null) {
return; // Not an event attr.
}
EventListener listener = (EventListener) attrToListener.get(attr);
NodeEventTarget target = (NodeEventTarget) elt;
if (elt.hasAttributeNS(null, attr)) {
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI, domEvt,
listener, false, null);
} else {
target.removeEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI, domEvt,
listener, false);
}
}
项目:Push2Display
文件:SVG12BridgeEventSupport.java
/**
* Is called only for the root element in order to dispatch GVT
* events to the DOM.
*/
public static void addGVTListener(BridgeContext ctx, Document doc) {
UserAgent ua = ctx.getUserAgent();
if (ua != null) {
EventDispatcher dispatcher = ua.getEventDispatcher();
if (dispatcher != null) {
final Listener listener = new Listener(ctx, ua);
dispatcher.addGraphicsNodeMouseListener(listener);
dispatcher.addGraphicsNodeMouseWheelListener(listener);
dispatcher.addGraphicsNodeKeyListener(listener);
// add an unload listener on the SVGDocument to remove
// that listener for dispatching events
EventListener l = new GVTUnloadListener(dispatcher, listener);
NodeEventTarget target = (NodeEventTarget) doc;
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false, null);
storeEventListenerNS
(ctx, target,
XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false);
}
}
}
项目:Push2Display
文件:SVGUseElementBridge.java
/**
* Builds using the specified BridgeContext and element, the
* specified graphics node.
*
* @param ctx the bridge context to use
* @param e the element that describes the graphics node to build
* @param node the graphics node to build
*/
public void buildGraphicsNode(BridgeContext ctx,
Element e,
GraphicsNode node) {
super.buildGraphicsNode(ctx, e, node);
if (ctx.isInteractive()) {
NodeEventTarget target = (NodeEventTarget)e;
EventListener l = new CursorMouseOverListener(ctx);
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI, SVG_EVENT_MOUSEOVER,
l, false, null);
ctx.storeEventListenerNS
(target, XMLConstants.XML_EVENTS_NAMESPACE_URI, SVG_EVENT_MOUSEOVER,
l, false);
}
}
项目:Push2Display
文件:BridgeContext.java
public void removeUIEventListeners(Document doc) {
EventTarget evtTarget = (EventTarget)doc.getDocumentElement();
synchronized (eventListenerSet) {
Iterator i = eventListenerSet.iterator();
while (i.hasNext()) {
EventListenerMememto elm = (EventListenerMememto)i.next();
NodeEventTarget et = elm.getTarget();
if (et == evtTarget) {
EventListener el = elm.getListener();
boolean uc = elm.getUseCapture();
String t = elm.getEventType();
boolean n = elm.getNamespaced();
if (et == null || el == null || t == null) {
continue;
}
if (n) {
String ns = elm.getNamespaceURI();
et.removeEventListenerNS(ns, t, el, uc);
} else {
et.removeEventListener(t, el, uc);
}
}
}
}
}
项目:Push2Display
文件:AbstractNode.java
/**
* <b>DOM</b>: Implements
* {@link
* NodeEventTarget#addEventListenerNS(String,String,EventListener,boolean,Object)}.
*/
public void addEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture,
Object evtGroup) {
if (eventSupport == null) {
initializeEventSupport();
}
if (namespaceURI != null && namespaceURI.length() == 0) {
namespaceURI = null;
}
eventSupport.addEventListenerNS(namespaceURI,
type,
listener,
useCapture,
evtGroup);
}
项目:Push2Display
文件:EventSupport.java
/**
* Deregisters an event listener.
*/
public void removeEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture) {
HashTable listeners;
if (useCapture) {
listeners = capturingListeners;
} else {
listeners = bubblingListeners;
}
if (listeners == null) {
return;
}
EventListenerList list = (EventListenerList) listeners.get(type);
if (list != null) {
list.removeListener(namespaceURI, listener);
if (list.size() == 0) {
listeners.remove(type);
}
}
}
项目:Push2Display
文件:EventListenerList.java
/**
* Adds a listener.
*/
public void addListener(String namespaceURI,
Object group,
EventListener listener) {
for (Entry e = head; e != null; e = e.next) {
if ((namespaceURI != null && namespaceURI.equals(e.namespaceURI)
|| namespaceURI == null && e.namespaceURI == null)
&& e.listener == listener) {
// Listener is already in the list, so do nothing.
return;
}
}
head = new Entry(listener, namespaceURI, group, head);
counts.inc(namespaceURI);
n++;
listeners = null;
listenersNS.remove(namespaceURI);
}
项目:Push2Display
文件:JSVGScrollPane.java
public void documentLoadingCompleted(SVGDocumentLoaderEvent e) {
NodeEventTarget root
= (NodeEventTarget) e.getSVGDocument().getRootElement();
root.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI,
SVGConstants.SVG_SVGZOOM_EVENT_TYPE,
new EventListener() {
public void handleEvent(Event evt) {
if (!(evt.getTarget() instanceof SVGSVGElement))
return;
// assert(evt.getType() ==
// SVGConstants.SVG_SVGZOOM_EVENT_TYPE);
SVGSVGElement svg = (SVGSVGElement) evt.getTarget();
scaleChange(svg.getCurrentScale());
} // handleEvent()
}, false, null);
}
项目:Push2Display
文件:XBLEventSupport.java
/**
* Registers an event listener for the given namespaced event type
* in the specified group.
*/
public void addEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture,
Object group) {
super.addEventListenerNS
(namespaceURI, type, listener, useCapture, group);
if (namespaceURI == null
|| namespaceURI.equals(XMLConstants.XML_EVENTS_NAMESPACE_URI)) {
String alias = (String) eventTypeAliases.get(type);
if (alias != null) {
super.addEventListenerNS
(namespaceURI, alias, listener, useCapture, group);
}
}
}
项目:Push2Display
文件:XBLEventSupport.java
/**
* Unregisters an implementation event listener.
*/
public void removeImplementationEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture) {
HashTable listeners = useCapture ? capturingImplementationListeners
: bubblingImplementationListeners;
if (listeners == null) {
return;
}
EventListenerList list = (EventListenerList) listeners.get(type);
if (list == null) {
return;
}
list.removeListener(namespaceURI, listener);
if (list.size() == 0) {
listeners.remove(type);
}
}
项目:Push2Display
文件:SVGOMDocument.java
/**
* Removes an event listener for mutations on the
* CSSNavigableDocument tree.
*/
public void removeCSSNavigableDocumentListener
(CSSNavigableDocumentListener l) {
EventListener[] listeners
= (EventListener[]) cssNavigableDocumentListeners.get(l);
if (listeners == null) {
return;
}
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMNodeInserted", listeners[0], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMNodeRemoved", listeners[1], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMSubtreeModified", listeners[2], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMCharacterDataModified", listeners[3], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMAttrModified", listeners[4], false);
cssNavigableDocumentListeners.remove(l);
}
项目:relproxy_examples
文件:JProxyExampleDocument.java
public JProxyExampleDocument(ItsNatServletRequest request,ItsNatHTMLDocument itsNatDoc,FalseDB db)
{
this.itsNatDoc = itsNatDoc;
HTMLDocument doc = itsNatDoc.getHTMLDocument();
ItsNatComponentManager compMgr = itsNatDoc.getItsNatComponentManager();
this.textInput = (ItsNatHTMLInputText)compMgr.createItsNatComponentById("inputId");
EventListener listener = new EventListener()
{
@Override
public void handleEvent(Event evt)
{
String text = textInput.getText();
String comment = " YES I SAID THAT"; // " YES I SAID THAT";
resultsElem.setTextContent(text + comment);
}
};
Element buttonElem = doc.getElementById("buttonId");
((EventTarget)buttonElem).addEventListener("click",listener,false);
this.resultsElem = doc.getElementById("resultsId");
}
项目:lab_browser
文件:BrowserView.java
@Override
public void changed (ObservableValue<? extends State> ov, State oldState, State newState) {
if (newState == Worker.State.SUCCEEDED) {
EventListener listener = event -> {
final String href = ((Element)event.getTarget()).getAttribute(HTML_LINK);
if (href != null) {
String domEventType = event.getType();
if (domEventType.equals(EVENT_CLICK)) {
showPage(href);
} else if (domEventType.equals(EVENT_MOUSEOVER)) {
showStatus(href);
} else if (domEventType.equals(EVENT_MOUSEOUT)) {
showStatus(BLANK);
}
}
};
Document doc = myPage.getEngine().getDocument();
NodeList nodes = doc.getElementsByTagName("a");
for (int i = 0; i < nodes.getLength(); i++) {
EventTarget node = (EventTarget)nodes.item(i);
node.addEventListener(EVENT_CLICK, listener, false);
node.addEventListener(EVENT_MOUSEOVER, listener, false);
node.addEventListener(EVENT_MOUSEOUT, listener, false);
}
}
}
项目:feathers-sdk
文件:EventSupport.java
/**
* Registers an event listener for the given namespaced event type
* in the specified group.
*/
public void addEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture,
Object group) {
HashTable listeners;
if (useCapture) {
if (capturingListeners == null) {
capturingListeners = new HashTable();
}
listeners = capturingListeners;
} else {
if (bubblingListeners == null) {
bubblingListeners = new HashTable();
}
listeners = bubblingListeners;
}
EventListenerList list = (EventListenerList) listeners.get(type);
if (list == null) {
list = new EventListenerList();
listeners.put(type, list);
}
list.addListener(namespaceURI, group, listener);
}
项目:Push2Display
文件:ScriptingEnvironment.java
/**
* Updates the registration of a listener on the given element.
*/
protected void updateScriptingListeners(Element elt, String attr) {
String domEvt = (String) attrToDOMEvent.get(attr);
if (domEvt == null) {
return; // Not an event attr.
}
EventListener listener = (EventListener) attrToListener.get(attr);
NodeEventTarget target = (NodeEventTarget) elt;
if (elt.hasAttributeNS(null, attr)) {
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI, domEvt,
listener, false, null);
} else {
target.removeEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI, domEvt,
listener, false);
}
}
项目:Push2Display
文件:SVG12BridgeEventSupport.java
/**
* Is called only for the root element in order to dispatch GVT
* events to the DOM.
*/
public static void addGVTListener(BridgeContext ctx, Document doc) {
UserAgent ua = ctx.getUserAgent();
if (ua != null) {
EventDispatcher dispatcher = ua.getEventDispatcher();
if (dispatcher != null) {
final Listener listener = new Listener(ctx, ua);
dispatcher.addGraphicsNodeMouseListener(listener);
dispatcher.addGraphicsNodeMouseWheelListener(listener);
dispatcher.addGraphicsNodeKeyListener(listener);
// add an unload listener on the SVGDocument to remove
// that listener for dispatching events
EventListener l = new GVTUnloadListener(dispatcher, listener);
NodeEventTarget target = (NodeEventTarget) doc;
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false, null);
storeEventListenerNS
(ctx, target,
XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false);
}
}
}
项目:Push2Display
文件:SVGUseElementBridge.java
/**
* Builds using the specified BridgeContext and element, the
* specified graphics node.
*
* @param ctx the bridge context to use
* @param e the element that describes the graphics node to build
* @param node the graphics node to build
*/
public void buildGraphicsNode(BridgeContext ctx,
Element e,
GraphicsNode node) {
super.buildGraphicsNode(ctx, e, node);
if (ctx.isInteractive()) {
NodeEventTarget target = (NodeEventTarget)e;
EventListener l = new CursorMouseOverListener(ctx);
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI, SVG_EVENT_MOUSEOVER,
l, false, null);
ctx.storeEventListenerNS
(target, XMLConstants.XML_EVENTS_NAMESPACE_URI, SVG_EVENT_MOUSEOVER,
l, false);
}
}
项目:Push2Display
文件:BridgeContext.java
public void removeUIEventListeners(Document doc) {
EventTarget evtTarget = (EventTarget)doc.getDocumentElement();
synchronized (eventListenerSet) {
Iterator i = eventListenerSet.iterator();
while (i.hasNext()) {
EventListenerMememto elm = (EventListenerMememto)i.next();
NodeEventTarget et = elm.getTarget();
if (et == evtTarget) {
EventListener el = elm.getListener();
boolean uc = elm.getUseCapture();
String t = elm.getEventType();
boolean n = elm.getNamespaced();
if (et == null || el == null || t == null) {
continue;
}
if (n) {
String ns = elm.getNamespaceURI();
et.removeEventListenerNS(ns, t, el, uc);
} else {
et.removeEventListener(t, el, uc);
}
}
}
}
}
项目:feathers-sdk
文件:SVGOMDocument.java
/**
* Removes an event listener for mutations on the
* CSSNavigableDocument tree.
*/
public void removeCSSNavigableDocumentListener
(CSSNavigableDocumentListener l) {
EventListener[] listeners
= (EventListener[]) cssNavigableDocumentListeners.get(l);
if (listeners == null) {
return;
}
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMNodeInserted", listeners[0], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMNodeRemoved", listeners[1], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMSubtreeModified", listeners[2], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMCharacterDataModified", listeners[3], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMAttrModified", listeners[4], false);
cssNavigableDocumentListeners.remove(l);
}
项目:Push2Display
文件:AbstractNode.java
/**
* <b>DOM</b>: Implements
* {@link
* NodeEventTarget#addEventListenerNS(String,String,EventListener,boolean,Object)}.
*/
public void addEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture,
Object evtGroup) {
if (eventSupport == null) {
initializeEventSupport();
}
if (namespaceURI != null && namespaceURI.length() == 0) {
namespaceURI = null;
}
eventSupport.addEventListenerNS(namespaceURI,
type,
listener,
useCapture,
evtGroup);
}
项目:Push2Display
文件:EventSupport.java
/**
* Deregisters an event listener.
*/
public void removeEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture) {
HashTable listeners;
if (useCapture) {
listeners = capturingListeners;
} else {
listeners = bubblingListeners;
}
if (listeners == null) {
return;
}
EventListenerList list = (EventListenerList) listeners.get(type);
if (list != null) {
list.removeListener(namespaceURI, listener);
if (list.size() == 0) {
listeners.remove(type);
}
}
}
项目:feathers-sdk
文件:XBLEventSupport.java
/**
* Unregisters an implementation event listener.
*/
public void removeImplementationEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture) {
HashTable listeners = useCapture ? capturingImplementationListeners
: bubblingImplementationListeners;
if (listeners == null) {
return;
}
EventListenerList list = (EventListenerList) listeners.get(type);
if (list == null) {
return;
}
list.removeListener(namespaceURI, listener);
if (list.size() == 0) {
listeners.remove(type);
}
}
项目:Push2Display
文件:JSVGScrollPane.java
public void documentLoadingCompleted(SVGDocumentLoaderEvent e) {
NodeEventTarget root
= (NodeEventTarget) e.getSVGDocument().getRootElement();
root.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI,
SVGConstants.SVG_SVGZOOM_EVENT_TYPE,
new EventListener() {
public void handleEvent(Event evt) {
if (!(evt.getTarget() instanceof SVGSVGElement))
return;
// assert(evt.getType() ==
// SVGConstants.SVG_SVGZOOM_EVENT_TYPE);
SVGSVGElement svg = (SVGSVGElement) evt.getTarget();
scaleChange(svg.getCurrentScale());
} // handleEvent()
}, false, null);
}
项目:Push2Display
文件:XBLEventSupport.java
/**
* Registers an event listener for the given namespaced event type
* in the specified group.
*/
public void addEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture,
Object group) {
super.addEventListenerNS
(namespaceURI, type, listener, useCapture, group);
if (namespaceURI == null
|| namespaceURI.equals(XMLConstants.XML_EVENTS_NAMESPACE_URI)) {
String alias = (String) eventTypeAliases.get(type);
if (alias != null) {
super.addEventListenerNS
(namespaceURI, alias, listener, useCapture, group);
}
}
}
项目:Push2Display
文件:XBLEventSupport.java
/**
* Unregisters an implementation event listener.
*/
public void removeImplementationEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture) {
HashTable listeners = useCapture ? capturingImplementationListeners
: bubblingImplementationListeners;
if (listeners == null) {
return;
}
EventListenerList list = (EventListenerList) listeners.get(type);
if (list == null) {
return;
}
list.removeListener(namespaceURI, listener);
if (list.size() == 0) {
listeners.remove(type);
}
}
项目:Push2Display
文件:SVGOMDocument.java
/**
* Removes an event listener for mutations on the
* CSSNavigableDocument tree.
*/
public void removeCSSNavigableDocumentListener
(CSSNavigableDocumentListener l) {
EventListener[] listeners
= (EventListener[]) cssNavigableDocumentListeners.get(l);
if (listeners == null) {
return;
}
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMNodeInserted", listeners[0], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMNodeRemoved", listeners[1], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMSubtreeModified", listeners[2], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMCharacterDataModified", listeners[3], false);
removeEventListenerNS(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"DOMAttrModified", listeners[4], false);
cssNavigableDocumentListeners.remove(l);
}
项目:feathers-sdk
文件:XBLEventSupport.java
/**
* Registers an event listener that will not be stopped by the usual
* XBL stopping.
*/
public void addImplementationEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture) {
HashTable listeners;
if (useCapture) {
if (capturingImplementationListeners == null) {
capturingImplementationListeners = new HashTable();
}
listeners = capturingImplementationListeners;
} else {
if (bubblingImplementationListeners == null) {
bubblingImplementationListeners = new HashTable();
}
listeners = bubblingImplementationListeners;
}
EventListenerList list = (EventListenerList) listeners.get(type);
if (list == null) {
list = new EventListenerList();
listeners.put(type, list);
}
list.addListener(namespaceURI, null, listener);
}
项目:feathers-sdk
文件:BridgeEventSupport.java
/**
* Is called only for the root element in order to dispatch GVT
* events to the DOM.
*/
public static void addGVTListener(BridgeContext ctx, Document doc) {
UserAgent ua = ctx.getUserAgent();
if (ua != null) {
EventDispatcher dispatcher = ua.getEventDispatcher();
if (dispatcher != null) {
final Listener listener = new Listener(ctx, ua);
dispatcher.addGraphicsNodeMouseListener(listener);
dispatcher.addGraphicsNodeKeyListener(listener);
// add an unload listener on the SVGDocument to remove
// that listener for dispatching events
EventListener l = new GVTUnloadListener(dispatcher, listener);
NodeEventTarget target = (NodeEventTarget)doc;
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false, null);
storeEventListenerNS
(ctx, target,
XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false);
}
}
}
项目:feathers-sdk
文件:SVG12BridgeEventSupport.java
/**
* Is called only for the root element in order to dispatch GVT
* events to the DOM.
*/
public static void addGVTListener(BridgeContext ctx, Document doc) {
UserAgent ua = ctx.getUserAgent();
if (ua != null) {
EventDispatcher dispatcher = ua.getEventDispatcher();
if (dispatcher != null) {
final Listener listener = new Listener(ctx, ua);
dispatcher.addGraphicsNodeMouseListener(listener);
dispatcher.addGraphicsNodeMouseWheelListener(listener);
dispatcher.addGraphicsNodeKeyListener(listener);
// add an unload listener on the SVGDocument to remove
// that listener for dispatching events
EventListener l = new GVTUnloadListener(dispatcher, listener);
NodeEventTarget target = (NodeEventTarget) doc;
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false, null);
storeEventListenerNS
(ctx, target,
XMLConstants.XML_EVENTS_NAMESPACE_URI,
"SVGUnload",
l, false);
}
}
}
项目:feathers-sdk
文件:XBLEventSupport.java
/**
* Registers an event listener for the given namespaced event type
* in the specified group.
*/
public void addEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture,
Object group) {
super.addEventListenerNS
(namespaceURI, type, listener, useCapture, group);
if (namespaceURI == null
|| namespaceURI.equals(XMLConstants.XML_EVENTS_NAMESPACE_URI)) {
String alias = (String) eventTypeAliases.get(type);
if (alias != null) {
super.addEventListenerNS
(namespaceURI, alias, listener, useCapture, group);
}
}
}
项目:feathers-sdk
文件:SVGUseElementBridge.java
/**
* Builds using the specified BridgeContext and element, the
* specified graphics node.
*
* @param ctx the bridge context to use
* @param e the element that describes the graphics node to build
* @param node the graphics node to build
*/
public void buildGraphicsNode(BridgeContext ctx,
Element e,
GraphicsNode node) {
super.buildGraphicsNode(ctx, e, node);
if (ctx.isInteractive()) {
NodeEventTarget target = (NodeEventTarget)e;
EventListener l = new CursorMouseOverListener(ctx);
target.addEventListenerNS
(XMLConstants.XML_EVENTS_NAMESPACE_URI, SVG_EVENT_MOUSEOVER,
l, false, null);
ctx.storeEventListenerNS
(target, XMLConstants.XML_EVENTS_NAMESPACE_URI, SVG_EVENT_MOUSEOVER,
l, false);
}
}
项目:feathers-sdk
文件:BridgeContext.java
public void removeUIEventListeners(Document doc) {
EventTarget evtTarget = (EventTarget)doc.getDocumentElement();
synchronized (eventListenerSet) {
Iterator i = eventListenerSet.iterator();
while (i.hasNext()) {
EventListenerMememto elm = (EventListenerMememto)i.next();
NodeEventTarget et = elm.getTarget();
if (et == evtTarget) {
EventListener el = elm.getListener();
boolean uc = elm.getUseCapture();
String t = elm.getEventType();
boolean n = elm.getNamespaced();
if (et == null || el == null || t == null) {
continue;
}
if (n) {
String ns = elm.getNamespaceURI();
et.removeEventListenerNS(ns, t, el, uc);
} else {
et.removeEventListener(t, el, uc);
}
}
}
}
}
项目:feathers-sdk
文件:AbstractNode.java
/**
* <b>DOM</b>: Implements
* {@link
* NodeEventTarget#addEventListenerNS(String,String,EventListener,boolean,Object)}.
*/
public void addEventListenerNS(String namespaceURI,
String type,
EventListener listener,
boolean useCapture,
Object evtGroup) {
if (eventSupport == null) {
initializeEventSupport();
}
if (namespaceURI != null && namespaceURI.length() == 0) {
namespaceURI = null;
}
eventSupport.addEventListenerNS(namespaceURI,
type,
listener,
useCapture,
evtGroup);
}
项目:PeSanKita-android
文件:EventTargetImpl.java
public void addEventListener(String type, EventListener listener, boolean useCapture) {
if ((type == null) || type.equals("") || (listener == null)) {
return;
}
// Make sure we have only one entry
removeEventListener(type, listener, useCapture);
if (mListenerEntries == null) {
mListenerEntries = new ArrayList<EventListenerEntry>();
}
mListenerEntries.add(new EventListenerEntry(type, listener, useCapture));
}
项目:PeSanKita-android
文件:EventTargetImpl.java
public void removeEventListener(String type, EventListener listener,
boolean useCapture) {
if (null == mListenerEntries) {
return;
}
for (int i = 0; i < mListenerEntries.size(); i ++) {
EventListenerEntry listenerEntry = mListenerEntries.get(i);
if ((listenerEntry.mUseCapture == useCapture)
&& (listenerEntry.mListener == listener)
&& listenerEntry.mType.equals(type)) {
mListenerEntries.remove(i);
break;
}
}
}
项目:OpenJSharp
文件:DocumentImpl.java
/** NON-DOM INTERNAL: Constructor for Listener list Entry
* @param type Event name (NOT event group!) to listen for.
* @param listener Who gets called when event is dispatched
* @param useCaptue True iff listener is registered on
* capturing phase rather than at-target or bubbling
*/
LEntry(String type, EventListener listener, boolean useCapture)
{
this.type = type;
this.listener = listener;
this.useCapture = useCapture;
}
项目:OpenJSharp
文件:DocumentImpl.java
/**
* Introduced in DOM Level 2. <p> Deregister an event listener previously
* registered with this Node. A listener must be independently removed
* from the Capturing and Bubbling roles. Redundant removals (of listeners
* not currently registered for this role) are ignored.
* @param node node to remove listener from
* @param type Event name (NOT event group!) to listen for.
* @param listener Who gets called when event is dispatched
* @param useCapture True iff listener is registered on
* capturing phase rather than at-target or bubbling
*/
protected void removeEventListener(NodeImpl node, String type,
EventListener listener,
boolean useCapture)
{
// If this couldn't be a valid listener registration, ignore request
if (type == null || type.equals("") || listener == null)
return;
Vector nodeListeners = getEventListeners(node);
if (nodeListeners == null)
return;
// Note that addListener has previously ensured that
// each listener may be registered only once per type per phase.
// count-down is OK for deletions!
for (int i = nodeListeners.size() - 1; i >= 0; --i) {
LEntry le = (LEntry) nodeListeners.elementAt(i);
if (le.useCapture == useCapture && le.listener == listener &&
le.type.equals(type)) {
nodeListeners.removeElementAt(i);
// Storage management: Discard empty listener lists
if (nodeListeners.size() == 0)
setEventListeners(node, null);
// Remove active listener
LCount lc = LCount.lookup(type);
if (useCapture) {
--lc.captures;
--lc.total;
}
else {
--lc.bubbles;
--lc.total;
}
break; // Found it; no need to loop farther.
}
}
}
项目:educational-plugin
文件:StudyBrowserWindow.java
private void initHyperlinkListener() {
myEngine.getLoadWorker().stateProperty().addListener((ov, oldState, newState) -> {
if (newState == Worker.State.SUCCEEDED) {
final EventListener listener = makeHyperLinkListener();
addListenerToAllHyperlinkItems(listener);
}
});
}
项目:educational-plugin
文件:StudyBrowserWindow.java
private void addListenerToAllHyperlinkItems(EventListener listener) {
final Document doc = myEngine.getDocument();
if (doc != null) {
final NodeList nodeList = doc.getElementsByTagName("a");
for (int i = 0; i < nodeList.getLength(); i++) {
((EventTarget)nodeList.item(i)).addEventListener(EVENT_TYPE_CLICK, listener, false);
}
}
}