Home | History | Annotate | Download | only in svg
      1 /*
      2  * Copyright (C) 2007, 2008 Nikolas Zimmermann <zimmermann (at) kde.org>
      3  * Copyright (C) 2008 Apple Inc. All rights reserved.
      4  *
      5  * Redistribution and use in source and binary forms, with or without
      6  * modification, are permitted provided that the following conditions
      7  * are met:
      8  * 1. Redistributions of source code must retain the above copyright
      9  *    notice, this list of conditions and the following disclaimer.
     10  * 2. Redistributions in binary form must reproduce the above copyright
     11  *    notice, this list of conditions and the following disclaimer in the
     12  *    documentation and/or other materials provided with the distribution.
     13  *
     14  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
     15  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     17  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
     18  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
     19  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
     20  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
     21  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
     22  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     23  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     24  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     25  */
     26 
     27 module svg {
     28 
     29     interface [
     30         Conditional=SVG,
     31         CustomListeners,
     32         CustomMarkFunction,
     33         CustomPushEventHandlerScope,
     34         CustomToJS,
     35         GenerateNativeConverter
     36     ] SVGElementInstance
     37 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
     38         : Object, EventTarget
     39 #endif /* defined(LANGUAGE_OBJECTIVE_C) */
     40     {
     41         readonly attribute SVGElement correspondingElement;
     42         readonly attribute SVGUseElement correspondingUseElement;
     43         readonly attribute SVGElementInstance parentNode;
     44         readonly attribute SVGElementInstanceList childNodes;
     45         readonly attribute SVGElementInstance firstChild;
     46         readonly attribute SVGElementInstance lastChild;
     47         readonly attribute SVGElementInstance previousSibling;
     48         readonly attribute SVGElementInstance nextSibling;
     49 
     50         // EventTarget
     51 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
     52         attribute [DontEnum] EventListener onabort;
     53         attribute [DontEnum] EventListener onblur;
     54         attribute [DontEnum] EventListener onchange;
     55         attribute [DontEnum] EventListener onclick;
     56         attribute [DontEnum] EventListener oncontextmenu;
     57         attribute [DontEnum] EventListener ondblclick;
     58         attribute [DontEnum] EventListener onerror;
     59         attribute [DontEnum] EventListener onfocus;
     60         attribute [DontEnum] EventListener oninput;
     61         attribute [DontEnum] EventListener onkeydown;
     62         attribute [DontEnum] EventListener onkeypress;
     63         attribute [DontEnum] EventListener onkeyup;
     64         attribute [DontEnum] EventListener onload;
     65         attribute [DontEnum] EventListener onmousedown;
     66         attribute [DontEnum] EventListener onmousemove;
     67         attribute [DontEnum] EventListener onmouseout;
     68         attribute [DontEnum] EventListener onmouseover;
     69         attribute [DontEnum] EventListener onmouseup;
     70         attribute [DontEnum] EventListener onmousewheel;
     71         attribute [DontEnum] EventListener onbeforecut;
     72         attribute [DontEnum] EventListener oncut;
     73         attribute [DontEnum] EventListener onbeforecopy;
     74         attribute [DontEnum] EventListener oncopy;
     75         attribute [DontEnum] EventListener onbeforepaste;
     76         attribute [DontEnum] EventListener onpaste;
     77         attribute [DontEnum] EventListener ondragenter;
     78         attribute [DontEnum] EventListener ondragover;
     79         attribute [DontEnum] EventListener ondragleave;
     80         attribute [DontEnum] EventListener ondrop;
     81         attribute [DontEnum] EventListener ondragstart;
     82         attribute [DontEnum] EventListener ondrag;
     83         attribute [DontEnum] EventListener ondragend;
     84         attribute [DontEnum] EventListener onreset;
     85         attribute [DontEnum] EventListener onresize;
     86         attribute [DontEnum] EventListener onscroll;
     87         attribute [DontEnum] EventListener onsearch;
     88         attribute [DontEnum] EventListener onselect;
     89         attribute [DontEnum] EventListener onselectstart;
     90         attribute [DontEnum] EventListener onsubmit;
     91         attribute [DontEnum] EventListener onunload;
     92 
     93         [Custom] void addEventListener(in DOMString type,
     94                                        in EventListener listener,
     95                                        in boolean useCapture);
     96         [Custom] void removeEventListener(in DOMString type,
     97                                           in EventListener listener,
     98                                           in boolean useCapture);
     99         boolean dispatchEvent(in Event event)
    100             raises(EventException);
    101 #endif /* defined(LANGUAGE_OBJECTIVE_C) */
    102     };
    103 }
    104