Actually, the problem that you are seeing is due to this bug which we
have fixed in Moxie:

https://bugs.adobe.com/jira/browse/SDK-9646

 

The default drag and drop for Lists didn't give unique UUIDs to each
copy, therefore, if you copied the same item twice, you couldn't select
one of them. I don't know of a workaround, but, you can certainly grab
one our Flex SDK nightly builds (after 180107) and look at the code in
ListBase.as which was changed. Here is the Flex changelist from when
this was fixed:

 

Change 180107 by [EMAIL PROTECTED] on 2007/08/20 17:31:13

 

      Flex Bug Fix

      

      SDK-9646 our d&d COPY functionality in the controls is incorrect
or incomplete at best

      

      Previously, we were not making a copy of the source item and
putting it into the destination source. Now, we make a deep copy using
ObjectUtil.copy and we generate a new UID (if the source implements
IUID) or a new mx_internal_uid (if it has one already) value using
UID.createUID.

      

      Bugs: SDK-9646

      QA: Yes! Please test drag and drop w/ both Move and Copy. 

      Doc: Yes, I've added new text to dragDropHandler that describes
the default COPY algorithm. 

      

Affected files ...

 

...
//depot/flex/sdk/frameworks/projects/framework/src/mx/controls/listClass
es/ListBase.as#54 edit

 

Again, all of this information is available on labs.adobe.com.

 

Thanks,

Joan

 

________________________________

From: [email protected] [mailto:[EMAIL PROTECTED] On
Behalf Of roller_27
Sent: Tuesday, September 11, 2007 9:35 AM
To: [email protected]
Subject: [flexcoders] tileList issue if the same item is dropped twice
or more

 

Hi folks
This is quite frustrating. I posted on Adobes Flex Support Forum and 
got no replys.. not encouraging.
I'm using two tilelists and you can drag items from one to the other. 

If you drag an item more than once then when you rollover that item 
it highlights the second(or most recent) version of the item you 
dragged.

Basically the second tile list is containing exact copies of the 
first, so that when you rollover an item it is behaving as if only 
the most recent addition to the component is there.

Here is the code.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml
<http://www.adobe.com/2006/mxml> " 
layout="absolute" width="560" height="341">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;

[Bindable]
private var listArray:Array=[
{label: "item0", data: 0},{label: "item1", data: 1},
{label: "item2", data: 2},{label: "item3", data: 3},
{label: "item4", data: 4},{label: "item5", data: 5},
{label: "item6", data: 6},{label: "item7", data: 7}];

[Bindable]
public var cartFilterCol:ArrayCollection ;
]]>
</mx:Script>
<mx:Canvas width="568" height="340">
<mx:TileList 
id="filterTilelist"
direction="vertical"
dataProvider="{listArray}"
itemRenderer="mx.controls.Button"
allowMultipleSelection="false" 
dragEnabled="true" 
width="219" 
borderStyle="inset" height="228" x="48" y="36">
</mx:TileList>

<mx:TileList backgroundColor="#ffffff"
dataProvider="{cartFilterCol}"
dropEnabled="true"
allowMultipleSelection="false" 
dragMoveEnabled="true" 
dragEnabled="true"
borderStyle="inset" 
columnCount="1" 
height="228" width="194" x="275" y="36">
</mx:TileList>
</mx:Canvas>
</mx:Application>

I think this is the issue here
https://bugs.adobe.com/jira/browse/SDK-11894
<https://bugs.adobe.com/jira/browse/SDK-11894> 

It seems to suggest that this issue is resolved but it doesn't go 
into details. Can anybody help me, even an ugly hack would do? Have 
tried several things like manually setting the mx_internal_uid on 
object beign dragged before it is dropped but no luck so far. I'm 
using Flex builder 2.0.1.

Thanks
Rob

 

Reply via email to