List of usage examples for org.w3c.dom.events Event preventDefault
public void preventDefault();
preventDefault
method is used to signify that the event is to be canceled, meaning any default action normally taken by the implementation as a result of the event will not occur. From source file:de.betterform.xml.xforms.action.AbstractAction.java
/** * This method is called whenever an event occurs of the type for which the * <code>EventListener</code> interface was registered. * * @param event The <code>Event</code> contains contextual information about * the event. It also contains the <code>stopPropagation</code> and * <code>preventDefault</code> methods which are used in determining the * event's flow and default action. *///from ww w . j a v a 2 s . c o m public final void handleEvent(Event event) { try { if (event.getType().equals(this.eventType)) { boolean doPerform = false; if (this.propagate.equals("stop")) { event.stopPropagation(); } if (this.defaultAction.equals("cancel")) { event.preventDefault(); } if (getLogger().isTraceEnabled()) { String currentEventId = (((Element) event.getCurrentTarget()).getAttribute("id")); String targetEventId = (((Element) event.getTarget()).getAttribute("id")); LOGGER.trace( "currentEventTargetId: '" + currentEventId + "' eventTargetId:'" + targetEventId + "'"); getLogger().trace("handling event '" + this.eventType + "' target: " + DOMUtil.getCanonicalPath(this.element) + "' Event Phase: (" + event.getEventPhase() + ")"); } if (getLogger().isDebugEnabled()) { switch (event.getEventPhase()) { case Event.CAPTURING_PHASE: if (getLogger().isDebugEnabled()) { getLogger().debug("CAPTURING PHASE"); } break; case Event.AT_TARGET: if (getLogger().isDebugEnabled()) { getLogger().debug("AT_TARGET"); } break; case Event.BUBBLING_PHASE: if (getLogger().isDebugEnabled()) { getLogger().debug("BUBBLING"); } break; } } if (event.getEventPhase() == Event.CAPTURING_PHASE && this.phase.equals("capture")) { doPerform = true; } else if (event.getEventPhase() == Event.AT_TARGET) { doPerform = true; } else if (event.getEventPhase() == Event.BUBBLING_PHASE) { doPerform = true; } String targetEventId = (((Element) event.getTarget()).getAttribute("id")); if (!(this.eventTargetId.equals(""))) { if (event.getType().equals(this.eventType) && targetEventId.equals(this.eventTargetId)) { doPerform = true; } else { doPerform = false; } } if (doPerform) { performConditional(this.element); } } } catch (Exception e) { // handle exception, prevent default action and stop event propagation this.container.handleEventException(e); event.preventDefault(); event.stopPropagation(); } }
From source file:com.vladsch.idea.multimarkdown.editor.MultiMarkdownFxPreviewEditor.java
protected void workerStateChanged(ObservableValue<? extends Worker.State> observable, Worker.State oldState, Worker.State newState) {/*from w ww . j a v a 2 s .co m*/ //logger.info("[" + instance + "] " + "newState: " + newState + ", oldState: " + oldState); if (newState == Worker.State.SUCCEEDED) { // restore scroll if we had it JSObject jsobj = (JSObject) webEngine.executeScript("window"); jsobj.setMember("java", new JSBridge(this)); EventListener listener = new EventListener() { @Override public void handleEvent(org.w3c.dom.events.Event evt) { evt.stopPropagation(); evt.preventDefault(); if (project.isDisposed()) return; Element link = (Element) evt.getCurrentTarget(); org.w3c.dom.Document doc = webEngine.getDocument(); final String href = link.getAttribute("href"); if (href.charAt(0) == '#') { if (href.length() != 1) { // tries to go to an anchor String hrefName = href.substring(1); // scroll it into view try { JSObject result = (JSObject) webEngine.executeScript("(function () {\n" + " var elemTop = 0;\n" + " var elems = '';\n" + " var elem = window.document.getElementById('" + hrefName + "');\n" + " if (!elem) {\n" + " var elemList = window.document.getElementsByTagName('a');\n" + " for (a in elemList) {\n" + " var aElem = elemList[a]\n" + " if (aElem.hasOwnProperty('name') && aElem.name == '" + hrefName + "') {\n" + " elem = aElem;\n" + " break;\n" + " }\n" + " }\n" + " }\n" + " if (elem) {\n" + " while (elem && elem.tagName !== 'HTML') {\n" + " elems += ',' + elem.tagName + ':' + elem.offsetTop\n" + " if (elem.offsetTop) {\n" + " elemTop += elem.offsetTop;\n" + " break;\n" + " }\n" + " elem = elem.parentNode\n" + " }\n" + " }\n" + " return { elemTop: elemTop, elems: elems, found: !!elem };\n" + "})()" + ""); int elemTop = (Integer) result.getMember("elemTop"); boolean elemFound = (Boolean) result.getMember("found"); String parentList = (String) result.getMember("elems"); //logger.trace(parentList); if (elemFound) webEngine.executeScript("window.scroll(0, " + elemTop + ")"); } catch (JSException ex) { String error = ex.toString(); logger.info("[" + instance + "] " + "JSException on script", ex); } } } else { MultiMarkdownPathResolver.launchExternalLink(project, href); } } }; NodeList nodeList; org.w3c.dom.Document doc = webEngine.getDocument(); if (doc != null) { ((EventTarget) doc.getDocumentElement()).addEventListener("contextmenu", new EventListener() { @Override public void handleEvent(Event evt) { evt.preventDefault(); } }, false); Element el = doc.getElementById("a"); nodeList = doc.getElementsByTagName("a"); for (int i = 0; i < nodeList.getLength(); i++) { ((EventTarget) nodeList.item(i)).addEventListener("click", listener, false); } // all images are mapped during conversion. Any relative ones are not resolved. //nodeList = doc.getElementsByTagName("img"); //for (int i = 0; i < nodeList.getLength(); i++) { // HTMLImageElementImpl imgNode = (HTMLImageElementImpl) nodeList.item(i); // String src = imgNode.getSrc(); // if (!src.startsWith("http://") && !src.startsWith("https://") && !src.startsWith("ftp://") && !src.startsWith("file://")) { // // relative to document, change it to absolute file:// // // this means it does not resolve, leave it // if (!project.isDisposed() && containingFile != null && resolver != null) { // ImageLinkRef linkRef = new ImageLinkRef(new FileRef(containingFile), src, null, null); // PathInfo resolvedTarget = resolver.resolve(linkRef, LinkResolver.ONLY_URI, null); // // assert resolvedTarget == null || resolvedTarget instanceof LinkRef && linkRef.isURI() : "Expected URI LinkRef, got " + linkRef; // if (resolvedTarget != null) { // imgNode.setSrc(resolvedTarget.getFilePath()); // } // } // } //} } if (pageScript != null && pageScript.length() > 0) { webEngine.executeScript(pageScript); } // enable debug if it is enabled in settings if (MultiMarkdownGlobalSettings.getInstance().enableFirebug.getValue()) { enableDebug(); } String scroll = scrollOffset; if (scroll != null) { try { //webEngine.executeScript("window.java.log('test info')"); webEngine.executeScript( "" + "window.setTimeout(function () { " + " window.java.log('before scroll');" + " " + scroll + ";\n" + " window.java.log('after scroll');" + "}, 50);"); } catch (Exception e) { logger.info("[" + instance + "] " + "JSException on script", e); } } try { webEngine.executeScript("window.addEventListener('scroll', function() { " + " window.java.onScroll();" + " window.setTimeout(function () { " + " window.java.repaint()" + " }, 100);" + "})"); } catch (Exception e) { logger.info("[" + instance + "] " + "", e); } //if (needStyleSheetUpdate) { // setStyleSheet(); //} } if (newState == Worker.State.READY || newState == Worker.State.FAILED || newState == Worker.State.SUCCEEDED) { htmlWorkerRunning = false; } }
From source file:de.betterform.xml.xforms.ui.Repeat.java
/** * This method is called whenever an event occurs of the type for which the * <code>EventListener</code> interface was registered. * * @param event The <code>Event</code> contains contextual information about * the event. It also contains the <code>stopPropagation</code> and * <code>preventDefault</code> methods which are used in determining the * event's flow and default action. *///from www . j av a 2s . com public void handleEvent(Event event) { try { String instancePath = (String) ((XercesXMLEvent) event).getContextInfo().get("canonPath"); instancePath = instancePath.substring(0, instancePath.lastIndexOf("[")); if (this.nodeset.size() == 0) { return; } Node n = (Node) ((NodeWrapper) this.nodeset.get(0)).getUnderlyingNode(); String path = DOMUtil.getCanonicalPath(n); path = path.substring(0, path.lastIndexOf("[")); if (instancePath.equals(path)) { if (BetterFormEventNames.NODE_INSERTED.equals(event.getType())) { handleNodeInserted(event); return; } // event is dispatched by Instance if (BetterFormEventNames.NODE_DELETED.equals(event.getType())) { handleNodeDeleted(event); return; } } } catch (Exception e) { // handle exception, prevent default action and stop event propagation this.container.handleEventException(e); event.preventDefault(); event.stopPropagation(); } }
From source file:org.chiba.xml.xforms.action.AbstractAction.java
/** * This method is called whenever an event occurs of the type for which the * <code>EventListener</code> interface was registered. * * @param event The <code>Event</code> contains contextual information about * the event. It also contains the <code>stopPropagation</code> and * <code>preventDefault</code> methods which are used in determining the * event's flow and default action.//w ww . j a v a2 s .c o m */ public final void handleEvent(Event event) { try { if (event.getType().equals(this.eventType)) { if (getLogger().isDebugEnabled()) { String phase = ""; switch (event.getEventPhase()) { case Event.CAPTURING_PHASE: phase = "capturing phase"; break; case Event.AT_TARGET: phase = "at target"; break; case Event.BUBBLING_PHASE: phase = "bubbling phase"; break; } getLogger().debug(this + " handling event '" + this.eventType + "' (" + phase + ")"); } setEvent(event); if (event instanceof XMLEvent) eventContextInfo = ((XMLEvent) event).getContextInfo(); performWhileAndIf(this.element); } } catch (Exception e) { // handle exception, prevent default action and stop event propagation this.container.handleEventException(e); event.preventDefault(); event.stopPropagation(); } }
From source file:org.chiba.xml.xforms.ui.Repeat.java
/** * This method is called whenever an event occurs of the type for which the * <code>EventListener</code> interface was registered. * * @param event The <code>Event</code> contains contextual information about * the event. It also contains the <code>stopPropagation</code> and * <code>preventDefault</code> methods which are used in determining the * event's flow and default action.//from w ww . j a va 2 s . co m */ public void handleEvent(Event event) { try { if (ChibaEventNames.NODE_INSERTED.equals(event.getType())) { handleNodeInserted(event); return; } if (ChibaEventNames.NODE_DELETED.equals(event.getType())) { handleNodeDeleted(event); return; } } catch (Exception e) { // handle exception, prevent default action and stop event propagation this.container.handleEventException(e); event.preventDefault(); event.stopPropagation(); } }
From source file:org.chiba.xml.xforms.ui.Submit.java
/** * This method is called whenever an event occurs of the type for which the * <code>EventListener</code> interface was registered. * * @param event The <code>Event</code> contains contextual information about * the event. It also contains the <code>stopPropagation</code> and * <code>preventDefault</code> methods which are used in determining the * event's flow and default action.// w ww .j ava 2 s .com */ public void handleEvent(Event event) { try { if (event.getType().equals(DOMEventNames.ACTIVATE)) { // from the spec: Upon receiving event DOMActivate, this form control // dispatches event xforms-submit to the submission element specified // by required attribute submission. this.container.dispatch(this.submissionId, XFormsEventNames.SUBMIT, null); return; } } catch (Exception e) { // handle exception, prevent default action and stop event propagation this.container.handleEventException(e); event.preventDefault(); event.stopPropagation(); } }