/*$svgelement\r
*すべてのSVG関連要素の雛形となるオブジェクト\r
*/\r
- function SVGElement(){};\r
base("$document").$element.up("$svgelement").mix( {\r
initialize: function () {\r
SVGStylable.call(this); //ElementCSSInlineStyleのインタフェースを継承\r
SVGViewSpec.prototype = Object._create(SVGFitToViewBox);\r
\r
function SVGGElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:group");\r
_doc = void 0;\r
/*以下の処理は、この子要素ノードがDOMツリーに追加されて初めて、\r
tnext = sar = spar = snext = void 0;\r
}, false);\r
};\r
-SVGGElement.prototype = Object._create(SVGElement);\r
\r
function SVGDefsElement() {\r
- SVGElement.apply(this);\r
this.style.setProperty("display", "none");\r
};\r
-SVGDefsElement.prototype = Object._create(SVGElement);\r
\r
function SVGDescElement() {\r
- SVGElement.apply(this);\r
}\r
-SVGDescElement.prototype = Object._create(SVGElement);\r
\r
function SVGTitleElement() {\r
- SVGElement.apply(this);\r
this.addEventListener("DOMCharacterDataModified", function(evt){\r
evt.target.ownerDocument.title = evt.target.firstChild.nodeValue;\r
}, false);\r
-}\r
-SVGTitleElement.prototype = Object._create(SVGElement);\r
+};\r
\r
function SVGSymbolElement(_doc) {\r
- SVGElement.apply(this, arguments);\r
-}\r
-SVGSymbolElement.prototype = Object._create(SVGElement);\r
+};\r
\r
function SVGUseElement() {\r
SVGGElement.apply(this, arguments);\r
/*readonly SVGAnimatedLength*/ this.width = new slen();\r
/*readonly SVGAnimatedLength*/ this.height = new slen();\r
slen = void 0;\r
- /*readonly SVGElementInstance*/ this.instanceRoot = new SVGElement(); //参照先インスタンスのルート\r
- /*readonly SVGElementInstance*/ this.animatedInstanceRoot = new SVGElement();//アニメの最中のインスタンス。静止中は通常\r
+ /*readonly SVGElementInstance*/ this.instanceRoot = this.up("$1"); //参照先インスタンスのルート\r
+ /*readonly SVGElementInstance*/ this.animatedInstanceRoot = this.up("$1");//アニメの最中のインスタンス。静止中は通常\r
this.addEventListener("DOMNodeInserted", function(evt){\r
if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {\r
return; //強制終了させる\r
}, false);\r
SVGURIReference.apply(this);\r
};\r
-SVGUseElement.prototype = Object._create(SVGElement);\r
\r
/*function SVGElementInstance\r
*Nodeオブジェクトを継承させる\r
*SVGElementInstanceList*/\r
\r
function SVGImageElement(_doc) {\r
- SVGElement.apply(this, arguments);\r
this._tar = _doc.createElement("v:image");\r
//以下は、与えられた属性の値に対応する\r
var slen = SVGAnimatedLength;\r
}, false);\r
SVGURIReference.apply(this);\r
};\r
-SVGImageElement.prototype = Object._create(SVGElement);\r
/*_imageo関数は、SVGForeignObjectElementで再利用するので、切り離しておく*/\r
SVGImageElement.prototype._imageo = function(evt) {\r
var tar = evt.target,\r
};\r
\r
function SVGSwitchElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:group");\r
_doc = void 0;\r
this.addEventListener("DOMNodeInserted", function(evt){\r
evt = tar = void 0;\r
}, false);\r
};\r
-SVGSwitchElement.prototype = Object._create(SVGElement);\r
\r
//bookmarkletから呼び出されたらtrue\r
var sieb_s;\r
tis.top = _parseFloat(tis.top) - bt + "px";\r
}\r
}\r
- //ビューポートの位置をスクロールで調整 (なお、_txプロパティは$svgsvgelementのSIEコードを参照)\r
+ //ビューポートの位置をスクロールで調整 (なお、_txプロパティはhttp://www.w3.org/2000/svgsvgオブジェクトのSIEコードを参照)\r
ifcw && ifcw.scroll(-s.documentElement._tx, -s.documentElement._ty);\r
s._isLoaded = 1; //_isLoadedプロパティはevents::dispatchEventメソッドで使う\r
s.defaultView._cache = s.defaultView._cache_ele = null;\r
*style要素をあらわすオブジェクト\r
*/\r
function SVGStyleElement(_doc) {\r
- SVGElement.apply(this);\r
base("$StyleSheet").LinkStyle.apply(this);\r
/*LinkStyleに関しては、以下の仕様を参照のこと。なお、これはSVG DOMでは継承されていないので要注意。\r
*CSS2 1. Document Object Model Style Sheets\r
}, false);\r
}, false);\r
};\r
-SVGStyleElement.prototype = Object._create(SVGElement);\r
\r
/*SVGPoint\r
*2次元座標の点(x,y)を表すオブジェクト\r
};\r
\r
function SVGPathElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:shape");\r
//interface SVGAnimatedPathData\r
var sp = SVGPathSegList;\r
*/\r
this.addEventListener("DOMNodeInserted", this._nodeInsert, false);\r
};\r
-SVGPathElement.prototype = Object._create(SVGElement);\r
(function(_sproto) {\r
_sproto._attrModi = function(evt){\r
var tar = evt.target;\r
})(document, Math);\r
\r
function SVGRectElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:shape");\r
var slen = SVGAnimatedLength;\r
/*readonly SVGAnimatedLength*/ this.x = new slen();\r
evt = tar = void 0;\r
}, false);\r
};\r
-SVGRectElement.prototype = Object._create(SVGElement);\r
\r
function SVGCircleElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:shape");\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedLength*/ this.cx = new sl();\r
evt = tar = void 0;\r
}, false);\r
};\r
-SVGCircleElement.prototype = Object._create(SVGElement);\r
\r
function SVGEllipseElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:shape");\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedLength*/ this.cx = new sl();\r
evt = tar = void 0;\r
}, false);\r
};\r
-SVGEllipseElement.prototype = Object._create(SVGElement);\r
\r
function SVGLineElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:shape");\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedLength*/ this.x1 = new sl();\r
evt = tar = void 0;\r
}, false);\r
};\r
-SVGLineElement.prototype = Object._create(SVGElement);\r
\r
/*_GenericSVGPolyElementインターフェース\r
* このインターフェースはpolygonとpolyline要素共通のインターフェースとして使用。\r
* ファイルサイズを軽量にすることができる\r
*/\r
NAIBU._GenericSVGPolyElement = function (_doc, xclose) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("v:shape");\r
_doc = void 0;\r
//interface SVGAnimatedPoints\r
NAIBU._GenericSVGPolyElement.call(this, _doc, "e");\r
_doc = void 0;\r
};\r
-SVGPolylineElement.prototype = Object._create(SVGElement);\r
\r
function SVGPolygonElement(_doc) {\r
NAIBU._GenericSVGPolyElement.call(this, _doc, "x e");\r
_doc = void 0;\r
};\r
-SVGPolygonElement.prototype = Object._create(SVGElement);\r
\r
function SVGTextContentElement(_doc) {\r
- SVGElement.apply(this);\r
/*readonly SVGAnimatedLength*/ this.textLength = new SVGAnimatedLength();\r
/*readonly SVGAnimatedEnumeration*/ this.lengthAdjust = new SVGAnimatedEnumeration(/*SVGTextContentElement.LENGTHADJUST_UNKNOWN*/ 0);\r
this.addEventListener("DOMNodeInserted", function(evt){\r
};\r
\r
(function(t) {\r
- var tproto;\r
- tproto = t.prototype = Object._create(SVGElement);\r
+ var tproto = t.prototype;\r
// lengthAdjust Types\r
/*unsigned short t.LENGTHADJUST_UNKNOWN = 0;\r
/*unsigned short t.LENGTHADJUST_SPACING = 1;\r
// raises( SVGException );\r
} ) ;\r
\r
+/*makerのインタフェースをsvg要素のオブジェクトで補う場合のみ、getScreenCTMメソッドの扱いに注意すること*/\r
function SVGMarkerElement(_doc) {\r
_doc = void 0;\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedEnumeration*/ this.orientType = new SVGAnimatedEnumeration();\r
this.orientType.baseVal = /*SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE*/ 2;\r
/*readonly SVGAnimatedAngle*/ this.orientAngle = new SVGAnimatedAngle();\r
- //SVGFitToViewBoxのインターフェースは$svgsvgelementで代用\r
+ //SVGFitToViewBoxのインターフェースはhttp://www.w3.org/2000/svgsvgオブジェクトで代用\r
this.addEventListener("DOMAttrModified", function(evt) {\r
var tar = evt.target,\r
en = evt.newValue,\r
/*unsigned short t.SVG_MARKER_ORIENT_UNKNOWN = 0;\r
/*unsigned short t.SVG_MARKER_ORIENT_AUTO = 1;\r
/*unsigned short t.SVG_MARKER_ORIENT_ANGLE = 2;*/\r
- t.prototype.getScreenCTM = SVGElement.prototype.getScreenCTM;\r
/*void*/ t.prototype.setOrientToAuto = function() {\r
this.orientType.baseVal = /*t.SVG_MARKER_ORIENT_AUTO*/ 1;\r
};\r
};\r
})(SVGMarkerElement);\r
function SVGColorProfileElement() {\r
- SVGElement.apply(this);\r
/*DOMString*/ this._local;\r
// raises DOMException on setting\r
// (NOTE: is prefixed by "_"\r
/*unsigned short*/ this.renderingIntent;\r
SVGURIReference.apply(this);\r
};\r
-SVGColorProfileElement.prototype = Object._create(SVGElement);\r
\r
base("$CSSStyleRule").$SVGCSSRule.up("$SVGColorProfileRule").mix( {\r
/*DOMString this.src;*/\r
} );\r
\r
function SVGGradientElement() {\r
- SVGElement.apply(this);\r
SVGURIReference.apply(this);\r
/*readonly SVGAnimatedEnumeration*/ this.gradientUnits = new SVGAnimatedEnumeration();\r
/*readonly SVGAnimatedTransformList*/ this.gradientTransform = new SVGAnimatedTransformList();\r
grad = grad2 = ele = stops = length = color = colors = opacity = evt = t = href = stop = sstyle = ci = o1 = o2 = void 0;\r
}, false);\r
};\r
-SVGGradientElement.prototype = Object._create(SVGElement);\r
// Spread Method Types\r
/*unsigned short SVGGradientElement.SVG_SPREADMETHOD_UNKNOWN = 0;\r
/*unsigned short SVGGradientElement.SVG_SPREADMETHOD_PAD = 1;\r
SVGRadialGradientElement.prototype = Object._create(SVGGradientElement);\r
\r
function SVGStopElement() {\r
- SVGElement.apply(this);\r
/*readonly SVGAnimatedNumber*/ this.offset = new SVGAnimatedNumber();\r
this.addEventListener("DOMAttrModified", function(evt) {\r
if (evt.attrName === "offset") {\r
evt = void 0;\r
}, false);\r
};\r
-SVGStopElement.prototype = Object._create(SVGElement);\r
\r
function SVGPatternElement() {\r
- SVGElement.apply(this);\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedEnumeration*/ this.patternUnits = new SVGAnimatedEnumeration();\r
/*readonly SVGAnimatedEnumeration*/ this.patternContentUnits = new SVGAnimatedEnumeration();\r
/*readonly SVGAnimatedPreserveAspectRatio*/ this.preserveAspectRatio = new SVGAnimatedPreserveAspectRatio();\r
/*unsigned short*/ this.zoomAndPan = /*SVGZoomAndPan.SVG_ZOOMANDPAN_DISABLE*/ 1;\r
};\r
-SVGPatternElement.prototype = Object._create(SVGElement);\r
\r
function SVGClipPathElement() {\r
- SVGElement.apply(this);\r
/*readonly SVGAnimatedEnumeration*/ this.clipPathUnits = new SVGAnimatedEnumeration();\r
};\r
-SVGClipPathElement.prototype = Object._create(SVGElement);\r
\r
function SVGMaskElement() {\r
- SVGElement.apply(this);\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedEnumeration*/ this.maskUnits = new SVGAnimatedEnumeration();\r
/*readonly SVGAnimatedEnumeration*/ this.maskContentUnits = new SVGAnimatedEnumeration();\r
/*readonly SVGAnimatedLength*/ this.height = new sl();\r
sl = void 0;\r
};\r
-SVGMaskElement.prototype = Object._create(SVGElement);\r
\r
function SVGFilterElement() {\r
- SVGElement.apply(this);\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedEnumeration*/ this.filterUnits = new SVGAnimatedEnumeration();\r
/*readonly SVGAnimatedEnumeration*/ this.primitiveUnits = new SVGAnimatedEnumeration();\r
SVGURIReference.apply(this);\r
//setFilterRes (/*unsigned long*/ filterResX,/*unsigned long*/ filterResY );\r
};\r
-SVGFilterElement.prototype = Object._create(SVGElement);\r
\r
function SVGFilterPrimitiveStandardAttributes(ele) {\r
SVGStylable.apply(this, arguments);\r
SVGFilterPrimitiveStandardAttributes.prototype = Object._create(SVGStylable);\r
\r
function SVGFEBlendElement() {\r
- SVGElement.apply(this);\r
/*readonly SVGAnimatedString*/ this.in1 = new SVGAnimatedString();\r
/*readonly SVGAnimatedString*/ this.in2 = new SVGAnimatedString();\r
/*readonly SVGAnimatedEnumeration*/ this.mode = new SVGAnimatedEnumeration();\r
this._fpsa = SVGFilterPrimitiveStandardAttributes(this);\r
};\r
-SVGFEBlendElement.prototype = Object._create(SVGElement);\r
// Blend Mode Types\r
/*unsigned short SVGFEBlendElement.SVG_FEBLEND_MODE_UNKNOWN = 0;\r
/*unsigned short SVGFEBlendElement.SVG_FEBLEND_MODE_NORMAL = 1;\r
/*unsigned short SVGFEBlendElement.SVG_FEBLEND_MODE_LIGHTEN = 5;*/\r
\r
function SVGFEGaussianBlurElement() {\r
- SVGElement.apply(this);\r
/*readonly SVGAnimatedString*/ this.in1 = new SVGAnimatedString();\r
/*readonly SVGAnimatedNumber*/ this.stdDeviationX = new SVGAnimatedNumber();\r
/*readonly SVGAnimatedNumber*/ this.stdDeviationY = new SVGAnimatedNumber();\r
this._fpsa = SVGFilterPrimitiveStandardAttributes(this);\r
};\r
-SVGFEGaussianBlurElement.prototype = Object._create(SVGElement);\r
/*void*/ SVGFEGaussianBlurElement.prototype.setStdDeviation = function(/*float*/ stdDeviationX, /*float*/ stdDeviationY ) {\r
\r
};\r
\r
function SVGCursorElement() {\r
- SVGElement.apply(this);\r
/*readonly SVGAnimatedLength*/ this.x = new SVGAnimatedLength();\r
/*readonly SVGAnimatedLength*/ this.y = new SVGAnimatedLength();\r
SVGURIReference.apply(this);\r
};\r
-SVGCursorElement.prototype = Object._create(SVGElement);\r
\r
function SVGAElement(_doc) {\r
- SVGElement.apply(this);\r
this._tar = _doc.createElement("a");\r
_doc = void 0;\r
/*readonly SVGAnimatedString*/ this.target = new SVGAnimatedString();\r
}, false);\r
SVGURIReference.apply(this);\r
};\r
-SVGAElement.prototype = Object._create(SVGElement);\r
\r
function SVGViewElement() {\r
- SVGElement.apply(this);\r
/*readonly SVGStringList*/ this.viewTarget = new SVGStringList();\r
//SVGFitToViewBoxのインターフェースを用いる\r
/*readonly SVGAnimatedRect*/ this.viewBox = new SVGAnimatedRect();\r
/*readonly SVGAnimatedPreserveAspectRatio*/ this.preserveAspectRatio = new SVGAnimatedPreserveAspectRatio();\r
/*unsigned short*/ this.zoomAndPan = /*SVGZoomAndPan.SVG_ZOOMANDPAN_DISABLE*/ 1;\r
};\r
-SVGViewElement.prototype = Object._create(SVGElement);\r
\r
function SVGScriptElement() {\r
- SVGElement.apply(this);\r
/*DOMString*/ this.type;\r
SVGURIReference.apply(this);\r
this.addEventListener("DOMAttrModified", function(evt){\r
}, false);\r
}, false);\r
};\r
-SVGScriptElement.prototype = Object._create(SVGElement);\r
\r
base("$event").up("SVGEvents");\r
\r
});\r
\r
function SVGAnimationElement() {\r
- SVGElement.apply(this);\r
/*SIEにおけるSVGElementでは、fill属性とStyleSheetを結びつける機構があるため、\r
*styleのsetPropertyメソッドを無効化させておく必要がある\r
*/\r
}, false);\r
};\r
(function(t) {\r
-SVGAnimationElement.prototype = t;\r
/*以下のメソッド(beginElementなど)については、\r
*別モジュールであるsmil::ElementTimeControl(smil.js)を参照のこと\r
*/\r
return (this._getOffset(this._dur));\r
}\r
};\r
-})(Object._create(SVGElement));\r
+})(SVGAnimationElement.prototype);\r
//raises( DOMException );\r
NAIBU.Time = {\r
currentFrame : 0,\r
SVGElement,\r
SVGURIReference,\r
SVGExternalResourcesRequired*/ {\r
- SVGElement.apply(this);\r
SVGURIReference.apply(this);\r
};\r
-SVGMPathElement.prototype = Object._create(SVGElement);\r
\r
function SVGAnimateColorElement() {\r
SVGAnimationElement.apply(this);\r
SVGElement,\r
SVGExternalResourcesRequired,\r
SVGStylable*/ {\r
- SVGElement.apply(this);\r
/*_isExternalは外部から呼び出されたfont要素ならば、真(1)となる*/\r
/*boolean or number*/ this._isExternal = 0;\r
this.addEventListener("DOMNodeInserted", function(evt){\r
}, false);\r
}, false);\r
};\r
-SVGFontElement.prototype = Object._create(SVGElement);\r
\r
function SVGGlyphElement() /*:\r
SVGElement,\r
SVGStylable*/ {\r
- SVGElement.apply(this);\r
};\r
-SVGGlyphElement.prototype = Object._create(SVGElement);\r
\r
function SVGMissingGlyphElement() /*:\r
SVGElement,\r
SVGStylable*/ {\r
- SVGElement.apply(this);\r
};\r
-SVGMissingGlyphElement.prototype = Object._create(SVGElement);\r
\r
function SVGHKernElement() {\r
- SVGElement.apply(this);\r
};\r
-SVGHKernElement.prototype = Object._create(SVGElement);\r
\r
function SVGVKernElement() {\r
- SVGElement.apply(this);\r
};\r
-SVGVKernElement.prototype = Object._create(SVGElement);\r
\r
function SVGFontFaceElement() {\r
- SVGElement.apply(this);\r
/*boolean(or number)*/ this._isLinked = 0;\r
this.addEventListener("DOMNodeInserted", function(evt){\r
if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {\r
}\r
}, false);\r
};\r
-SVGFontFaceElement.prototype = Object._create(SVGElement);\r
\r
function SVGFontFaceSrcElement() {\r
- SVGElement.apply(this);\r
};\r
-SVGFontFaceSrcElement.prototype = Object._create(SVGElement);\r
\r
function SVGFontFaceUriElement() {\r
- SVGElement.apply(this);\r
this.addEventListener("DOMNodeInserted", function(evt){\r
if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {\r
return; //強制終了させる\r
}, false);\r
SVGURIReference.apply(this);\r
};\r
-SVGFontFaceUriElement.prototype = Object._create(SVGElement);\r
\r
function SVGFontFaceFormatElement() {\r
- SVGElement.apply(this);\r
};\r
-SVGFontFaceFormatElement.prototype = Object._create(SVGElement);\r
\r
function SVGFontFaceNameElement() {\r
- SVGElement.apply(this);\r
};\r
-SVGFontFaceNameElement.prototype = Object._create(SVGElement);\r
\r
function SVGDefinitionSrcElement() {\r
- SVGElement.apply(this);\r
};\r
-SVGDefinitionSrcElement.prototype = Object._create(SVGElement);\r
\r
function SVGForeignObjectElement(_doc) /*:\r
SVGElement,\r
SVGTransformable,\r
events::EventTarget*/ {\r
this._tar = _doc.createElement("v:group");\r
- SVGElement.apply(this);\r
var sl = SVGAnimatedLength;\r
/*readonly SVGAnimatedLength*/ this.x = new sl();\r
/*readonly SVGAnimatedLength*/ this.y = new sl();\r
}\r
}, true);\r
};\r
-SVGForeignObjectElement.prototype = Object._create(SVGElement);\r
\r
//#endif _SVG_IDL_\r
base("DOMImplementation")["http://www.w3.org/2000/svg"] = {\r
window.onscroll = NAIBU.emptyFunction;\r
window.detachEvent("onload", NAIBU._main);\r
NAIBU.freeArg();\r
- base = Object._create = SVGElement = CSS2Properties = NAIBU.xmlhttp = NAIBU = STLog = void 0;\r
+ base = Object._create = CSS2Properties = NAIBU.xmlhttp = NAIBU = STLog = void 0;\r
Array = ActiveXObject = void 0;\r
} catch(e) {}\r
}\r