[Sie-announce] SIEコード [1717]

Zurück zum Archiv-Index

svnno****@sourc***** svnno****@sourc*****
2010年 3月 10日 (水) 23:35:43 JST


Revision: 1717
          http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=1717
Author:   dhrname
Date:     2010-03-10 23:35:43 +0900 (Wed, 10 Mar 2010)

Log Message:
-----------


Modified Paths:
--------------
    branches/ufltima/dom/events.js

Modified: branches/ufltima/dom/events.js
===================================================================
--- branches/ufltima/dom/events.js	2010-03-10 11:39:14 UTC (rev 1716)
+++ branches/ufltima/dom/events.js	2010-03-10 14:35:43 UTC (rev 1717)
@@ -171,9 +171,6 @@
  *イベントの雛形となる。プロパティもすべて含めて、必須
  */
 function Event(evt) {
-  if (!evt) {
-    var evt = { ctrlKey:null, shiftKey:null, altKey:null, clientX:null, clientY:null};
-  }
   /*DOMString*/        this.type;
   /*EventTarget*/      this.target;
   /*EventTarget*/      this.currentTarget = null;
@@ -207,12 +204,22 @@
   return this;
 }*/
 /*Event*/ Document.prototype.createEvent = function( /*string*/ eventType) {
-  var evt =  new Event(window.event);
+  var evt;
+  if (eventType === "MutationEvents") {
+    evt = new MutationEvent();
+  } else if (eventType === "MouseEvents") {
+    evt = new MouseEvent(window.event);
+  } else if (eventType === "UIEvents") {
+    evt = new MouseEvent(window.event);
+  } else {
+    evt =  new Event();
+  }
   evt.type = eventType;
   return evt;
 };
 
 function UIEvent() {
+  Event.call(this, arguments);
 /*views::AbstractView*/  this.view;
 /*long*/                 this.detail = 0;
   return this;
@@ -226,6 +233,7 @@
   this.view = viewArg;
 };
 function MouseEvent(evt) {
+  UIEvent.call(this, arguments);
 /*long*/             this.screenX;
 /*long*/             this.screenY;
 /*long*/             this.clientX  = 0;
@@ -244,6 +252,7 @@
 };
 
 function MutationEvent(){
+  Event.call(this, arguments);
 /*Node*/  this.relatedNode;
 /*string*/  this.prevValue;
 /*string*/  this.newValue;
@@ -275,7 +284,7 @@
 /*Node*/ NamedNodeMap.prototype.setNamedItemNS = function(/*Node*/ arg) {
   var tgans = this.getNamedItemNS(arg.namespaceURI, arg.localName);
   /*ここから*/
-  var evt = arg.ownerElement.ownerDocument.createEvent("MutationEvents");
+  var evt = arg.ownerDocument.createEvent("MutationEvents");
   /*ここまで追加*/
   if (tgans) {                          //ノードがすでにあるならば、
     var s = this[this._num];




Sie-announce メーリングリストの案内
Zurück zum Archiv-Index