dmuratshin 9 years ago
parent
commit
db85ea00ae
3 changed files with 11 additions and 18 deletions
  1. 1 3
      oxygine/src/Actor.h
  2. 2 4
      oxygine/src/Button.cpp
  3. 8 11
      oxygine/src/SlidingActor.cpp

+ 1 - 3
oxygine/src/Actor.h

@@ -406,14 +406,12 @@ namespace oxygine
 
         union
         {
-            //dont change order!!! or broke statements: if (_pressedOvered == _overred)
+            //dont change order!!! or brake statements: if (_pressedOvered == _overred)
             struct
             {
                 pointer_index _overred;
                 pointer_index _pressedButton[MouseButton_Num];
             };
-            OXYGINE_DEPRECATED
-            pointer_index _pressed;//for compatibility, deprecated
             int32_t _pressedOvered;
         };
 

+ 2 - 4
oxygine/src/Button.cpp

@@ -80,8 +80,7 @@ namespace oxygine
                 {
                     _btnPressed = me->index;
                     setState(statePressed);
-
-                    _getStage()->addEventListener(TouchEvent::TOUCH_UP, CLOSURE(this, &Button::_mouseEvent));
+                    addEventListener(TouchEvent::TOUCH_UP, CLOSURE(this, &Button::_mouseEvent));
                 }
             }
             break;
@@ -90,8 +89,7 @@ namespace oxygine
                 if (_btnPressed == me->index)
                 {
                     setState(stateNormal);
-                    if (_getStage())
-                        _getStage()->removeEventListener(TouchEvent::TOUCH_UP, CLOSURE(this, &Button::_mouseEvent));
+                    removeEventListener(TouchEvent::TOUCH_UP, CLOSURE(this, &Button::_mouseEvent));
                     _btnPressed = 0;
                 }
             }

+ 8 - 11
oxygine/src/SlidingActor.cpp

@@ -325,24 +325,21 @@ namespace oxygine
                     {
                         spActor act = safeSpCast<Actor>(_holded);
 
-                        TouchEvent ev(TouchEvent::TOUCH_UP, true, Vector2(-100000, -100000));
-                        ev.index = te->index;
-
-                        _ignoreTouchUp = true;
-                        _drag.setIgnoreTouchUp(true);
-                        _stage->dispatchEvent(&ev);
-                        _drag.setIgnoreTouchUp(false);
-                        _ignoreTouchUp = false;
-
-
                         while (act && act.get() != _content.get())
                         {
                             for (int i = 0; i < MouseButton_Num; ++i)
                                 act->setNotPressed((MouseButton)i);
+
+
+                            TouchEvent ev(TouchEvent::TOUCH_UP, true, Vector2(-100000, -100000));
+                            ev.index = te->index;
+                            ev.bubbles = false;
+                            act->dispatchEvent(&ev);
+
+
                             act = act->getParent();
                         }
 
-
                         _holded = 0;
                     }
                 }