You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2017/06/26 17:50:51 UTC

[14/50] [abbrv] git commit: [flex-asjs] [refs/heads/develop] - fix event types for valuechange. Otherwise Binding would break. Events are global and should be compatible for any given event type

fix event types for valuechange.  Otherwise Binding would break.  Events are global and should be compatible for any given event type


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/4df71784
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/4df71784
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/4df71784

Branch: refs/heads/develop
Commit: 4df717847eaeb12d6b14af833853852eb3cc13ce
Parents: b17c2bd
Author: Alex Harui <ah...@apache.org>
Authored: Tue Jun 6 11:58:03 2017 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Tue Jun 6 11:58:03 2017 -0700

----------------------------------------------------------------------
 .../flex/html/beads/NumericStepperView.as       |  5 ++--
 .../beads/controllers/SliderMouseController.as  | 27 +++++++++++++++-----
 .../beads/controllers/SpinnerMouseController.as |  9 +++++--
 .../apache/flex/html/beads/models/RangeModel.as |  4 ++-
 .../html/beads/models/RangeModelExtended.as     |  9 +++++--
 .../html/beads/models/ValueToggleButtonModel.as |  5 +++-
 6 files changed, 44 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4df71784/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/NumericStepperView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/NumericStepperView.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/NumericStepperView.as
index 15e2321..5ad42dc 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/NumericStepperView.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/NumericStepperView.as
@@ -29,6 +29,7 @@ package org.apache.flex.html.beads
     import org.apache.flex.core.IUIBase;
     import org.apache.flex.core.UIBase;
 	import org.apache.flex.events.Event;
+	import org.apache.flex.events.ValueChangeEvent
 	import org.apache.flex.events.IEventDispatcher;
     import org.apache.flex.html.Label;
 	import org.apache.flex.html.Spinner;
@@ -143,11 +144,11 @@ package org.apache.flex.html.beads
 		/**
 		 * @private
 		 */
-		private function spinnerValueChanged(event:Event) : void
+		private function spinnerValueChanged(event:ValueChangeEvent) : void
 		{
 			input.text = String(spinner.value);
 			
-			var newEvent:Event = new Event(event.type,event.bubbles);
+			var newEvent:ValueChangeEvent = new ValueChangeEvent(event.type, false, false, event.oldValue, event.newValue);
 			IEventDispatcher(_strand).dispatchEvent(newEvent);
 		}
 		

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4df71784/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SliderMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SliderMouseController.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SliderMouseController.as
index 91589b5..9663aff 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SliderMouseController.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SliderMouseController.as
@@ -26,6 +26,7 @@ package org.apache.flex.html.beads.controllers
 	import org.apache.flex.events.Event;
 	import org.apache.flex.events.IEventDispatcher;
 	import org.apache.flex.events.MouseEvent;
+	import org.apache.flex.events.ValueChangeEvent;
 	import org.apache.flex.geom.Point;
 	import org.apache.flex.html.beads.ISliderView;
 	import org.apache.flex.html.beads.SliderTrackView;
@@ -68,7 +69,9 @@ package org.apache.flex.html.beads.controllers
 		private var rangeModel:IRangeModel;
 		
 		private var _strand:IStrand;
-		
+
+		private var oldValue:Number;
+				
 		/**
 		 *  @copy org.apache.flex.core.IBead#strand
 		 *  
@@ -126,6 +129,7 @@ package org.apache.flex.html.beads.controllers
 			
 			origin = new Point(event.screenX, event.screenY);
 			thumb = new Point(sliderView.thumb.x,sliderView.thumb.y);
+			oldValue = rangeModel.value;
 		}
 		
 		/**
@@ -137,7 +141,8 @@ package org.apache.flex.html.beads.controllers
 			UIBase(_strand).topMostEventDispatcher.removeEventListener(MouseEvent.MOUSE_MOVE, thumbMoveHandler);
 			UIBase(_strand).topMostEventDispatcher.removeEventListener(MouseEvent.MOUSE_UP, thumbUpHandler);
 			
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
+			var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, oldValue, rangeModel.value);
+			IEventDispatcher(_strand).dispatchEvent(vce);
 		}
 		
         COMPILE::SWF
@@ -160,9 +165,10 @@ package org.apache.flex.html.beads.controllers
 			var p:Number = newX/sliderView.track.width;
 			var n:Number = p*(rangeModel.maximum - rangeModel.minimum) + rangeModel.minimum;
 		
+			var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, rangeModel.value, n);
 			rangeModel.value = n;
 			
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
+			IEventDispatcher(_strand).dispatchEvent(vce);
 		}
 		
 		/**
@@ -179,9 +185,10 @@ package org.apache.flex.html.beads.controllers
 			var p:Number = xloc/sliderView.track.width;
 			var n:Number = p*(rangeModel.maximum - rangeModel.minimum) + rangeModel.minimum;
 			
+			var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, rangeModel.value, n);
 			rangeModel.value = n;
 			
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
+			IEventDispatcher(_strand).dispatchEvent(vce);
 		}
         
         /**
@@ -195,6 +202,7 @@ package org.apache.flex.html.beads.controllers
             var n:Number = p * (host.maximum - host.minimum) +
                 host.minimum;
             
+			var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, host.value, n);
             host.value = n;
             
             origin = parseInt(thumb.element.style.left, 10);
@@ -202,7 +210,7 @@ package org.apache.flex.html.beads.controllers
             
             calcValFromMousePosition(event, true);
             
-            host.dispatchEvent(new org.apache.flex.events.Event('valueChange'));
+            host.dispatchEvent(vce);
         }
         
         
@@ -219,6 +227,7 @@ package org.apache.flex.html.beads.controllers
             
             origin = event.clientX;
             position = parseInt(thumb.element.style.left, 10);
+            oldValue = rangeModel.value;
         }
         
         COMPILE::JS
@@ -238,8 +247,9 @@ package org.apache.flex.html.beads.controllers
                 handleThumbMove, false, this);
             
             calcValFromMousePosition(event, false);
+            var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, oldValue, rangeModel.value);
             
-            host.dispatchEvent(new org.apache.flex.events.Event('valueChange'));
+            host.dispatchEvent(vce);
         }
         
         
@@ -249,9 +259,12 @@ package org.apache.flex.html.beads.controllers
         private function handleThumbMove(event:BrowserEvent):void
         {
             var host:Slider = _strand as Slider;
+            var lastValue:Number = rangeModel.value;
             calcValFromMousePosition(event, false);
             
-            host.dispatchEvent(new org.apache.flex.events.Event('valueChange'));
+            var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, lastValue, rangeModel.value);
+            
+            host.dispatchEvent(vce);
         }
         
         

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4df71784/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SpinnerMouseController.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
index 2a898d8..b228980 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
@@ -25,6 +25,7 @@ package org.apache.flex.html.beads.controllers
 	import org.apache.flex.events.Event;
 	import org.apache.flex.events.IEventDispatcher;
 	import org.apache.flex.events.MouseEvent;
+	import org.apache.flex.events.ValueChangeEvent;
 	import org.apache.flex.html.TextButton;
 	import org.apache.flex.html.beads.ISpinnerView;
     COMPILE::JS
@@ -108,8 +109,10 @@ package org.apache.flex.html.beads.controllers
 		 */
 		private function decrementClickHandler( event:org.apache.flex.events.MouseEvent ) : void
 		{
+			var oldValue:Number = rangeModel.value;
 			rangeModel.value = Math.max(rangeModel.minimum, rangeModel.value - rangeModel.stepSize);
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
+			var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, oldValue, rangeModel.value);
+			IEventDispatcher(_strand).dispatchEvent(vce);
 		}
 
 		/**
@@ -117,8 +120,10 @@ package org.apache.flex.html.beads.controllers
 		 */
 		private function incrementClickHandler( event:org.apache.flex.events.MouseEvent ) : void
 		{
+			var oldValue:Number = rangeModel.value;
 			rangeModel.value = Math.min(rangeModel.maximum, rangeModel.value + rangeModel.stepSize);
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
+			var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, oldValue, rangeModel.value);
+			IEventDispatcher(_strand).dispatchEvent(vce);
 		}
 	}
 }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4df71784/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModel.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModel.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModel.as
index c06d3fe..ab86d03 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModel.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModel.as
@@ -23,6 +23,7 @@ package org.apache.flex.html.beads.models
 	import org.apache.flex.core.IRangeModel;
 	import org.apache.flex.events.Event;
 	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.events.ValueChangeEvent;
 			
 	/**
 	 *  The RangeModel class bead defines a set of for a numeric range of values
@@ -194,8 +195,9 @@ package org.apache.flex.html.beads.models
 				// what is coming in.
 				newValue = Math.max(minimum, newValue);
 				newValue = Math.min(maximum, newValue);
+				var oldValue:Number = _value;
 				_value = snap(newValue);
-				dispatchEvent(new Event("valueChange"));
+				dispatchEvent(new ValueChangeEvent("valueChange", false, false, oldValue, _value));
 			}
 		}
 		

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4df71784/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModelExtended.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModelExtended.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModelExtended.as
index ebbc4f3..fad333e 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModelExtended.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/RangeModelExtended.as
@@ -19,6 +19,7 @@
 package org.apache.flex.html.beads.models
 {
 	import org.apache.flex.events.Event;
+	import org.apache.flex.events.ValueChangeEvent;
 	import org.apache.flex.html.beads.models.RangeModel;
 
 	/**
@@ -56,8 +57,12 @@ package org.apache.flex.html.beads.models
 		}
 		override public function set value(newValue:Number):void
 		{
-			_value = newValue;
-			dispatchEvent(new Event("valueChange"));
+			if (_value != newValue)
+			{
+				var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, _value, newValue);
+				_value = newValue;
+				dispatchEvent(vce);
+			}
 		}
 
 		private var _labelFunction:Function;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4df71784/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/ValueToggleButtonModel.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/ValueToggleButtonModel.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/ValueToggleButtonModel.as
index 27b0a95..e8fbc76 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/ValueToggleButtonModel.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/models/ValueToggleButtonModel.as
@@ -21,6 +21,8 @@ package org.apache.flex.html.beads.models
 	
 	import org.apache.flex.core.IValueToggleButtonModel;
 	import org.apache.flex.events.Event;
+	import org.apache.flex.events.ValueChangeEvent;
+	
 
 	/**
 	 *  The ValueToggleButtonModel class bead extends the 
@@ -67,8 +69,9 @@ package org.apache.flex.html.beads.models
 		{
 			if( newValue != _value )
 			{
+				var vce:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, _value, newValue);
 				_value = newValue;
-				dispatchEvent(new Event("valueChange"));
+				dispatchEvent(vce);
 			}
 		}