瀏覽代碼

Remove hasPickMasks from Observable (too specific)

yuccai 8 年之前
父節點
當前提交
30750834f8
共有 2 個文件被更改,包括 3 次插入17 次删除
  1. 0 16
      src/Tools/babylon.observable.ts
  2. 3 1
      src/babylon.scene.ts

+ 0 - 16
src/Tools/babylon.observable.ts

@@ -156,22 +156,6 @@
         }
 
         /**
-         * Does this observable has observers registered with pick mask
-         * @return {boolean} whether or not it has observers registered with pick mask
-        **/
-        public hasPickMasks(): boolean {
-            for (var obs of this._observers) {
-                if (obs.mask && (obs.mask === PointerEventTypes.POINTERPICK// ||
-                                // obs.mask === PointerEventTypes.POINTERTAP  ||
-                                // obs.mask === PointerEventTypes.POINTERDOUBLETAP
-                                )) {
-                    return true;
-                }
-            }
-            return false;
-        }
-
-        /**
          * Does this observable handles observer registered with a given mask
          * @param {number} trigger - the mask to be tested
          * @return {boolean} whether or not one observer registered with the given mask is handeled 

+ 3 - 1
src/babylon.scene.ts

@@ -870,7 +870,9 @@
                     this._currentPickResult = null;
                     let act;
 
-                    let checkPicking = obs1.hasPickMasks() || obs2.hasPickMasks();
+                    let checkPicking = obs1.hasSpecificMask(PointerEventTypes.POINTERPICK) || obs2.hasSpecificMask(PointerEventTypes.POINTERPICK)
+                                    || obs1.hasSpecificMask(PointerEventTypes.POINTERTAP) || obs2.hasSpecificMask(PointerEventTypes.POINTERTAP)
+                                    || obs1.hasSpecificMask(PointerEventTypes.POINTERDOUBLETAP) || obs2.hasSpecificMask(PointerEventTypes.POINTERDOUBLETAP);
                     if (!checkPicking && ActionManager.HasPickTriggers) {
                         act = this._initActionManager(act, clickInfo);
                         if (act)