/* * Copyright (c) 2006 World Wide Web Consortium, * * (Massachusetts Institute of Technology, European Research Consortium for * Informatics and Mathematics, Keio University). All Rights Reserved. This * work is distributed under the W3C(r) Software License [1] in the hope that * it will be useful, but WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 */ package org.w3c.dom.events; import org.w3c.dom.DOMException; /** * The DocumentEvent interface provides a mechanism by which the * user can create an Event object of a type supported by the * implementation. If the feature "Events" is supported by the * Document object, the DocumentEvent interface * must be implemented on the same object. If the feature "+Events" is * supported by the Document object, an object that supports * the DocumentEvent interface must be returned by invoking the * method Node.getFeature("+Events", "3.0") on the * Document object. *

See also the Document Object Model (DOM) Level 3 Events Specification . * @since DOM Level 2 */ public interface DocumentEvent { /** * * @param eventType The eventType parameter specifies the * name of the DOM Events interface to be supported by the created * event object, e.g. "Event", "MouseEvent", * "MutationEvent" and so on. If the Event * is to be dispatched via the EventTarget.dispatchEvent() * method the appropriate event init method must be called after * creation in order to initialize the Event's values. * As an example, a user wishing to synthesize some kind of * UIEvent would invoke * DocumentEvent.createEvent("UIEvent"). The * UIEvent.initUIEventNS() method could then be called on * the newly created UIEvent object to set the specific * type of user interface event to be dispatched, DOMActivate for * example, and set its context information, e.g. * UIEvent.detail in this example. *

Note: For backward compatibility reason, "UIEvents", * "MouseEvents", "MutationEvents", and "HTMLEvents" feature names are * valid values for the parameter eventType and represent * respectively the interfaces "UIEvent", "MouseEvent", * "MutationEvent", and "Event". * @return The newly created event object. * @exception DOMException * NOT_SUPPORTED_ERR: Raised if the implementation does not support the * Event interface requested. */ public Event createEvent(String eventType) throws DOMException; /** * Test if the implementation can generate events of a specified type. * @param namespaceURI Specifies the Event.namespaceURI of * the event. * @param type Specifies the Event.type of the event. * @return true if the implementation can generate and * dispatch this event type, false otherwise. * @since DOM Level 3 */ public boolean canDispatch(String namespaceURI, String type); }