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 2019/12/03 09:15:33 UTC
[royale-asjs] branch develop updated: MultiSelection drag & drop -
require selection for drag
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
The following commit(s) were added to refs/heads/develop by this push:
new e36c42c MultiSelection drag & drop - require selection for drag
new b54886c Merge branch 'develop' of https://github.com/apache/royale-asjs into develop
e36c42c is described below
commit e36c42c471e0eda0d0c58e42c01836d93f51bd0a
Author: DESKTOP-RH4S838\Yishay <yi...@hotmail.com>
AuthorDate: Tue Dec 3 11:14:59 2019 +0200
MultiSelection drag & drop - require selection for drag
---
.../apache/royale/html/beads/MultiSelectionDragImageBead.as | 12 ++++++++++--
.../apache/royale/html/beads/MultiSelectionDragSourceBead.as | 6 +++++-
2 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragImageBead.as b/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragImageBead.as
index 94a2730..0fb795f 100644
--- a/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragImageBead.as
+++ b/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragImageBead.as
@@ -122,7 +122,7 @@ package org.apache.royale.html.beads
dragImage.addBead(new HorizontalLayout())
}
var itemRendererParent:IItemRendererParent = (_strand.getBeadByType(IBeadView) as IListView).dataGroup as IItemRendererParent;
- var selectedIndices:Array = (_strand.getBeadByType(IMultiSelectionModel) as IMultiSelectionModel).selectedIndices;
+ var selectedIndices:Array = getSelectedIndices();
for (var i:int = 0; i < selectedIndices.length; i++)
{
var ir:IItemRenderer = itemRendererParent.getItemRendererForIndex(selectedIndices[i]);
@@ -141,13 +141,21 @@ package org.apache.royale.html.beads
return dragImage;
}
+ private function getSelectedIndices():Array
+ {
+ return (_strand.getBeadByType(IMultiSelectionModel) as IMultiSelectionModel).selectedIndices;
+ }
+
/**
* @private
*
*/
private function handleDragStart(event:DragEvent):void
{
- DragMouseController.dragImage = createDragImage();
+ if (getSelectedIndices())
+ {
+ DragMouseController.dragImage = createDragImage();
+ }
}
}
}
diff --git a/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragSourceBead.as b/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragSourceBead.as
index ab40159..d7c8929 100644
--- a/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragSourceBead.as
+++ b/frameworks/projects/DragDrop/src/main/royale/org/apache/royale/html/beads/MultiSelectionDragSourceBead.as
@@ -173,11 +173,15 @@ package org.apache.royale.html.beads
{
//trace("MultiSelectionDragSourceBead received the DragStart");
+ var dataProviderModel:IMultiSelectionModel = _strand.getBeadByType(IMultiSelectionModel) as IMultiSelectionModel;
+ if (!dataProviderModel.selectedItems)
+ {
+ return;
+ }
DragEvent.dragInitiator = this;
DragMouseController.dragImageOffsetX = 0;
DragMouseController.dragImageOffsetY = -30;
- var dataProviderModel:IMultiSelectionModel = _strand.getBeadByType(IMultiSelectionModel) as IMultiSelectionModel;
DragEvent.dragSource = dataProviderModel.selectedItems;
var newEvent:Event = new Event("start", false, true);