Very close to what I need...How to change the image if I click back on the same item. The idea is that I want to permit no selection in the list.
Thanks --- In flexcoders@yahoogroups.com, Niklas Richardson <[EMAIL PROTECTED]> wrote: > Hi Guys, > > I started going down the same root as Philippe, but I think using the > isSelected and setPropertiesAt might be a bit cleaner. Here's the > code below. You can also see it in action here: > > http://flexdemos.prismix.com/samples/blog_examples/listIcons.mxml? versionChecked=true > > The only downside I see is that you need to loop through all items in the list. > > <?xml version="1.0" encoding="utf-8"?> > <mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" > width="250" height="425"> > > <mx:Script> > <![CDATA[ > [Embed(source="assets/icons/small/add.png")] > var activeIcon:String; > [Embed(source="assets/icons/small/delete.png")] > var inActiveIcon:String; > > function toggleIcons(event) > { > var listControl = event.target; > var activeObject = {icon: activeIcon}; > var inActiveObject = {icon: inActiveIcon}; > > // Reset Icons > for (var i in listControl.dataProvider) > { > if (listControl.isSelected(i)) > listControl.setPropertiesAt (i, activeObject); > else > listControl.setPropertiesAt (i, inActiveObject); > } > } > ]]> > </mx:Script> > > <mx:Text text="Single Selection" /> > > <mx:List id="theList" width="200" change="toggleIcons(event)" > creationComplete="toggleIcons(event)"> > <mx:dataProvider> > <mx:Array> > <mx:Object label="Item 1" icon="{inActiveIcon}" /> > <mx:Object label="Item 2" icon="{inActiveIcon}" /> > <mx:Object label="Item 3" icon="{inActiveIcon}" /> > <mx:Object label="Item 4" icon="{inActiveIcon}" /> > </mx:Array> > </mx:dataProvider> > </mx:List> > > <mx:Text text="Multiple Selection" /> > > <mx:List id="theOtherList" width="200" change="toggleIcons (event)" > multipleSelection="true" creationComplete="toggleIcons(event)"> > <mx:dataProvider> > <mx:Array> > <mx:Object label="Item 1" icon="{inActiveIcon}" /> > <mx:Object label="Item 2" icon="{inActiveIcon}" /> > <mx:Object label="Item 3" icon="{inActiveIcon}" /> > <mx:Object label="Item 4" icon="{inActiveIcon}" /> > </mx:Array> > </mx:dataProvider> > </mx:List> > > </mx:Application> > > Cheers > > Niklas > > > On 10/08/05, Philippe Maegerman <[EMAIL PROTECTED]> wrote: > > > > I have something working, there might be a simplier solution but that's all > > I have (see attachment) ;)) > > > > <?xml version="1.0" encoding="utf-8"?> > > <mx:Application > > xmlns:mx="http://www.macromedia.com/2003/mxml"> > > <mx:Script> > > [Embed(source="icon.gif")] > > var myIcon:String; > > //reference to list selectedIndex > > var currentItem; > > function setSelectedIcon(event){ > > var myList = event.target; > > if(currentItem!=undefined){ > > //remove the icon on the previous selected item in the list dataProvider > > myList.dataProvider[currentItem].icon = null; > > } > > //set currentItem to new index > > currentItem = myList.selectedIndex; > > //update the icon property for the current item in the list dataProvider > > myList.dataProvider[myList.selectedIndex].icon = myIcon; > > //trick to redraw the list and reselect index > > myList.dataProvider = myList.dataProvider; > > myList.selectedIndex = currentItem; > > > > } > > </mx:Script> > > <mx:Model id="myModel"> > > <item icon="" label="item1"/> > > <item icon="" label="item2"/> > > </mx:Model> > > <mx:List dataProvider="{myModel.item}" > > change="setSelectedIcon(event)"/> > > </mx:Application> > > > > Philippe Maegerman > > Web developer > > ________________________________ > > From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On > > Behalf Of Brooks Andrus > > Sent: mercredi 10 août 2005 10:34 > > To: flexcoders@yahoogroups.com > > Subject: RE: [flexcoders] Re: selectedItem in a list shows an icon > > > > > > > > > > > > Does the list component in Flex not have setPropertiesAt() ? This method of > > the list takes two arguments: > > > > > > 1) the index of the row in the list you want to modify (listen for a > > change event and then check the selectedIndex property of the list). > > > > 2) a style object which allows 2 properties of the row in question to > > be set-the backgroundColor (hex value) and an icon (in Flash the icon > > properties value would be equivalent to the linkage id of a MovieClip in the > > library you wished to use as an icon). > > > > > > > > I hope this helps-I'm a Flash guy who lurks on the flexcoders list in a lame > > attempt to keep abreast of the technology. > > > > > > > > Regards, > > > > > > > > Brooks > > > > > > ________________________________ > > > > > > From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On > > Behalf Of Ghislain Simard > > Sent: Tuesday, August 09, 2005 10:06 PM > > To: flexcoders@yahoogroups.com > > Subject: [flexcoders] Re: selectedItem in a list shows an icon > > > > > > > > Is there an example you can show me...I'm not quite sure to > > understand what you proposed. > > Thanks > > > > --- In flexcoders@yahoogroups.com, "JesterXL" <[EMAIL PROTECTED]> wrote: > > > Use a custom cellRenderer that shows an icon when the 3rd > > parameter to the > > > setValue function is "selected". > > > > > > ----- Original Message ----- > > > From: "Ghislain Simard" <[EMAIL PROTECTED]> > > > To: <flexcoders@yahoogroups.com> > > > Sent: Tuesday, August 09, 2005 11:03 PM > > > Subject: [flexcoders] selectedItem in a list shows an icon > > > > > > > > > HI, > > > How can we get a list and once an item is selected we see an icon > > > appearing beside that selectedItem? > > > > > > thanks > > > > > > > > > > > > > > > > > > -- > > > Flexcoders Mailing List > > > FAQ: > > http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt > > > Search Archives: http://www.mail-archive.com/flexcoders% > > 40yahoogroups.com > > > Yahoo! Groups Links > > > > > > > > > > > > -- > > Flexcoders Mailing List > > FAQ: > > http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt > > Search Archives: > > http://www.mail-archive.com/flexcoders%40yahoogroups.com > > > > > > > > ________________________________ > > YAHOO! GROUPS LINKS > > > > > > Visit your group "flexcoders" on the web. > > > > To unsubscribe from this group, send an email to: > > [EMAIL PROTECTED] > > > > Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service. > > > > ________________________________ > > > > > > ----------------------------------------------------------------- - > > **STATEMENT OF CONFIDENTIALITY** > > > > This e-mail and any attached files are confidential and intended solely for > > the use of the individual to whom it is addressed. If you have received this > > email in error please send it back to the person that sent it to you. Any > > views or opinions presented are solely those of author and do not > > necessarily represent those the Emakina Company. Unauthorized publication, > > use, dissemination, forwarding, printing or copying of this email and its > > associated attachments is strictly prohibited. > > > > We also inform you that we have checked that this message does not contain > > any virus but we decline any responsability in case of any damage caused by > > an a non detected virus. > > ----------------------------------------------------------------- - > > > > > -- > Niklas Richardson > Prismix Ltd > > Flex and ColdFusion Experts! ------------------------ Yahoo! Groups Sponsor --------------------~--> <font face=arial size=-1><a href="http://us.ard.yahoo.com/SIG=12hq20std/M=362335.6886445.7839731.1510227/D=groups/S=1705007207:TM/Y=YAHOO/EXP=1123691471/A=2894361/R=0/SIG=13jmebhbo/*http://www.networkforgood.org/topics/education/digitaldivide/?source=YAHOO&cmpgn=GRP&RTP=http://groups.yahoo.com/">In low income neighborhoods, 84% do not own computers. At Network for Good, help bridge the Digital Divide!</a>.</font> --------------------------------------------------------------------~-> -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/