From 910b707d4101268c30589a15b6260dcf8e76f22f Mon Sep 17 00:00:00 2001 From: kitfox Date: Fri, 13 Apr 2007 16:16:47 +0000 Subject: Added more interfaces. git-svn-id: https://svn.java.net/svn/svgsalamander~svn/trunk/svg-core@24 7dc7fa77-23fb-e6ad-8e2e-c86bd48ed22b --- .../svg/animation/ElementTimeControl.java | 19 ++++++ .../svg/interactivity/SVGCursorElement.java | 35 +++++++++++ .../kitfox/salamander/svg/linking/SVGAElement.java | 39 ++++++++++++ .../salamander/svg/linking/SVGViewElement.java | 31 ++++++++++ .../com/kitfox/salamander/svg/script/SVGEvent.java | 70 ++++++++++++++++++++++ .../salamander/svg/script/SVGScriptElement.java | 29 +++++++++ .../kitfox/salamander/svg/script/SVGZoomEvent.java | 67 +++++++++++++++++++++ 7 files changed, 290 insertions(+) create mode 100644 src/main/java/com/kitfox/salamander/svg/animation/ElementTimeControl.java create mode 100644 src/main/java/com/kitfox/salamander/svg/interactivity/SVGCursorElement.java create mode 100644 src/main/java/com/kitfox/salamander/svg/linking/SVGAElement.java create mode 100644 src/main/java/com/kitfox/salamander/svg/linking/SVGViewElement.java create mode 100644 src/main/java/com/kitfox/salamander/svg/script/SVGEvent.java create mode 100644 src/main/java/com/kitfox/salamander/svg/script/SVGScriptElement.java create mode 100644 src/main/java/com/kitfox/salamander/svg/script/SVGZoomEvent.java diff --git a/src/main/java/com/kitfox/salamander/svg/animation/ElementTimeControl.java b/src/main/java/com/kitfox/salamander/svg/animation/ElementTimeControl.java new file mode 100644 index 0000000..1c55998 --- /dev/null +++ b/src/main/java/com/kitfox/salamander/svg/animation/ElementTimeControl.java @@ -0,0 +1,19 @@ +/* + * ElementTimeControl.java + * + * Created on April 13, 2007, 11:56 AM + * + * To change this template, choose Tools | Template Manager + * and open the template in the editor. + */ + +package com.kitfox.salamander.svg.animation; + +/** + * + * @author kitfox + */ +public interface ElementTimeControl +{ + +} diff --git a/src/main/java/com/kitfox/salamander/svg/interactivity/SVGCursorElement.java b/src/main/java/com/kitfox/salamander/svg/interactivity/SVGCursorElement.java new file mode 100644 index 0000000..2527c40 --- /dev/null +++ b/src/main/java/com/kitfox/salamander/svg/interactivity/SVGCursorElement.java @@ -0,0 +1,35 @@ +/* + * SVGCursorElement.java + * + * Created on April 13, 2007, 11:38 AM + * + * To change this template, choose Tools | Template Manager + * and open the template in the editor. + */ + +package com.kitfox.salamander.svg.interactivity; + +import com.kitfox.salamander.svg.basic.SVGAnimatedLength; +import com.kitfox.salamander.svg.basic.SVGElement; +import com.kitfox.salamander.svg.basic.SVGExternalResourcesRequired; +import com.kitfox.salamander.svg.basic.SVGTests; +import com.kitfox.salamander.svg.basic.SVGURIReference; + +/** + * The SVGCursorElement interface corresponds to the 'cursor' element. + * @author kitfox + */ +public interface SVGCursorElement extends SVGElement, + SVGURIReference, + SVGTests, + SVGExternalResourcesRequired +{ + /** + * Corresponds to attribute x on the given 'cursor' element. + */ + public SVGAnimatedLength getX(); + /** + * Corresponds to attribute y on the given 'cursor' element. + */ + public SVGAnimatedLength getY(); +} diff --git a/src/main/java/com/kitfox/salamander/svg/linking/SVGAElement.java b/src/main/java/com/kitfox/salamander/svg/linking/SVGAElement.java new file mode 100644 index 0000000..fb89431 --- /dev/null +++ b/src/main/java/com/kitfox/salamander/svg/linking/SVGAElement.java @@ -0,0 +1,39 @@ +/* + * SVGAElement.java + * + * Created on April 13, 2007, 11:40 AM + * + * To change this template, choose Tools | Template Manager + * and open the template in the editor. + */ + +package com.kitfox.salamander.svg.linking; + +import com.kitfox.salamander.svg.basic.SVGAnimatedString; +import com.kitfox.salamander.svg.basic.SVGElement; +import com.kitfox.salamander.svg.basic.SVGExternalResourcesRequired; +import com.kitfox.salamander.svg.basic.SVGLangSpace; +import com.kitfox.salamander.svg.basic.SVGStylable; +import com.kitfox.salamander.svg.basic.SVGTests; +import com.kitfox.salamander.svg.basic.SVGTransformable; +import com.kitfox.salamander.svg.basic.SVGURIReference; +import org.w3c.dom.events.EventTarget; + +/** + * The SVGAElement interface corresponds to the 'a' element. + * @author kitfox + */ +public interface SVGAElement extends SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + EventTarget +{ + /** + * Corresponds to attribute target on the given 'a' element. + */ + public SVGAnimatedString getTarget(); +} diff --git a/src/main/java/com/kitfox/salamander/svg/linking/SVGViewElement.java b/src/main/java/com/kitfox/salamander/svg/linking/SVGViewElement.java new file mode 100644 index 0000000..265195a --- /dev/null +++ b/src/main/java/com/kitfox/salamander/svg/linking/SVGViewElement.java @@ -0,0 +1,31 @@ +/* + * SVGViewElement.java + * + * Created on April 13, 2007, 11:40 AM + * + * To change this template, choose Tools | Template Manager + * and open the template in the editor. + */ + +package com.kitfox.salamander.svg.linking; + +import com.kitfox.salamander.svg.basic.SVGElement; +import com.kitfox.salamander.svg.basic.SVGExternalResourcesRequired; +import com.kitfox.salamander.svg.basic.SVGFitToViewBox; +import com.kitfox.salamander.svg.basic.SVGStringList; +import com.kitfox.salamander.svg.basic.SVGZoomAndPan; + +/** + * The SVGViewElement interface corresponds to the 'view' element. + * @author kitfox + */ +public interface SVGViewElement extends SVGElement, + SVGExternalResourcesRequired, + SVGFitToViewBox, + SVGZoomAndPan +{ + /** + * Corresponds to attribute viewTarget on the given 'view' element. A list of DOMString values which contain the names listed in the viewTarget attribute. Each of the DOMString values can be associated with the corresponding element using the getElementById() method call. + */ + public SVGStringList getViewTarget(); +} diff --git a/src/main/java/com/kitfox/salamander/svg/script/SVGEvent.java b/src/main/java/com/kitfox/salamander/svg/script/SVGEvent.java new file mode 100644 index 0000000..6cdf85b --- /dev/null +++ b/src/main/java/com/kitfox/salamander/svg/script/SVGEvent.java @@ -0,0 +1,70 @@ +/* + * SVGEvent.java + * + * Created on April 13, 2007, 11:44 AM + * + * To change this template, choose Tools | Template Manager + * and open the template in the editor. + */ + +package com.kitfox.salamander.svg.script; + +import com.kitfox.salamander.svg.basic.SVGElement; +import org.w3c.dom.events.Event; + +/** + * + * The SVG event set contains a list of special event types which are available in SVG. + * + * A DOM consumer can use the hasFeature of the DOMImplementation interface to determine whether the SVG event set has been implemented by a DOM implementation. The feature string for this event set is "SVGEvents". This string is also used with the createEvent method. + * + * The SVG events use the base DOM Event interface to pass contextual information. + * + * The different types of such events that can occur are: + * + * SVGLoad + * See SVGLoad event. + * + * * Bubbles: No + * * Cancelable: No + * * Context Info: None + * + * SVGUnload + * See SVGUnload event. + * + * * Bubbles: No + * * Cancelable: No + * * Context Info: None + * + * SVGAbort + * See SVGAbort event. + * + * * Bubbles: Yes + * * Cancelable: No + * * Context Info: None + * + * SVGError + * See SVGError event. + * + * * Bubbles: Yes + * * Cancelable: No + * * Context Info: None + * + * SVGResize + * See SVGResize event. + * + * * Bubbles: Yes + * * Cancelable: No + * * Context Info: None + * + * SVGScroll + * See SVGScroll event. + * + * * Bubbles: Yes + * * Cancelable: No + * * Context Info: None + * @author kitfox + */ +public interface SVGEvent extends Event +{ +} diff --git a/src/main/java/com/kitfox/salamander/svg/script/SVGScriptElement.java b/src/main/java/com/kitfox/salamander/svg/script/SVGScriptElement.java new file mode 100644 index 0000000..a4f3a14 --- /dev/null +++ b/src/main/java/com/kitfox/salamander/svg/script/SVGScriptElement.java @@ -0,0 +1,29 @@ +/* + * SVGScriptElement.java + * + * Created on April 13, 2007, 11:43 AM + * + * To change this template, choose Tools | Template Manager + * and open the template in the editor. + */ + +package com.kitfox.salamander.svg.script; + +import com.kitfox.salamander.svg.*; +import com.kitfox.salamander.svg.basic.SVGElement; +import com.kitfox.salamander.svg.basic.SVGExternalResourcesRequired; +import com.kitfox.salamander.svg.basic.SVGURIReference; + +/** + * The SVGScriptElement interface corresponds to the 'script' element. + * @author kitfox + */ +public interface SVGScriptElement extends SVGElement, + SVGURIReference, + SVGExternalResourcesRequired +{ + /** + * Corresponds to attribute type on the given 'script' element. + */ + public DOMString getType(); +} diff --git a/src/main/java/com/kitfox/salamander/svg/script/SVGZoomEvent.java b/src/main/java/com/kitfox/salamander/svg/script/SVGZoomEvent.java new file mode 100644 index 0000000..2567cb7 --- /dev/null +++ b/src/main/java/com/kitfox/salamander/svg/script/SVGZoomEvent.java @@ -0,0 +1,67 @@ +/* + * SVGZoomEvent.java + * + * Created on April 13, 2007, 11:53 AM + * + * To change this template, choose Tools | Template Manager + * and open the template in the editor. + */ + +package com.kitfox.salamander.svg.script; + +import com.kitfox.salamander.svg.basic.SVGRect; +import com.kitfox.salamander.svg.coordSystems.SVGPoint; +import org.w3c.dom.events.UIEvent; + +/** + * + * A DOM consumer can use the hasFeature of the DOMImplementation interface to determine whether the SVG zoom event set has been implemented by a DOM implementation. The feature string for this event set is "SVGZoomEvents". This string is also used with the createEvent method. + * + * The zoom event handler occurs before the zoom event is processed. The remainder of the DOM represents the previous state of the document. The document will be updated upon normal return from the event handler. + * + * The UI event type for a zoom event is: + * + * SVGZoom + * The zoom event occurs when the user initiates an action which causes the current view of the SVG document fragment to be rescaled. Event handlers are only recognized on 'svg' elements. See SVGZoom event. + * + * * Bubbles: Yes + * * Cancelable: No + * * Context Info: zoomRectScreen, previousScale, previousTranslate, newScale, newTranslate, screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, relatedNode. + * (screenX, screenY, clientX and clientY indicate the center of the zoom area, with clientX and clientY in viewport coordinates for the corresponding 'svg' element. relatedNode is the corresponding 'svg' element.) + * @author kitfox + */ +public interface SVGZoomEvent extends UIEvent +{ + /** + * + * + * The specified zoom rectangle in screen units. + * + * The object itself and its contents are both readonly. + */ + public SVGRect getZoomRectScreen(); + /** + * The scale factor from previous zoom operations that was in place before the zoom operation occurred. + */ + public float getPreviousScale(); + /** + * + * + * The translation values from previous zoom operations that were in place before the zoom operation occurred. + * + * The object itself and its contents are both readonly. + */ + public SVGPoint getPreviousTranslate(); + /** + * The scale factor that will be in place after the zoom operation has been processed. + */ + public float getNewScale(); + /** + * + * + * The translation values that will be in place after the zoom operation has been processed. + * + * The object itself and its contents are both readonly. + */ + public SVGPoint getNewTranslate(); +} -- cgit v1.2.3-55-g7522