when are you expecting to see the event tiggered. I don't see anywhere it
would be triggered in this code.

On Thu, Aug 19, 2010 at 12:40 AM, Alexander <[email protected]>wrote:

>
>
>
> Hello,
>
> I have 2 problems with my custom component (code below), which works ok
> otherwise. It represents a list of games, with up to 3 players. I feed it
> with XML data being pulled from server:
>
> <game id="42">
> <user .....>
> <user .....>
> <user .....>
> </game>
> <game id="47">
> <user .....>
> </game>
> <game id="56">
> </game>
>
> I'd like to display summary at the top of my component - how many games are
> there in total, how many are full (with 3 users) and how many are vacant aka
> free (less than 3 users). Unfortunately:
>
> 1) the CollectionEvent is not fired for some reason. I have to call
> xlistChanged(null) - to at least test the 2)
>
> 2) When I call xlistChanged(null), the _full and _free are calculated wrong
> and both contain the string "Full/Free 0". I probably call e4x in a wrong
> way?
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml";
> width="100%" height="100%" xmlns:my="*"
> verticalScrollPolicy="off" horizontalScrollPolicy="off">
>
> <mx:Script>
> <![CDATA[
> import mx.collections.*;
> import mx.events.*;
>
> [Bindable]
> private var _xlist:XMLListCollection;
>
> public function set xlist(x:XMLList):void {
> _xlist = new XMLListCollection(x);
> _xlist.addEventListener(CollectionEvent.COLLECTION_CHANGE, xlistChanged);
>
> xlistChanged(null);
> }
>
> private function xlistChanged(event:CollectionEvent):void {
> _all.label = 'All (' + _xlist.length + ')';
>
> var full:XMLList = _xlist.source.game.(user.length() == 3);
> _full.label = 'Full (' + full.length() + ')';
>
> var free:XMLList = _xlist.source.game.(user.length() < 3);
> _free.label = 'Free (' + free.length() + ')';
> }
> ]]>
> </mx:Script>
>
> <mx:HBox width="100%">
> <mx:Label text="Playing tables:"/>
> <mx:RadioButton groupName="_type" id="_free"/>
> <mx:RadioButton groupName="_type" id="_full"/>
> <mx:RadioButton groupName="_type" id="_all"/>
> </mx:HBox>
> <mx:List width="100%" height="100%"
> dataProvider="{_xlist}" itemRenderer="Game"/>
> </mx:VBox>
>
> Thank you
> Alex
>
>  
>

Reply via email to