svnno****@sourc*****
svnno****@sourc*****
2011年 7月 5日 (火) 23:19:03 JST
Revision: 2815 http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=2815 Author: dhrname Date: 2011-07-05 23:19:03 +0900 (Tue, 05 Jul 2011) Log Message: ----------- 0.81モジュール統合 Modified Paths: -------------- branches/08x/org/w3c/dom/css.js branches/08x/org/w3c/dom/svg.js Property Changed: ---------------- branches/08x/org/ branches/08x/org/w3c/ branches/08x/org/w3c/core.js branches/08x/org/w3c/dom/css.js branches/08x/org/w3c/dom/events.js branches/08x/org/w3c/dom/svg.js Property changes on: branches/08x/org ___________________________________________________________________ Modified: svn:mergeinfo - /branches/06x/061/org:1864-2067 /branches/06x/062/org:2071-2106 /branches/06x/063/org:2110-2146 /branches/06x/064/org:2149-2177 /branches/06x/065/org:2179-2209 /branches/06x/066/org:2211-2236 /branches/06x/067/org:2257-2282 /branches/06x/068/org:2284-2314 /branches/06x/069/org:2317-2352 /branches/06x/org:1861-2353 /branches/07x/070/org:2363-2383 /branches/07x/071/org:2385-2433 /branches/07x/072/org:2435-2474 /branches/07x/073/org:2476-2509 /branches/07x/074/org:2511-2556 /branches/07x/075/org:2558-2597 /branches/07x/076/org:2600-2631,2642 /branches/07x/077/org:2635-2677 /branches/07x/078/org:2679-2726 /branches/07x/079/org:2728-2745 /branches/07x/org:2356-2753 /branches/07x/org/org:2643 /branches/08x/080/org:2758-2785 + /branches/06x/061/org:1864-2067 /branches/06x/062/org:2071-2106 /branches/06x/063/org:2110-2146 /branches/06x/064/org:2149-2177 /branches/06x/065/org:2179-2209 /branches/06x/066/org:2211-2236 /branches/06x/067/org:2257-2282 /branches/06x/068/org:2284-2314 /branches/06x/069/org:2317-2352 /branches/06x/org:1861-2353 /branches/07x/070/org:2363-2383 /branches/07x/071/org:2385-2433 /branches/07x/072/org:2435-2474 /branches/07x/073/org:2476-2509 /branches/07x/074/org:2511-2556 /branches/07x/075/org:2558-2597 /branches/07x/076/org:2600-2631,2642 /branches/07x/077/org:2635-2677 /branches/07x/078/org:2679-2726 /branches/07x/079/org:2728-2745 /branches/07x/org:2356-2753 /branches/07x/org/org:2643 /branches/08x/080/org:2758-2785 /branches/08x/081/org:2787-2814 Property changes on: branches/08x/org/w3c ___________________________________________________________________ Modified: svn:mergeinfo - /branches/06x/061/org/w3c:1864-2067 /branches/06x/062/org/w3c:2071-2106 /branches/06x/063/org/w3c:2110-2146 /branches/06x/064/org/w3c:2149-2177 /branches/06x/065/org/w3c:2179-2209 /branches/06x/066/org/w3c:2211-2236 /branches/06x/067/org/w3c:2257-2282 /branches/06x/068/org/w3c:2284-2314 /branches/06x/069/org/w3c:2317-2352 /branches/06x/org/w3c:1861-2353 /branches/07x/070/org/w3c:2363-2383 /branches/07x/071/org/w3c:2385-2433 /branches/07x/072/org/w3c:2435-2474 /branches/07x/073/org/w3c:2476-2509 /branches/07x/074/org/w3c:2511-2556 /branches/07x/075/org/w3c:2558-2597 /branches/07x/076/org/w3c:2600-2631,2642 /branches/07x/077/org/w3c:2635-2677 /branches/07x/078/org/w3c:2679-2726 /branches/07x/079/org/w3c:2728-2745 /branches/07x/org/org/w3c:2643 /branches/07x/org/w3c:2356-2753 /branches/08x/080/org/w3c:2758-2785 /branches/ufltima:1621-1788 + /branches/06x/061/org/w3c:1864-2067 /branches/06x/062/org/w3c:2071-2106 /branches/06x/063/org/w3c:2110-2146 /branches/06x/064/org/w3c:2149-2177 /branches/06x/065/org/w3c:2179-2209 /branches/06x/066/org/w3c:2211-2236 /branches/06x/067/org/w3c:2257-2282 /branches/06x/068/org/w3c:2284-2314 /branches/06x/069/org/w3c:2317-2352 /branches/06x/org/w3c:1861-2353 /branches/07x/070/org/w3c:2363-2383 /branches/07x/071/org/w3c:2385-2433 /branches/07x/072/org/w3c:2435-2474 /branches/07x/073/org/w3c:2476-2509 /branches/07x/074/org/w3c:2511-2556 /branches/07x/075/org/w3c:2558-2597 /branches/07x/076/org/w3c:2600-2631,2642 /branches/07x/077/org/w3c:2635-2677 /branches/07x/078/org/w3c:2679-2726 /branches/07x/079/org/w3c:2728-2745 /branches/07x/org/org/w3c:2643 /branches/07x/org/w3c:2356-2753 /branches/08x/080/org/w3c:2758-2785 /branches/08x/081/org/w3c:2787-2814 /branches/ufltima:1621-1788 Property changes on: branches/08x/org/w3c/core.js ___________________________________________________________________ Modified: svn:mergeinfo - /branches/06x/061/org/w3c/core.js:1864-2067 /branches/06x/062/org/w3c/core.js:2071-2106 /branches/06x/063/org/w3c/core.js:2110-2146 /branches/06x/064/org/w3c/core.js:2149-2177 /branches/06x/065/org/w3c/core.js:2179-2209 /branches/06x/066/org/w3c/core.js:2211-2244 /branches/06x/067/org/w3c/core.js:2257-2282 /branches/06x/068/org/w3c/core.js:2284-2314 /branches/06x/069/org/w3c/core.js:2317-2352 /branches/06x/org/w3c/core.js:1861-2353 /branches/07x/070/org/w3c/core.js:2363-2383 /branches/07x/071/org/w3c/core.js:2385-2433 /branches/07x/072/org/w3c/core.js:2435-2474 /branches/07x/073/org/w3c/core.js:2476-2509 /branches/07x/074/org/w3c/core.js:2511-2556 /branches/07x/075/org/w3c/core.js:2558-2597 /branches/07x/076/org/w3c/core.js:2600-2631,2642 /branches/07x/077/org/w3c/core.js:2635-2677 /branches/07x/078/org/w3c/core.js:2679-2726 /branches/07x/079/org/w3c/core.js:2728-2745 /branches/07x/org/org/w3c/core.js:2643 /branches/07x/org/w3c/core.js:2356-2753 /branches/08x/080/org/w3c/core.js:2758-2785 /branches/ufltima/core.js:1621-1854 + /branches/06x/061/org/w3c/core.js:1864-2067 /branches/06x/062/org/w3c/core.js:2071-2106 /branches/06x/063/org/w3c/core.js:2110-2146 /branches/06x/064/org/w3c/core.js:2149-2177 /branches/06x/065/org/w3c/core.js:2179-2209 /branches/06x/066/org/w3c/core.js:2211-2244 /branches/06x/067/org/w3c/core.js:2257-2282 /branches/06x/068/org/w3c/core.js:2284-2314 /branches/06x/069/org/w3c/core.js:2317-2352 /branches/06x/org/w3c/core.js:1861-2353 /branches/07x/070/org/w3c/core.js:2363-2383 /branches/07x/071/org/w3c/core.js:2385-2433 /branches/07x/072/org/w3c/core.js:2435-2474 /branches/07x/073/org/w3c/core.js:2476-2509 /branches/07x/074/org/w3c/core.js:2511-2556 /branches/07x/075/org/w3c/core.js:2558-2597 /branches/07x/076/org/w3c/core.js:2600-2631,2642 /branches/07x/077/org/w3c/core.js:2635-2677 /branches/07x/078/org/w3c/core.js:2679-2726 /branches/07x/079/org/w3c/core.js:2728-2745 /branches/07x/org/org/w3c/core.js:2643 /branches/07x/org/w3c/core.js:2356-2753 /branches/08x/080/org/w3c/core.js:2758-2785 /branches/08x/081/org/w3c/core.js:2787-2814 /branches/ufltima/core.js:1621-1854 Modified: branches/08x/org/w3c/dom/css.js =================================================================== --- branches/08x/org/w3c/dom/css.js 2011-07-04 14:20:59 UTC (rev 2814) +++ branches/08x/org/w3c/dom/css.js 2011-07-05 14:19:03 UTC (rev 2815) @@ -451,6 +451,10 @@ s = isNaN(s) ? 0 : s; if (n >= "0" && n <= "9") { type = /*CSSPrimitiveValue.CSS_NUMBER*/ 1; + if (unitType === 1) { + unitType = tc = n = type = null; + return s; + } } else if (n === "%") { s *= this._percent; type = /*CSSPrimitiveValue.CSS_PERCENTAGE*/ 2; Property changes on: branches/08x/org/w3c/dom/css.js ___________________________________________________________________ Modified: svn:mergeinfo - /branches/06x/061/org/w3c/dom/css.js:1864-2067 /branches/06x/062/org/w3c/dom/css.js:2071-2106 /branches/06x/063/org/w3c/dom/css.js:2110-2146 /branches/06x/064/org/w3c/dom/css.js:2149-2177 /branches/06x/065/org/w3c/dom/css.js:2179-2209 /branches/06x/066/org/w3c/dom/css.js:2211-2236 /branches/06x/067/org/w3c/dom/css.js:2257-2282 /branches/06x/068/org/w3c/dom/css.js:2284-2314 /branches/06x/069/org/w3c/dom/css.js:2317-2352 /branches/06x/org/w3c/dom/css.js:1861-2353 /branches/07x/070/org/w3c/dom/css.js:2363-2383 /branches/07x/071/org/w3c/dom/css.js:2385-2433 /branches/07x/072/org/w3c/dom/css.js:2435-2474 /branches/07x/073/org/w3c/dom/css.js:2476-2509 /branches/07x/074/org/w3c/dom/css.js:2511-2556 /branches/07x/075/org/w3c/dom/css.js:2558-2597 /branches/07x/076/org/w3c/dom/css.js:2600-2631,2642 /branches/07x/077/org/w3c/dom/css.js:2635-2677 /branches/07x/078/org/w3c/dom/css.js:2679-2726 /branches/07x/079/org/w3c/dom/css.js:2728-2745 /branches/07x/org/org/w3c/dom/css.js:2643 /branches/07x/org/w3c/dom/css.js:2356-2753 /branches/08x/080/org/w3c/dom/css.js:2758-2785 /branches/ufltima/dom/css.js:1621-1855 + /branches/06x/061/org/w3c/dom/css.js:1864-2067 /branches/06x/062/org/w3c/dom/css.js:2071-2106 /branches/06x/063/org/w3c/dom/css.js:2110-2146 /branches/06x/064/org/w3c/dom/css.js:2149-2177 /branches/06x/065/org/w3c/dom/css.js:2179-2209 /branches/06x/066/org/w3c/dom/css.js:2211-2236 /branches/06x/067/org/w3c/dom/css.js:2257-2282 /branches/06x/068/org/w3c/dom/css.js:2284-2314 /branches/06x/069/org/w3c/dom/css.js:2317-2352 /branches/06x/org/w3c/dom/css.js:1861-2353 /branches/07x/070/org/w3c/dom/css.js:2363-2383 /branches/07x/071/org/w3c/dom/css.js:2385-2433 /branches/07x/072/org/w3c/dom/css.js:2435-2474 /branches/07x/073/org/w3c/dom/css.js:2476-2509 /branches/07x/074/org/w3c/dom/css.js:2511-2556 /branches/07x/075/org/w3c/dom/css.js:2558-2597 /branches/07x/076/org/w3c/dom/css.js:2600-2631,2642 /branches/07x/077/org/w3c/dom/css.js:2635-2677 /branches/07x/078/org/w3c/dom/css.js:2679-2726 /branches/07x/079/org/w3c/dom/css.js:2728-2745 /branches/07x/org/org/w3c/dom/css.js:2643 /branches/07x/org/w3c/dom/css.js:2356-2753 /branches/08x/080/org/w3c/dom/css.js:2758-2785 /branches/08x/081/org/w3c/dom/css.js:2787-2814 /branches/ufltima/dom/css.js:1621-1855 Property changes on: branches/08x/org/w3c/dom/events.js ___________________________________________________________________ Modified: svn:mergeinfo - /branches/06x/061/org/w3c/dom/events.js:1864-2067 /branches/06x/062/org/w3c/dom/events.js:2071-2106 /branches/06x/063/org/w3c/dom/events.js:2110-2146 /branches/06x/064/org/w3c/dom/events.js:2149-2177 /branches/06x/065/org/w3c/dom/events.js:2179-2209 /branches/06x/066/org/w3c/dom/events.js:2211-2244 /branches/06x/067/org/w3c/dom/events.js:2257-2282 /branches/06x/068/org/w3c/dom/events.js:2284-2314 /branches/06x/069/org/w3c/dom/events.js:2317-2352 /branches/06x/org/w3c/dom/events.js:1861-2353 /branches/07x/070/org/w3c/dom/events.js:2363-2383 /branches/07x/071/org/w3c/dom/events.js:2385-2433 /branches/07x/072/org/w3c/dom/events.js:2435-2474 /branches/07x/073/org/w3c/dom/events.js:2476-2509 /branches/07x/074/org/w3c/dom/events.js:2511-2556 /branches/07x/075/org/w3c/dom/events.js:2558-2597 /branches/07x/076/org/w3c/dom/events.js:2600-2631,2642 /branches/07x/077/org/w3c/dom/events.js:2635-2677 /branches/07x/078/org/w3c/dom/events.js:2679-2726 /branches/07x/079/org/w3c/dom/events.js:2728-2745 /branches/07x/org/org/w3c/dom/events.js:2643 /branches/07x/org/w3c/dom/events.js:2356-2753 /branches/08x/080/org/w3c/dom/events.js:2758-2785 /branches/ufltima/dom/events.js:1621-1856 + /branches/06x/061/org/w3c/dom/events.js:1864-2067 /branches/06x/062/org/w3c/dom/events.js:2071-2106 /branches/06x/063/org/w3c/dom/events.js:2110-2146 /branches/06x/064/org/w3c/dom/events.js:2149-2177 /branches/06x/065/org/w3c/dom/events.js:2179-2209 /branches/06x/066/org/w3c/dom/events.js:2211-2244 /branches/06x/067/org/w3c/dom/events.js:2257-2282 /branches/06x/068/org/w3c/dom/events.js:2284-2314 /branches/06x/069/org/w3c/dom/events.js:2317-2352 /branches/06x/org/w3c/dom/events.js:1861-2353 /branches/07x/070/org/w3c/dom/events.js:2363-2383 /branches/07x/071/org/w3c/dom/events.js:2385-2433 /branches/07x/072/org/w3c/dom/events.js:2435-2474 /branches/07x/073/org/w3c/dom/events.js:2476-2509 /branches/07x/074/org/w3c/dom/events.js:2511-2556 /branches/07x/075/org/w3c/dom/events.js:2558-2597 /branches/07x/076/org/w3c/dom/events.js:2600-2631,2642 /branches/07x/077/org/w3c/dom/events.js:2635-2677 /branches/07x/078/org/w3c/dom/events.js:2679-2726 /branches/07x/079/org/w3c/dom/events.js:2728-2745 /branches/07x/org/org/w3c/dom/events.js:2643 /branches/07x/org/w3c/dom/events.js:2356-2753 /branches/08x/080/org/w3c/dom/events.js:2758-2785 /branches/08x/081/org/w3c/dom/events.js:2787-2814 /branches/ufltima/dom/events.js:1621-1856 Modified: branches/08x/org/w3c/dom/svg.js =================================================================== --- branches/08x/org/w3c/dom/svg.js 2011-07-04 14:20:59 UTC (rev 2814) +++ branches/08x/org/w3c/dom/svg.js 2011-07-05 14:19:03 UTC (rev 2815) @@ -1690,8 +1690,30 @@ *ここでは、responseTextを用いる */ var dsd = new Date(); + var ifr = document.createElement("iframe"); + ifr.marginWidth = ifr.marginHeight = "0px"; //このマージン設定がないと、全体がずれてしまう + ifr.scrolling = "no"; + ifr.frameBorder = "0"; + /*iframe要素を使って、描画のプロセスを分離する + *したがって、_docはdocumentとは別のオブジェクトとなる + */ + this._tar.parentNode.insertBefore(ifr, this._tar); + ifr.contentWindow.screen.updateInterval = 999; + var _doc = ifr.contentWindow.document; + _doc.write(""); + _doc.close(); // これがないと document.body は null になる + if (("namespaces" in _doc) && !_doc.namespaces["v"]) { + _doc.namespaces.add("v","urn:schemas-microsoft-com:vml"); + _doc.namespaces.add("o","urn:schemas-microsoft-com:office:office"); + var st = _doc.createStyleSheet(), + vmlUrl = "behavior: url(#default#VML);display: inline-block;} "; //inline-blockはIEのバグ対策 + st.cssText = "v\\:rect{" +vmlUrl+ "v\\:image{" +vmlUrl+ "v\\:fill{" +vmlUrl+ "v\\:stroke{" +vmlUrl+ "o\\:opacity2{" +vmlUrl + + "dn\\:defs{display:none}" + + "v\\:group{text-indent:0px;position:relative;width:100%;height:100%;" +vmlUrl + + "v\\:shape{width:100%;height:100%;" +vmlUrl; + st = vmlUrl = null; + } var str = this.xmlhttp.responseText, - _doc = document, objei = this._tar, s = DOMImplementation.createDocument("http://www.w3.org/2000/svg", "svg"), tar = s.documentElement, @@ -1704,7 +1726,12 @@ style, fontSize, w, h, sw, sh, trstyle, tpstyle, backrs, viewWidth, viewHeight, bfl, bft, bl, backright, backdown, text, _parseFloat = parseFloat, - ndoc = NAIBU.doc; + ndoc = NAIBU.doc, + oba = _doc.createElement("div"); //obaはradialGradient要素で使う + oba.setAttribute("id","_NAIBU_outline"); + _doc.body.appendChild(oba); + _doc.body.style.backgroundColor = objei.parentNode.currentStyle.backgroundColor; + s._document_ = _doc; //_document_プロパティはradialGradient要素やNAIBU._setPaintなどで使う ndoc.async = false; /*下記のプロパティについては、Microsoftのサイトを参照 *ResolveExternals Property [Second-level DOM] @@ -1761,11 +1788,13 @@ tar.setAttributeNodeNS(att); } str = attr = null; + ifr.style.width = tview.width+3+ "px"; + ifr.style.height = tview.height+3+ "px"; dcp.style.width = tview.width+ "px"; dcp.style.height = tview.height+ "px"; dcp.coordsize = tview.width+ " " +tview.height; sp.appendChild(dcp); - objei.parentNode.insertBefore(sp, objei); + _doc.body.appendChild(sp); dcp.appendChild(sdt); while (fi) { //子ノードを検索して、子供がいれば、importNodeメソッドを再帰的に実行する n = s.importNode(fi, true); @@ -1846,14 +1875,15 @@ } } s.defaultView._cache = s.defaultView._cache_ele = null; - evt = _doc = objei = tar = tview = objw = objh = n = att = sdt = sp = dcp = backr = w = h = sw = sh = style = fontSize = null; + oba = _doc = evt = _doc = objei = tar = tview = objw = objh = n = att = sdt = sp = dcp = backr = w = h = sw = sh = style = fontSize = null; trstyle = tpstyle = backrs = viewWidth = viewHeight = text = texti = i = bfl = bft = bl = bt = backdown = backright = null; text = _parseFloat = null; /*IEのメモリリーク対策として、空関数を入力*/ this.xmlhttp.onreadystatechange = NAIBU.emptyFunction; alert(+(new Date()) - dsd.getTime()) if (this._next) { - s = null; + ifr.contentWindow.screen.updateInterval = 0; + ifr = s = null; this._next._init(); } else { /*全要素の読み込みが終了した場合*/ @@ -1923,7 +1953,6 @@ this.addEventListener("DOMAttrModified", function(evt){ if (evt.attrName === "type") { evt.target.type = evt.newValue; - } else if (evt.attrName === "title") { evt.target.title = evt.newValue; } evt = null; @@ -2626,7 +2655,8 @@ }; SVGPathElement.constructor = SVGElement; SVGPathElement.prototype = new SVGElement(); -SVGPathElement.prototype._attrModi = function(evt){ +(function(_sproto) { +_sproto._attrModi = function(evt){ var tar = evt.target; if (evt.attrName === "d" && evt.newValue !== ""){ /* d属性の値が空の場合は、描画を行わないようにする @@ -2919,7 +2949,7 @@ } evt = tar = taco = cx = cy = xn = yn = startx = starty = tnl = tlist = ti = dii = ts = isZ = isM = isL = isC = s = null; }; -SVGPathElement.prototype._nodeInsert = function(evt){ +_sproto._nodeInsert = function(evt){ var tar = evt.target; if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) { return; //強制終了させる @@ -2950,7 +2980,7 @@ tar.addEventListener("DOMNodeInsertedIntoDocument", tar._nodeInsertInto, false); evt = tar = null; }; -SVGPathElement.prototype._nodeInsertInto = function(evt){ +_sproto._nodeInsertInto = function(evt){ /*以下の処理は、normalizedpathSegListとCTMに基づいて、 *SVGのd属性をVMLに変換していく処理である。 */ @@ -2995,7 +3025,7 @@ delete tar._currentStyle; evt = tar = dat = t = tx = ty = matrix = tlist = x = y = _parseInt = ma = mb = mc = md = me = mf = vi = isZ = isC = i = tli = tps = ti = cname = tt = null; }; -SVGPathElement.prototype._com = { +_sproto._com = { _nameCom : { z : " x ", Z : " x ", @@ -3023,7 +3053,7 @@ isRe : /,/, isSp : /\S+/g }; - /*float*/ SVGPathElement.prototype.getTotalLength = function() { + /*float*/ _sproto.getTotalLength = function() { var s = 0, nl = this.normalizedPathSegList; for (var i=1,nln=nl.numberOfItems,ms=null;i<nln;++i) { @@ -3054,7 +3084,7 @@ this.pathLength.baseVal = s; return s; }; - /*SVGPoint*/ SVGPathElement.prototype.getPointAtLength = function(/*float*/ distance ) { + /*SVGPoint*/ _sproto.getPointAtLength = function(/*float*/ distance ) { var segn = this.getPathSegAtLength(distance), x = 0, y = 0, @@ -3102,7 +3132,7 @@ } return s; }; - /*unsigned long*/ SVGPathElement.prototype.getPathSegAtLength = function(/*float*/ distance ) { + /*unsigned long*/ _sproto.getPathSegAtLength = function(/*float*/ distance ) { var nl = this.normalizedPathSegList; //仕様ではpathSegList for (var i=0,nln=nl.numberOfItems,ms=null;i<nln;++i) { var seg = nl.getItem(i); @@ -3134,35 +3164,35 @@ */ return (nl.numberOfItems - 1); }; - /*SVGPathSegClosePath*/ SVGPathElement.prototype.createSVGPathSegClosePath = function() { + /*SVGPathSegClosePath*/ _sproto.createSVGPathSegClosePath = function() { var _SVGPathSegClosePath = SVGPathSegClosePath; return (new _SVGPathSegClosePath()); }; - /*SVGPathSegMovetoAbs*/ SVGPathElement.prototype.createSVGPathSegMovetoAbs = function(/*float*/ x, /*float*/ y ) { + /*SVGPathSegMovetoAbs*/ _sproto.createSVGPathSegMovetoAbs = function(/*float*/ x, /*float*/ y ) { var _SVGPathSegMovetoAbs = SVGPathSegMovetoAbs, s = new _SVGPathSegMovetoAbs(); s.x = x; s.y = y; return s; }; - /*SVGPathSegMovetoRel*/ SVGPathElement.prototype.createSVGPathSegMovetoRel = function(/*float*/ x, /*float*/ y ) { + /*SVGPathSegMovetoRel*/ _sproto.createSVGPathSegMovetoRel = function(/*float*/ x, /*float*/ y ) { var s = new SVGPathSegMovetoRel(); s.x = x; s.y = y; return s; }; - /*SVGPathSegLinetoAbs*/ SVGPathElement.prototype.createSVGPathSegLinetoAbs = function(/*float*/ x, /*float*/ y ) { + /*SVGPathSegLinetoAbs*/ _sproto.createSVGPathSegLinetoAbs = function(/*float*/ x, /*float*/ y ) { var s = new SVGPathSegLinetoAbs(); s.x = x; s.y = y; return s; }; - /*SVGPathSegLinetoRel*/ SVGPathElement.prototype.createSVGPathSegLinetoRel = function(/*float*/ x, /*float*/ y ) { + /*SVGPathSegLinetoRel*/ _sproto.createSVGPathSegLinetoRel = function(/*float*/ x, /*float*/ y ) { var s = new SVGPathSegLinetoRel(); s.x = x; s.y = y; return s; }; - /*SVGPathSegCurvetoCubicAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) { + /*SVGPathSegCurvetoCubicAbs*/ _sproto.createSVGPathSegCurvetoCubicAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) { var _SVGPathSegCurvetoCubicAbs = SVGPathSegCurvetoCubicAbs, s = new _SVGPathSegCurvetoCubicAbs(); s.x = x; s.y = y; @@ -3172,7 +3202,7 @@ s.y2 = y2; return s; }; - /*SVGPathSegCurvetoCubicRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) { + /*SVGPathSegCurvetoCubicRel*/ _sproto.createSVGPathSegCurvetoCubicRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) { var s = new SVGPathSegCurvetoCubicRel(); s.x = x; s.y = y; @@ -3182,7 +3212,7 @@ s.y2 = y2; return s; }; - /*SVGPathSegCurvetoQuadraticAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) { + /*SVGPathSegCurvetoQuadraticAbs*/ _sproto.createSVGPathSegCurvetoQuadraticAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) { var s = new SVGPathSegCurvetoQuadraticAbs(); s.x = x; s.y = y; @@ -3190,7 +3220,7 @@ s.y1 = y1; return s; }; - /*SVGPathSegCurvetoQuadraticRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) { + /*SVGPathSegCurvetoQuadraticRel*/ _sproto.createSVGPathSegCurvetoQuadraticRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) { var s = new SVGPathSegCurvetoQuadraticRel(); s.x = x; s.y = y; @@ -3198,7 +3228,7 @@ s.y1 = y1; return s; }; - /*SVGPathSegArcAbs*/ SVGPathElement.prototype.createSVGPathSegArcAbs = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) { + /*SVGPathSegArcAbs*/ _sproto.createSVGPathSegArcAbs = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) { var s = new SVGPathSegArcAbs(); s.x = x; s.y = y; @@ -3209,7 +3239,7 @@ s.sweepFlag = sweepFlag; return s; }; - /*SVGPathSegArcRel*/ SVGPathElement.prototype.createSVGPathSegArcRel = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) { + /*SVGPathSegArcRel*/ _sproto.createSVGPathSegArcRel = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) { var s = new SVGPathSegArcRel(); s.x = x; s.y = y; @@ -3220,31 +3250,31 @@ s.sweepFlag = sweepFlag; return s; }; - /*SVGPathSegLinetoHorizontalAbs*/ SVGPathElement.prototype.createSVGPathSegLinetoHorizontalAbs = function(/*float*/ x ) { + /*SVGPathSegLinetoHorizontalAbs*/ _sproto.createSVGPathSegLinetoHorizontalAbs = function(/*float*/ x ) { var s = new SVGPathSegLinetoHorizontalAbs(); s.x = x; s.y = 0; //DOMでは指定されていないが、変換処理が楽なので用いる return s; }; - /*SVGPathSegLinetoHorizontalRel*/ SVGPathElement.prototype.createSVGPathSegLinetoHorizontalRel = function(/*float*/ x ) { + /*SVGPathSegLinetoHorizontalRel*/ _sproto.createSVGPathSegLinetoHorizontalRel = function(/*float*/ x ) { var s = new SVGPathSegLinetoHorizontalRel(); s.x = x; s.y = 0; return s; }; - /*SVGPathSegLinetoVerticalAbs*/ SVGPathElement.prototype.createSVGPathSegLinetoVerticalAbs = function(/*float*/ y ) { + /*SVGPathSegLinetoVerticalAbs*/ _sproto.createSVGPathSegLinetoVerticalAbs = function(/*float*/ y ) { var s = new SVGPathSegLinetoVerticalAbs(); s.x = 0; s.y = y; return s; }; - /*SVGPathSegLinetoVerticalRel*/ SVGPathElement.prototype.createSVGPathSegLinetoVerticalRel = function(/*float*/ y ) { + /*SVGPathSegLinetoVerticalRel*/ _sproto.createSVGPathSegLinetoVerticalRel = function(/*float*/ y ) { var s = new SVGPathSegLinetoVerticalRel(); s.x = 0; s.y = y; return s; }; - /*SVGPathSegCurvetoCubicSmoothAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicSmoothAbs = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) { + /*SVGPathSegCurvetoCubicSmoothAbs*/ _sproto.createSVGPathSegCurvetoCubicSmoothAbs = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) { var s = new SVGPathSegCurvetoCubicSmoothAbs(); s.x = x; s.y = y; @@ -3252,7 +3282,7 @@ s.y2 = y2; return s; }; - /*SVGPathSegCurvetoCubicSmoothRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicSmoothRel = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) { + /*SVGPathSegCurvetoCubicSmoothRel*/ _sproto.createSVGPathSegCurvetoCubicSmoothRel = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) { var s = new SVGPathSegCurvetoCubicSmoothRel(); s.x = x; s.y = y; @@ -3260,18 +3290,19 @@ s.y2 = y2; return s; }; - /*SVGPathSegCurvetoQuadraticSmoothAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticSmoothAbs = function(/*float*/ x, /*float*/ y ) { + /*SVGPathSegCurvetoQuadraticSmoothAbs*/ _sproto.createSVGPathSegCurvetoQuadraticSmoothAbs = function(/*float*/ x, /*float*/ y ) { var s = new SVGPathSegCurvetoQuadraticSmoothAbs(); s.x = x; s.y = y; return s; }; - /*SVGPathSegCurvetoQuadraticSmoothRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticSmoothRel = function(/*float*/ x, /*float*/ y ) { + /*SVGPathSegCurvetoQuadraticSmoothRel*/ _sproto.createSVGPathSegCurvetoQuadraticSmoothRel = function(/*float*/ x, /*float*/ y ) { var s = new SVGPathSegCurvetoQuadraticSmoothRel(); s.x = x; s.y = y; return s; }; +})(SVGPathElement.prototype) NAIBU.SVGPathElement = SVGPathElement; //IE8では、SVGPathElementはローカル変数 })(document, parseInt, Math); @@ -3286,11 +3317,13 @@ /*readonly SVGAnimatedLength*/ this.rx = new SVGAnimatedLength(); /*readonly SVGAnimatedLength*/ this.ry = new SVGAnimatedLength(); this.addEventListener("DOMNodeInserted", function(evt){ - var tar = evt.target; if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) { return; //強制終了させる } - var tnext = tar.nextSibling, tpar = tar.parentNode, isLast = true; + var tar = evt.target, + tnext = tar.nextSibling, + tpar = tar.parentNode, + isLast = true; if (tnext && tnext._tar && tpar._tar && (tnext._tar.parentNode === tpar._tar)) { tpar._tar.insertBefore(tar._tar, tnext._tar); } else if (tnext && !tnext._tar && tpar._tar) { @@ -3312,57 +3345,73 @@ } tnext = tpar = isLast = null; tar.addEventListener("DOMNodeInsertedIntoDocument", function(evt) { - var tar = evt.target, style = tar.ownerDocument.defaultView.getComputedStyle(tar, ""); - var fontSize = parseFloat(style.getPropertyValue("font-size")); + var tar = evt.target, + style = tar.ownerDocument.defaultView.getComputedStyle(tar, ""), + fontSize = parseFloat(style.getPropertyValue("font-size")); tar.x.baseVal._emToUnit(fontSize); tar.y.baseVal._emToUnit(fontSize); tar.width.baseVal._emToUnit(fontSize); tar.height.baseVal._emToUnit(fontSize); - var rx = tar.getAttributeNS(null, "rx"), ry = tar.getAttributeNS(null, "ry"); - var x = tar.x.baseVal.value, y = tar.y.baseVal.value, xw = x + tar.width.baseVal.value, yh = y + tar.height.baseVal.value; - var list; + var rx = tar.getAttributeNS(null, "rx"), + ry = tar.getAttributeNS(null, "ry"), + x = tar.x.baseVal.value, + y = tar.y.baseVal.value, + xw = x + tar.width.baseVal.value, + yh = y + tar.height.baseVal.value, + list; if ((rx || ry) && (rx !== "0") && (ry !== "0")) { tar.rx.baseVal._emToUnit(fontSize); tar.ry.baseVal._emToUnit(fontSize); - var thrx = tar.rx.baseVal, thry = tar.ry.baseVal; + var thrx = tar.rx.baseVal, + thry = tar.ry.baseVal, + twidth = tar.width.baseVal.value, + theight = tar.height.baseVal.value; thrx.value = rx ? thrx.value : thry.value; thry.value = ry ? thry.value : thrx.value; //rx属性が幅より大きければ、幅の半分を属性に設定(ry属性は高さと比較する) - var twidth = tar.width.baseVal.value, theight = tar.height.baseVal.value; if (thrx.value > twidth / 2) { thrx.value = twidth / 2; } if (thry.value > theight / 2) { thry.value = theight / 2; } - var rxv = thrx.value, ryv = thry.value; - var rrx = rxv * 0.55228, rry = ryv * 0.55228; - var a = xw - rxv, b = x + rxv, c = y + ryv, d = yh - ryv; + var rxv = thrx.value, + ryv = thry.value, + rrx = rxv * 0.55228, + rry = ryv * 0.55228, + a = xw - rxv, + b = x + rxv, + c = y + ryv, + d = yh - ryv; list = ["m",b,y, "l",a,y, "c",a+rrx,y,xw,c-rry,xw,c, "l",xw,d, "c",xw,d+rry,a+rrx,yh,a,yh, "l",b,yh, "c",b-rrx,yh,x,d+rry,x,d, "l",x,c, "c",x,c-rry,b-rrx,y,b,y]; } else { list = ["m",x,y, "l",x,yh, xw,yh, xw,y, "x e"]; } //以下は、配列listそのものをCTMで座標変換していく処理 - var par = tar.ownerDocument.documentElement, ctm = tar.getScreenCTM(); + var par = tar.ownerDocument.documentElement, + ctm = tar.getScreenCTM(), + dat, p, pmt, + ele = tar._tar, + vi = tar.ownerDocument.documentElement, + w = vi.width.baseVal.value, + h = vi.height.baseVal.value; for (var i=0, lili=list.length;i<lili;) { if (isNaN(list[i])) { //コマンド文字は読み飛ばす ++i; continue; } - var p = par.createSVGPoint(); + p = par.createSVGPoint(); p.x = list[i]; p.y = list[i+1]; - var pmt = p.matrixTransform(ctm); + pmt = p.matrixTransform(ctm); list[i] = pmt.x; ++i; list[i] = pmt.y; ++i; p = pmt = null; } - var dat = list.join(" "); + dat = list.join(" "); //VMLに結び付けていく - var ele = tar._tar, vi = tar.ownerDocument.documentElement; - var w = vi.width.baseVal.value, h = vi.height.baseVal.value; ele.path = dat; ele.coordsize = w + " " + h; NAIBU._setPaint(tar, ctm); @@ -4721,6 +4770,7 @@ this._tar = _doc.createElement("a"); _doc = null; /*readonly SVGAnimatedString*/ this.target = new SVGAnimatedString(); + this.target.baseVal = "_self"; this.addEventListener("DOMAttrModified", function(evt){ var tar = evt.target; if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) { @@ -4785,6 +4835,11 @@ tar = evt = null; return; //強制終了させる }, true); + this.addEventListener("DOMNodeInsertedIntoDocument", function(evt){ + var tar = evt.target; + tar._tar.setAttribute("target", tar.target.baseVal); + tar = null; + }, false); SVGURIReference.apply(this, arguments); return this; }; @@ -5150,9 +5205,7 @@ } if (nci._end && (nci._end <= s) && (nci.getCurrentTime() !== 0)) { nci.endElement(); - if (!!nci._frame) { - nci._frame(); - } + nci._frame && nci._frame(); nci._currentFrame = 0; delete nci._begin; nci._end = null; Property changes on: branches/08x/org/w3c/dom/svg.js ___________________________________________________________________ Modified: svn:mergeinfo - /branches/06x/061/org/w3c/dom/svg.js:1864-2067 /branches/06x/062/org/w3c/dom/svg.js:2071-2106 /branches/06x/063/org/w3c/dom/svg.js:2110-2146 /branches/06x/064/org/w3c/dom/svg.js:2149-2177 /branches/06x/065/org/w3c/dom/svg.js:2179-2209 /branches/06x/066/org/w3c/dom/svg.js:2211-2239 /branches/06x/067/org/w3c/dom/svg.js:2257-2282 /branches/06x/068/org/w3c/dom/svg.js:2284-2314 /branches/06x/069/org/w3c/dom/svg.js:2317-2352 /branches/06x/org/w3c/dom/svg.js:1861-2353 /branches/07x/070/org/w3c/dom/svg.js:2363-2383 /branches/07x/071/org/w3c/dom/svg.js:2385-2433 /branches/07x/072/org/w3c/dom/svg.js:2435-2474 /branches/07x/073/org/w3c/dom/svg.js:2476-2509 /branches/07x/074/org/w3c/dom/svg.js:2511-2556 /branches/07x/075/org/w3c/dom/svg.js:2558-2597 /branches/07x/076/org/w3c/dom/svg.js:2600-2631,2642 /branches/07x/077/org/w3c/dom/svg.js:2635-2677 /branches/07x/078/org/w3c/dom/svg.js:2679-2726 /branches/07x/079/org/w3c/dom/svg.js:2728-2746 /branches/07x/org/org/w3c/dom/svg.js:2643 /branches/07x/org/w3c/dom/svg.js:2356-2753 /branches/08x/080/org/w3c/dom/svg.js:2758-2785 /branches/ufltima/dom/svg.js:1621-1856 + /branches/06x/061/org/w3c/dom/svg.js:1864-2067 /branches/06x/062/org/w3c/dom/svg.js:2071-2106 /branches/06x/063/org/w3c/dom/svg.js:2110-2146 /branches/06x/064/org/w3c/dom/svg.js:2149-2177 /branches/06x/065/org/w3c/dom/svg.js:2179-2209 /branches/06x/066/org/w3c/dom/svg.js:2211-2239 /branches/06x/067/org/w3c/dom/svg.js:2257-2282 /branches/06x/068/org/w3c/dom/svg.js:2284-2314 /branches/06x/069/org/w3c/dom/svg.js:2317-2352 /branches/06x/org/w3c/dom/svg.js:1861-2353 /branches/07x/070/org/w3c/dom/svg.js:2363-2383 /branches/07x/071/org/w3c/dom/svg.js:2385-2433 /branches/07x/072/org/w3c/dom/svg.js:2435-2474 /branches/07x/073/org/w3c/dom/svg.js:2476-2509 /branches/07x/074/org/w3c/dom/svg.js:2511-2556 /branches/07x/075/org/w3c/dom/svg.js:2558-2597 /branches/07x/076/org/w3c/dom/svg.js:2600-2631,2642 /branches/07x/077/org/w3c/dom/svg.js:2635-2677 /branches/07x/078/org/w3c/dom/svg.js:2679-2726 /branches/07x/079/org/w3c/dom/svg.js:2728-2746 /branches/07x/org/org/w3c/dom/svg.js:2643 /branches/07x/org/w3c/dom/svg.js:2356-2753 /branches/08x/080/org/w3c/dom/svg.js:2758-2785 /branches/08x/081/org/w3c/dom/svg.js:2787-2814 /branches/ufltima/dom/svg.js:1621-1856