You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by yi...@apache.org on 2020/10/24 13:34:08 UTC

[royale-asjs] 04/04: More emulation stubs

This is an automated email from the ASF dual-hosted git repository.

yishayw pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git

commit e70f6b47c4b3b9083f2cd75a35f87fe91575b555
Author: Yishay Weiss <yi...@hotmail.com>
AuthorDate: Sat Oct 24 14:33:40 2020 +0100

    More emulation stubs
---
 .../MXRoyale/src/main/royale/mx/effects/Effect.as  |   2 +
 .../main/royale/mx/validators/RegExpValidator.as   |  24 +-
 .../src/main/royale/spark/components/List.as       | 493 +++++++++++----------
 .../spark/layouts/supportClasses/LayoutBase.as     |  26 +-
 4 files changed, 277 insertions(+), 268 deletions(-)

diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/effects/Effect.as b/frameworks/projects/MXRoyale/src/main/royale/mx/effects/Effect.as
index 319af51..857cc4f 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/effects/Effect.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/effects/Effect.as
@@ -98,6 +98,8 @@ public class Effect extends org.apache.royale.effects.Effect
 	public function set targets(value:Array):void {}
 	// not implemented
 	public function set target(value:Object):void {}
+	//not implemented
+	public function get isPlaying():Boolean { return false; }
 
 
 
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/validators/RegExpValidator.as b/frameworks/projects/MXRoyale/src/main/royale/mx/validators/RegExpValidator.as
index f0c3a15..d256966 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/validators/RegExpValidator.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/validators/RegExpValidator.as
@@ -265,8 +265,8 @@ public class RegExpValidator extends Validator
 	 *  @private
 	 *  Storage for the noMatchError property.
 	 */
-	/* private var _noMatchError:String;
-	 */
+	 private var _noMatchError:String;
+	 
     /**
 	 *  @private
 	 */
@@ -283,23 +283,23 @@ public class RegExpValidator extends Validator
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
      */
-	/* public function get noMatchError():String
+	public function get noMatchError():String // not implemented
 	{
 		return _noMatchError;
-	} */
+	}
 
 	/**
 	 *  @private
 	 */
-	/* public function set noMatchError(value:String):void
+	public function set noMatchError(value:String):void // not implemented
 	{
-		noMatchErrorOverride = value;
-
-		_noMatchError = value != null ?
-						value :
-						resourceManager.getString(
-							"validators", "noMatchError");
-	} */
+		//noMatchErrorOverride = value;
+//
+		//_noMatchError = value != null ?
+						//value :
+						//resourceManager.getString(
+							//"validators", "noMatchError");
+	}
     
     //--------------------------------------------------------------------------
     //
diff --git a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/List.as b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/List.as
index 9e1d995..54f38b2 100644
--- a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/List.as
+++ b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/List.as
@@ -62,6 +62,7 @@ import org.apache.royale.html.beads.SingleSelectionDropIndicatorBead;
 import mx.managers.IFocusManagerComponent;
 import spark.components.supportClasses.ListBase;
 import mx.core.mx_internal;
+import mx.core.UIComponent;
 use namespace mx_internal;
 [Event(name="dragComplete", type="mx.events.DragEvent")]
 //--------------------------------------
@@ -925,7 +926,7 @@ public class List extends ListBase implements IFocusManagerComponent
      *  @private
      *  Internal storage for the selectedIndices property.
      */
-//	private var _selectedIndices:Vector.<int> = new Vector.<int>();
+	private var _selectedIndices:Vector.<int> = new Vector.<int>();
     
     /**
      *  @private
@@ -960,18 +961,18 @@ public class List extends ListBase implements IFocusManagerComponent
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-   /*  public function get selectedIndices():Vector.<int>
+    public function get selectedIndices():Vector.<int> // not implemented
     {
         return _selectedIndices;
-    } */
+    }
     
     /**
      *  @private
      */
-    /* public function set selectedIndices(value:Vector.<int>):void
+    public function set selectedIndices(value:Vector.<int>):void // not implemented
     {
         setSelectedIndices(value, false);
-    } */
+    }
     
     /**
      *  @private
@@ -985,34 +986,34 @@ public class List extends ListBase implements IFocusManagerComponent
      *  @param changeCaret if true, the caret will be set to the selectedIndex as a side-effect of calling 
      *  this method.  If false, caretIndex won't change.
      */
-    /* mx_internal function setSelectedIndices(value:Vector.<int>, dispatchChangeEvent:Boolean = false, changeCaret:Boolean = true):void
+    mx_internal function setSelectedIndices(value:Vector.<int>, dispatchChangeEvent:Boolean = false, changeCaret:Boolean = true):void // not implemented
     {
-        // TODO (jszeto) Do a deep compare of the vectors
-        if (_proposedSelectedIndices == value || 
-            (value && value.length == 1 && 
-             selectedIndices && selectedIndices.length == 1 &&    
-             value[0] == selectedIndices[0]))
-        {
-            // this should short-circuit, but we should check to make sure 
-            // that caret doesn't need to be changed either, as that's a side
-            // effect of setting selectedIndex
-            if (changeCaret)
-                setCurrentCaretIndex(selectedIndex);
-            
-            return;
-        }
-        
-        if (dispatchChangeEvent)
-            dispatchChangeAfterSelection = (dispatchChangeAfterSelection || dispatchChangeEvent);
-        
-        if (value)
-            _proposedSelectedIndices = value;
-        else
-            _proposedSelectedIndices = new Vector.<int>();
-        multipleSelectionChanged = true;
-        changeCaretOnSelection = changeCaret;
-        invalidateProperties();
-    } */
+        //// TODO (jszeto) Do a deep compare of the vectors
+        //if (_proposedSelectedIndices == value || 
+            //(value && value.length == 1 && 
+             //selectedIndices && selectedIndices.length == 1 &&    
+             //value[0] == selectedIndices[0]))
+        //{
+            //// this should short-circuit, but we should check to make sure 
+            //// that caret doesn't need to be changed either, as that's a side
+            //// effect of setting selectedIndex
+            //if (changeCaret)
+                //setCurrentCaretIndex(selectedIndex);
+            //
+            //return;
+        //}
+        //
+        //if (dispatchChangeEvent)
+            //dispatchChangeAfterSelection = (dispatchChangeAfterSelection || dispatchChangeEvent);
+        //
+        //if (value)
+            //_proposedSelectedIndices = value;
+        //else
+            //_proposedSelectedIndices = new Vector.<int>();
+        //multipleSelectionChanged = true;
+        //changeCaretOnSelection = changeCaret;
+        //invalidateProperties();
+    }
     
     //----------------------------------
     //  selectedItems
@@ -1059,36 +1060,37 @@ public class List extends ListBase implements IFocusManagerComponent
     /**
      *  @private
      */
-    /* public function set selectedItems(value:Vector.<Object>):void
+    // not implemented
+    public function set selectedItems(value:Vector.<Object>):void
     {
-        var indices:Vector.<int> = new Vector.<int>();
-        
-        if (value)
-        {
-            var count:int = value.length;
-            
-            for (var i:int = 0; i < count; i++)
-            {
-                var index:int = dataProvider.getItemIndex(value[i]);
-                if (index != -1)
-                { 
-                    indices.splice(0, 0, index);   
-                }
-                // If an invalid item is in the selectedItems vector,
-                // we set selectedItems to an empty vector, which 
-                // essentially clears selection. 
-                if (index == -1)
-                {
-                    indices = new Vector.<int>();
-                    break;  
-                }
-            }
-        }
-        
-        _proposedSelectedIndices = indices;
-        multipleSelectionChanged = true;
-        invalidateProperties(); 
-    } */
+        //var indices:Vector.<int> = new Vector.<int>();
+        //
+        //if (value)
+        //{
+            //var count:int = value.length;
+            //
+            //for (var i:int = 0; i < count; i++)
+            //{
+                //var index:int = dataProvider.getItemIndex(value[i]);
+                //if (index != -1)
+                //{ 
+                    //indices.splice(0, 0, index);   
+                //}
+                //// If an invalid item is in the selectedItems vector,
+                //// we set selectedItems to an empty vector, which 
+                //// essentially clears selection. 
+                //if (index == -1)
+                //{
+                    //indices = new Vector.<int>();
+                    //break;  
+                //}
+            //}
+        //}
+        //
+        //_proposedSelectedIndices = indices;
+        //multipleSelectionChanged = true;
+        //invalidateProperties(); 
+    }
 
     //----------------------------------
     //  pageScrollingEnabled
@@ -2195,28 +2197,29 @@ public class List extends ListBase implements IFocusManagerComponent
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    /* public function destroyDropIndicator():DisplayObject
+    public function destroyDropIndicator():UIComponent // not implemented
     {
-        var dropIndicatorInstance:DisplayObject = layout.dropIndicator;
-        if (!dropIndicatorInstance)
-            return null;
-        
-        // Release the reference from the layout
-        layout.dropIndicator = null;
-        
-        // Release it if it's a dynamic skin part
-        var count:int = numDynamicParts("dropIndicator");
-        for (var i:int = 0; i < count; i++)
-        {
-            if (dropIndicatorInstance == getDynamicPartAt("dropIndicator", i))
-            {
-                // This was a dynamic part, remove it now:
-                removeDynamicPartInstance("dropIndicator", dropIndicatorInstance);
-                break;
-            }
-        }
-        return dropIndicatorInstance;
-    } */
+        //var dropIndicatorInstance:DisplayObject = layout.dropIndicator;
+        //if (!dropIndicatorInstance)
+            //return null;
+        //
+        //// Release the reference from the layout
+        //layout.dropIndicator = null;
+        //
+        //// Release it if it's a dynamic skin part
+        //var count:int = numDynamicParts("dropIndicator");
+        //for (var i:int = 0; i < count; i++)
+        //{
+            //if (dropIndicatorInstance == getDynamicPartAt("dropIndicator", i))
+            //{
+                //// This was a dynamic part, remove it now:
+                //removeDynamicPartInstance("dropIndicator", dropIndicatorInstance);
+                //break;
+            //}
+        //}
+        //return dropIndicatorInstance;
+	    return null;
+    }
     
     /**
      *  @private
@@ -2236,35 +2239,35 @@ public class List extends ListBase implements IFocusManagerComponent
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    /* protected function dragEnterHandler(event:DragEvent):void
+    protected function dragEnterHandler(event:DragEvent):void // not implemented
     {
-        if (event.isDefaultPrevented())
-            return;
-        
-        var dropLocation:DropLocation = calculateDropLocation(event); 
-        if (dropLocation)
-        {
-            DragManager.acceptDragDrop(this);
-            
-            // Create the dropIndicator instance. The layout will take care of
-            // parenting, sizing, positioning and validating the dropIndicator.
-            createDropIndicator();
-            
-            // Show focus
-            drawFocusAnyway = true;
-            drawFocus(true);
-            
-            // Notify manager we can drop
-            DragManager.showFeedback(event.ctrlKey ? DragManager.COPY : DragManager.MOVE);
-
-            // Show drop indicator
-            layout.showDropIndicator(dropLocation);
-        }
-        else
-        {
-            DragManager.showFeedback(DragManager.NONE);
-        }
-    } */
+        //if (event.isDefaultPrevented())
+            //return;
+        //
+        //var dropLocation:DropLocation = calculateDropLocation(event); 
+        //if (dropLocation)
+        //{
+            //DragManager.acceptDragDrop(this);
+            //
+            //// Create the dropIndicator instance. The layout will take care of
+            //// parenting, sizing, positioning and validating the dropIndicator.
+            //createDropIndicator();
+            //
+            //// Show focus
+            //drawFocusAnyway = true;
+            //drawFocus(true);
+            //
+            //// Notify manager we can drop
+            //DragManager.showFeedback(event.ctrlKey ? DragManager.COPY : DragManager.MOVE);
+//
+            //// Show drop indicator
+            //layout.showDropIndicator(dropLocation);
+        //}
+        //else
+        //{
+            //DragManager.showFeedback(DragManager.NONE);
+        //}
+    }
     
     /**
      *  @private
@@ -2284,37 +2287,37 @@ public class List extends ListBase implements IFocusManagerComponent
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    /* protected function dragOverHandler(event:DragEvent):void
+    protected function dragOverHandler(event:DragEvent):void // not implemented
     {
-        if (event.isDefaultPrevented())
-            return;
-        
-        var dropLocation:DropLocation = calculateDropLocation(event);
-        if (dropLocation)
-        {
-            // Show focus
-            drawFocusAnyway = true;
-            drawFocus(true);
-            
-            // Notify manager we can drop
-            DragManager.showFeedback(event.ctrlKey ? DragManager.COPY : DragManager.MOVE);
-
-            // Show drop indicator
-            layout.showDropIndicator(dropLocation);
-        }
-        else
-        {
-            // Hide if previously showing
-            layout.hideDropIndicator();
-
-            // Hide focus
-            drawFocus(false);
-            drawFocusAnyway = false;
-            
-            // Notify manager we can't drop
-            DragManager.showFeedback(DragManager.NONE);
-        }
-    } */
+        //if (event.isDefaultPrevented())
+            //return;
+        //
+        //var dropLocation:DropLocation = calculateDropLocation(event);
+        //if (dropLocation)
+        //{
+            //// Show focus
+            //drawFocusAnyway = true;
+            //drawFocus(true);
+            //
+            //// Notify manager we can drop
+            //DragManager.showFeedback(event.ctrlKey ? DragManager.COPY : DragManager.MOVE);
+//
+            //// Show drop indicator
+            //layout.showDropIndicator(dropLocation);
+        //}
+        //else
+        //{
+            //// Hide if previously showing
+            //layout.hideDropIndicator();
+//
+            //// Hide focus
+            //drawFocus(false);
+            //drawFocusAnyway = false;
+            //
+            //// Notify manager we can't drop
+            //DragManager.showFeedback(DragManager.NONE);
+        //}
+    }
     
     /**
      *  @private
@@ -2387,113 +2390,113 @@ public class List extends ListBase implements IFocusManagerComponent
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    /* protected function dragDropHandler(event:DragEvent):void
+    protected function dragDropHandler(event:DragEvent):void // not implemented
     {
-        if (event.isDefaultPrevented())
-            return;
-        
-        // Hide the drop indicator
-        layout.hideDropIndicator();
-        destroyDropIndicator();
-        
-        // Hide focus
-        drawFocus(false);
-        drawFocusAnyway = false;
-        
-        // Get the dropLocation
-        var dropLocation:DropLocation = calculateDropLocation(event);
-        if (!dropLocation)
-            return;
-        
-        // Find the dropIndex
-        var dropIndex:int = dropLocation.dropIndex;
-        
-        // Make sure the manager has the appropriate action
-        DragManager.showFeedback(event.ctrlKey ? DragManager.COPY : DragManager.MOVE);
-        
-        var dragSource:DragSource = event.dragSource;
-        var items:Vector.<Object> = dragSource.dataForFormat("itemsByIndex") as Vector.<Object>;
-
-        var caretIndex:int = -1;
-        if (dragSource.hasFormat("caretIndex"))
-            caretIndex = event.dragSource.dataForFormat("caretIndex") as int;
-        
-        // Clear the selection first to avoid extra work while adding and removing items.
-        // We will set a new selection further below in the method.
-        var indices:Vector.<int> = selectedIndices; 
-        setSelectedIndices(new Vector.<int>(), false);
-        validateProperties(); // To commit the selection
-        
-        // If we are reordering the list, remove the items now,
-        // adjusting the dropIndex in the mean time.
-        // If the items are drag moved to this list from a different list,
-        // the drag initiator will remove the items when it receives the
-        // DragEvent.DRAG_COMPLETE event.
-        if (dragMoveEnabled &&
-            event.action == DragManager.MOVE &&
-            event.dragInitiator == this)
-        {
-            // Remove the previously selected items
-            indices.sort(compareValues);
-            for (var i:int = indices.length - 1; i >= 0; i--)
-            {
-                if (indices[i] < dropIndex)
-                    dropIndex--;
-                dataProvider.removeItemAt(indices[i]);
-            }
-        }
-        
-        // Drop the items at the dropIndex
-        var newSelection:Vector.<int> = new Vector.<int>();
-
-        // Update the selection with the index of the caret item
-        if (caretIndex != -1)
-            newSelection.push(dropIndex + caretIndex);
-
-        // Create dataProvider if needed
-        if (!dataProvider)
-            dataProvider = new ArrayCollection();
-        
-        var copyItems:Boolean = (event.action == DragManager.COPY);
-        for (i = 0; i < items.length; i++)
-        {
-            // Get the item, clone if needed
-            var item:Object = items[i];
-            if (copyItems)
-                item = copyItemWithUID(item);
-
-            // Copy the data
-            dataProvider.addItemAt(item, dropIndex + i);
-
-            // Update the selection
-            if (i != caretIndex)
-                newSelection.push(dropIndex + i);
-        }
-
-        // Set the selection
-        setSelectedIndices(newSelection, false);
-
-        // Scroll the caret index in view
-        if (caretIndex != -1)
-        {
-            // Sometimes we may need to scroll several times as for virtual layouts
-            // this is not guaranteed to bring in the element in view the first try
-            // as some items in between may not be loaded yet and their size is only
-            // estimated.
-            var delta:Point;
-            var loopCount:int = 0;
-            while (loopCount++ < 10)
-            {
-                validateNow();
-                delta = layout.getScrollPositionDeltaToElement(dropIndex + caretIndex);
-                if (!delta || (delta.x == 0 && delta.y == 0))
-                    break;
-                layout.horizontalScrollPosition += delta.x;
-                layout.verticalScrollPosition += delta.y;
-            }
-        }
+        //if (event.isDefaultPrevented())
+            //return;
+        //
+        //// Hide the drop indicator
+        //layout.hideDropIndicator();
+        //destroyDropIndicator();
+        //
+        //// Hide focus
+        //drawFocus(false);
+        //drawFocusAnyway = false;
+        //
+        //// Get the dropLocation
+        //var dropLocation:DropLocation = calculateDropLocation(event);
+        //if (!dropLocation)
+            //return;
+        //
+        //// Find the dropIndex
+        //var dropIndex:int = dropLocation.dropIndex;
+        //
+        //// Make sure the manager has the appropriate action
+        //DragManager.showFeedback(event.ctrlKey ? DragManager.COPY : DragManager.MOVE);
+        //
+        //var dragSource:DragSource = event.dragSource;
+        //var items:Vector.<Object> = dragSource.dataForFormat("itemsByIndex") as Vector.<Object>;
+//
+        //var caretIndex:int = -1;
+        //if (dragSource.hasFormat("caretIndex"))
+            //caretIndex = event.dragSource.dataForFormat("caretIndex") as int;
+        //
+        //// Clear the selection first to avoid extra work while adding and removing items.
+        //// We will set a new selection further below in the method.
+        //var indices:Vector.<int> = selectedIndices; 
+        //setSelectedIndices(new Vector.<int>(), false);
+        //validateProperties(); // To commit the selection
+        //
+        //// If we are reordering the list, remove the items now,
+        //// adjusting the dropIndex in the mean time.
+        //// If the items are drag moved to this list from a different list,
+        //// the drag initiator will remove the items when it receives the
+        //// DragEvent.DRAG_COMPLETE event.
+        //if (dragMoveEnabled &&
+            //event.action == DragManager.MOVE &&
+            //event.dragInitiator == this)
+        //{
+            //// Remove the previously selected items
+            //indices.sort(compareValues);
+            //for (var i:int = indices.length - 1; i >= 0; i--)
+            //{
+                //if (indices[i] < dropIndex)
+                    //dropIndex--;
+                //dataProvider.removeItemAt(indices[i]);
+            //}
+        //}
+        //
+        //// Drop the items at the dropIndex
+        //var newSelection:Vector.<int> = new Vector.<int>();
+//
+        //// Update the selection with the index of the caret item
+        //if (caretIndex != -1)
+            //newSelection.push(dropIndex + caretIndex);
+//
+        //// Create dataProvider if needed
+        //if (!dataProvider)
+            //dataProvider = new ArrayCollection();
+        //
+        //var copyItems:Boolean = (event.action == DragManager.COPY);
+        //for (i = 0; i < items.length; i++)
+        //{
+            //// Get the item, clone if needed
+            //var item:Object = items[i];
+            //if (copyItems)
+                //item = copyItemWithUID(item);
+//
+            //// Copy the data
+            //dataProvider.addItemAt(item, dropIndex + i);
+//
+            //// Update the selection
+            //if (i != caretIndex)
+                //newSelection.push(dropIndex + i);
+        //}
+//
+        //// Set the selection
+        //setSelectedIndices(newSelection, false);
+//
+        //// Scroll the caret index in view
+        //if (caretIndex != -1)
+        //{
+            //// Sometimes we may need to scroll several times as for virtual layouts
+            //// this is not guaranteed to bring in the element in view the first try
+            //// as some items in between may not be loaded yet and their size is only
+            //// estimated.
+            //var delta:Point;
+            //var loopCount:int = 0;
+            //while (loopCount++ < 10)
+            //{
+                //validateNow();
+                //delta = layout.getScrollPositionDeltaToElement(dropIndex + caretIndex);
+                //if (!delta || (delta.x == 0 && delta.y == 0))
+                    //break;
+                //layout.horizontalScrollPosition += delta.x;
+                //layout.verticalScrollPosition += delta.y;
+            //}
+        //}
     }
-	*/
+
     /**
      *  Makes a deep copy of the object by calling the 
      *  <code>ObjectUtil.copy()</code> method, and replaces 
diff --git a/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/supportClasses/LayoutBase.as b/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/supportClasses/LayoutBase.as
index 863e91d..33b92f5 100644
--- a/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/supportClasses/LayoutBase.as
+++ b/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/supportClasses/LayoutBase.as
@@ -29,9 +29,11 @@ import mx.core.ILayoutElement;
 import mx.core.IVisualElement;
 import mx.core.UIComponent;
 import mx.core.mx_internal;
+import mx.events.DragEvent;
 
 import spark.components.Group;
 import spark.components.supportClasses.GroupBase;
+import spark.layouts.supportClasses.DropLocation;
 import spark.core.NavigationUnit;
 import spark.layouts.HorizontalAlign;
 import spark.layouts.VerticalLayout;
@@ -1731,22 +1733,24 @@ public class LayoutBase extends org.apache.royale.core.LayoutBase implements IEv
      *  @playerversion Flash 10
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
-    public function calculateDropLocation(dragEvent:DragEvent):DropLocation
+     *
+     */
+    public function calculateDropLocation(dragEvent:DragEvent):DropLocation // not implemented
     {
         // Find the drop index
-        var dropPoint:Point = globalToLocal(dragEvent.stageX, dragEvent.stageY);
-        var dropIndex:int = calculateDropIndex(dropPoint.x, dropPoint.y);
-        if (dropIndex == -1)
-            return null;
-        
-        // Create and fill the drop location info
         var dropLocation:DropLocation = new DropLocation();
-        dropLocation.dragEvent = dragEvent;
-        dropLocation.dropPoint = dropPoint;
-        dropLocation.dropIndex = dropIndex;
+        //var dropPoint:Point = globalToLocal(dragEvent.stageX, dragEvent.stageY);
+        //var dropIndex:int = calculateDropIndex(dropPoint.x, dropPoint.y);
+        //if (dropIndex == -1)
+            //return null;
+        //
+        //// Create and fill the drop location info
+        //dropLocation.dragEvent = dragEvent;
+        //dropLocation.dropPoint = dropPoint;
+        //dropLocation.dropIndex = dropIndex;
         return dropLocation;
     }
-     */
+     
     
     /**
      *  Sizes, positions and parents the drop indicator based on the specified