[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?

2007-04-13 Thread bhaq1972
sorry i didn't respond to your reply..slipped thru.

continuing from Alex, and having a closer look at your original 
post ..flexcoders is so busy and sometimes i just look at the 
title and give an answer...i'll be a good boy and read the question 
properly next time.

what you actually want is to use the TileList.indexToItemRenderer() 
function. that gives u a reference to the itemrenderer

eg.

myTiles.indexToItemRenderer(1)[testFunction]();
//or
TestComonent(myTiles.indexToItemRenderer(1)).testFunction();
//or
var object1:TestComponent = myTiles.indexToItemRenderer(1) as 
TestComponent;
object1.testFunction(); 


regards
Bod

--- In [EMAIL PROTECTED], Alex Harui [EMAIL PROTECTED] wrote:

 Erin,
  
 It looks like your array:
 var arrTest:Array = [1,2,3,4];
 just contains numbers.
  
 IList(myTiles.dataProvider).getItemAt(1) should return 2;
  
 2 is just a number so you it doesn't have a testFunction
  
 Did you intend to pass 2 into testFunction?
  
 That would be:
 testFunction(IList(myTiles.dataProvider).getItemAt(1));
  
 One good way to debug this is to start storing parts of the 
expression
 in temporary variables.
  
 -Alex
 
 
 
 From: [EMAIL PROTECTED] 
[mailto:[EMAIL PROTECTED] On
 Behalf Of erinwyher
 Sent: Thursday, April 12, 2007 10:41 AM
 To: [EMAIL PROTECTED]
 Subject: [flexcoders] Re: Tilelist in Flex 2 - what to use instead 
of
 getItemAt()?
 
 
 
 Thanks for the suggestion. My new error is: value is not a 
function.
 This comes up on this new line:
 
 IList(myTiles.dataProvider).getItemAt(1).testFunction();
 
 -Erin
 
 --- In [EMAIL PROTECTED] mailto:flexcoders%
40yahoogroups.com
 , craig.drabik craig.drabik@
 wrote:
 
  Try using an ArrayCollection for your data provider instead of a
  simple array. 
  
  --- In [EMAIL PROTECTED]
 mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ 
wrote:
  
   Thanks for the suggestion, but it doesn't work :(. Do you need 
the
   latest version of Flex 2 for that to work? I didn't install the
 latest
   upgrade (2.1 I believe).
   
   When I tried it, I got the following error.
   
   TypeError: Error #1006: value is not a function.
   at test/clickedList()
   at test/___Button1_click()
   
   Also, in the debugger, IList(myTiles.dataProvider) cannot be
 evaluated,
   and neither can IList(myTiles.dataProvider).getItemAt
(any_number)
   
   Any more ideas? I really need help with this and I appreciate 
any
   suggestions! Thank you.
   
   -Erin
   
   --- In [EMAIL PROTECTED]
 mailto:flexcoders%40yahoogroups.com , bhaq1972 mbhaque@ 
wrote:
   
the getItemAt() function is available but not like the flex 
1.5
 way.
   
you can do the following
   
import mx.collections.IList;
   
public function clickedList():void {
//myTiles.getItemAt(1).testFunction();
IList(myTiles.dataProvider).getItemAt(1).testFunction();
etc
   
   
   
--- In [EMAIL PROTECTED]
 mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ 
wrote:

 In Flex 1.5, you use getItemAt() to call functions from the
children
 of the TileList, but that method no longer exists in F2. 
Any
 suggestions to do this?

 Here is some sample code:

 test.mxml:
 ?xml version=1.0 encoding=utf-8?
 mx:Application
 xmlns:mx=http://www.adobe.com/2006/mxml
 http://www.adobe.com/2006/mxml 
 xmlns:view=view.*
 layout=absolute
 creationComplete=doInit()
 mx:Script
 ![CDATA[
 public var arrTest:Array;

 public function doInit():void {
 arrTest = [1,2,3,4];
 myTiles.dataProvider = arrTest;
 }
 public function clickedList():void {
 //myTiles.getItemAt(1).testFunction
();
 //I want to call a function here for
a specific set of tiles...
 how do I do that without getItemAt?
 //Note: getChildAt does not work
either
 }
 ]]
 /mx:Script
 mx:Button label=click me click=clickedList()/

 mx:TileList id=myTiles width=660
itemRenderer=view.TestComponent/

 /mx:Application

 TestComponent.mxml
 ?xml version=1.0 encoding=utf-8?
 mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml
 http://www.adobe.com/2006/mxml  width=40
 height=30 backgroundColor=#FF3366
 mx:Script
 ![CDATA[
 import mx.controls.Alert;

 public function testFunction():void {
 Alert.show('hi');
 }
 ]]
 /mx:Script
 /mx:Canvas

   
  
 





[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?

2007-04-13 Thread erinwyher
Bod, thank you thank you thank you!!! This works beautifully. And just
in time for our Beta test today.
:)
-Erin

--- In [EMAIL PROTECTED], bhaq1972 [EMAIL PROTECTED] wrote:

 sorry i didn't respond to your reply..slipped thru.
 
 continuing from Alex, and having a closer look at your original 
 post ..flexcoders is so busy and sometimes i just look at the 
 title and give an answer...i'll be a good boy and read the question 
 properly next time.
 
 what you actually want is to use the TileList.indexToItemRenderer() 
 function. that gives u a reference to the itemrenderer
 
 eg.
 
 myTiles.indexToItemRenderer(1)[testFunction]();
 //or
 TestComonent(myTiles.indexToItemRenderer(1)).testFunction();
 //or
 var object1:TestComponent = myTiles.indexToItemRenderer(1) as 
 TestComponent;
 object1.testFunction(); 
 
 
 regards
 Bod
 
 --- In [EMAIL PROTECTED], Alex Harui aharui@ wrote:
 
  Erin,
   
  It looks like your array:
  var arrTest:Array = [1,2,3,4];
  just contains numbers.
   
  IList(myTiles.dataProvider).getItemAt(1) should return 2;
   
  2 is just a number so you it doesn't have a testFunction
   
  Did you intend to pass 2 into testFunction?
   
  That would be:
  testFunction(IList(myTiles.dataProvider).getItemAt(1));
   
  One good way to debug this is to start storing parts of the 
 expression
  in temporary variables.
   
  -Alex
  
  
  
  From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On
  Behalf Of erinwyher
  Sent: Thursday, April 12, 2007 10:41 AM
  To: [EMAIL PROTECTED]
  Subject: [flexcoders] Re: Tilelist in Flex 2 - what to use instead 
 of
  getItemAt()?
  
  
  
  Thanks for the suggestion. My new error is: value is not a 
 function.
  This comes up on this new line:
  
  IList(myTiles.dataProvider).getItemAt(1).testFunction();
  
  -Erin
  
  --- In [EMAIL PROTECTED] mailto:flexcoders%
 40yahoogroups.com
  , craig.drabik craig.drabik@
  wrote:
  
   Try using an ArrayCollection for your data provider instead of a
   simple array. 
   
   --- In [EMAIL PROTECTED]
  mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ 
 wrote:
   
Thanks for the suggestion, but it doesn't work :(. Do you need 
 the
latest version of Flex 2 for that to work? I didn't install the
  latest
upgrade (2.1 I believe).

When I tried it, I got the following error.

TypeError: Error #1006: value is not a function.
at test/clickedList()
at test/___Button1_click()

Also, in the debugger, IList(myTiles.dataProvider) cannot be
  evaluated,
and neither can IList(myTiles.dataProvider).getItemAt
 (any_number)

Any more ideas? I really need help with this and I appreciate 
 any
suggestions! Thank you.

-Erin

--- In [EMAIL PROTECTED]
  mailto:flexcoders%40yahoogroups.com , bhaq1972 mbhaque@ 
 wrote:

 the getItemAt() function is available but not like the flex 
 1.5
  way.

 you can do the following

 import mx.collections.IList;

 public function clickedList():void {
 //myTiles.getItemAt(1).testFunction();
 IList(myTiles.dataProvider).getItemAt(1).testFunction();
 etc



 --- In [EMAIL PROTECTED]
  mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ 
 wrote:
 
  In Flex 1.5, you use getItemAt() to call functions from the
 children
  of the TileList, but that method no longer exists in F2. 
 Any
  suggestions to do this?
 
  Here is some sample code:
 
  test.mxml:
  ?xml version=1.0 encoding=utf-8?
  mx:Application
  xmlns:mx=http://www.adobe.com/2006/mxml
  http://www.adobe.com/2006/mxml 
  xmlns:view=view.*
  layout=absolute
  creationComplete=doInit()
  mx:Script
  ![CDATA[
  public var arrTest:Array;
 
  public function doInit():void {
  arrTest = [1,2,3,4];
  myTiles.dataProvider = arrTest;
  }
  public function clickedList():void {
  //myTiles.getItemAt(1).testFunction
 ();
  //I want to call a function here for
 a specific set of tiles...
  how do I do that without getItemAt?
  //Note: getChildAt does not work
 either
  }
  ]]
  /mx:Script
  mx:Button label=click me click=clickedList()/
 
  mx:TileList id=myTiles width=660
 itemRenderer=view.TestComponent/
 
  /mx:Application
 
  TestComponent.mxml
  ?xml version=1.0 encoding=utf-8?
  mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml
  http://www.adobe.com/2006/mxml  width=40
  height=30 backgroundColor=#FF3366
  mx:Script
  ![CDATA[
  import mx.controls.Alert;
 
  public function testFunction():void {
  Alert.show('hi');
  }
  ]]
  /mx:Script
  /mx:Canvas
 

   
  
 





[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?

2007-04-12 Thread erinwyher
Thanks for the suggestion. My new error is: value is not a function.
This comes up on this new line:

IList(myTiles.dataProvider).getItemAt(1).testFunction();

-Erin

--- In [EMAIL PROTECTED], craig.drabik [EMAIL PROTECTED]
wrote:

 Try using an ArrayCollection for your data provider instead of a
 simple array.  
 
 --- In [EMAIL PROTECTED], erinwyher erinwyher@ wrote:
 
  Thanks for the suggestion, but it doesn't work :(. Do you need the
  latest version of Flex 2 for that to work?  I didn't install the
latest
  upgrade (2.1 I believe).
  
  When I tried it, I got the following error.
  
  TypeError: Error #1006: value is not a function.
   at test/clickedList()
   at test/___Button1_click()
  
  Also, in the debugger, IList(myTiles.dataProvider) cannot be
evaluated,
  and neither can IList(myTiles.dataProvider).getItemAt(any_number)
  
  Any more ideas? I really need help with this and I appreciate any
  suggestions! Thank you.
  
  -Erin
  
  --- In [EMAIL PROTECTED], bhaq1972 mbhaque@ wrote:
  
   the getItemAt() function is available but not like the flex 1.5 way.
  
   you can do the following
  
   import mx.collections.IList;
  
   public function clickedList():void {
   //myTiles.getItemAt(1).testFunction();
   IList(myTiles.dataProvider).getItemAt(1).testFunction();
   etc
  
  
  
   --- In [EMAIL PROTECTED], erinwyher erinwyher@ wrote:
   
In Flex 1.5, you use getItemAt() to call functions from the
   children
of the TileList, but that method no longer exists in F2. Any
suggestions to do this?
   
Here is some sample code:
   
test.mxml:
?xml version=1.0 encoding=utf-8?
mx:Application
 xmlns:mx=http://www.adobe.com/2006/mxml;
 xmlns:view=view.*
 layout=absolute
 creationComplete=doInit()
 mx:Script
  ![CDATA[
   public var arrTest:Array;
   
   public function doInit():void {
arrTest = [1,2,3,4];
myTiles.dataProvider = arrTest;
   }
   public function clickedList():void {
//myTiles.getItemAt(1).testFunction
   ();
//I want to call a function here for
   a specific set of tiles...
how do I do that without getItemAt?
//Note: getChildAt does not work
   either
   }
  ]]
 /mx:Script
mx:Button label=click me click=clickedList()/
   
mx:TileList id=myTiles width=660
   itemRenderer=view.TestComponent/
   
/mx:Application
   
TestComponent.mxml
?xml version=1.0 encoding=utf-8?
mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40
height=30 backgroundColor=#FF3366
mx:Script
 ![CDATA[
  import mx.controls.Alert;
   
  public function testFunction():void {
   Alert.show('hi');
  }
 ]]
/mx:Script
/mx:Canvas
   
  
 





RE: [flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?

2007-04-12 Thread Alex Harui
Erin,
 
It looks like your array:
var arrTest:Array = [1,2,3,4];
just contains numbers.
 
IList(myTiles.dataProvider).getItemAt(1) should return 2;
 
2 is just a number so you it doesn't have a testFunction
 
Did you intend to pass 2 into testFunction?
 
That would be:
testFunction(IList(myTiles.dataProvider).getItemAt(1));
 
One good way to debug this is to start storing parts of the expression
in temporary variables.
 
-Alex



From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of erinwyher
Sent: Thursday, April 12, 2007 10:41 AM
To: [EMAIL PROTECTED]
Subject: [flexcoders] Re: Tilelist in Flex 2 - what to use instead of
getItemAt()?



Thanks for the suggestion. My new error is: value is not a function.
This comes up on this new line:

IList(myTiles.dataProvider).getItemAt(1).testFunction();

-Erin

--- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com
, craig.drabik [EMAIL PROTECTED]
wrote:

 Try using an ArrayCollection for your data provider instead of a
 simple array. 
 
 --- In [EMAIL PROTECTED]
mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote:
 
  Thanks for the suggestion, but it doesn't work :(. Do you need the
  latest version of Flex 2 for that to work? I didn't install the
latest
  upgrade (2.1 I believe).
  
  When I tried it, I got the following error.
  
  TypeError: Error #1006: value is not a function.
  at test/clickedList()
  at test/___Button1_click()
  
  Also, in the debugger, IList(myTiles.dataProvider) cannot be
evaluated,
  and neither can IList(myTiles.dataProvider).getItemAt(any_number)
  
  Any more ideas? I really need help with this and I appreciate any
  suggestions! Thank you.
  
  -Erin
  
  --- In [EMAIL PROTECTED]
mailto:flexcoders%40yahoogroups.com , bhaq1972 mbhaque@ wrote:
  
   the getItemAt() function is available but not like the flex 1.5
way.
  
   you can do the following
  
   import mx.collections.IList;
  
   public function clickedList():void {
   //myTiles.getItemAt(1).testFunction();
   IList(myTiles.dataProvider).getItemAt(1).testFunction();
   etc
  
  
  
   --- In [EMAIL PROTECTED]
mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote:
   
In Flex 1.5, you use getItemAt() to call functions from the
   children
of the TileList, but that method no longer exists in F2. Any
suggestions to do this?
   
Here is some sample code:
   
test.mxml:
?xml version=1.0 encoding=utf-8?
mx:Application
xmlns:mx=http://www.adobe.com/2006/mxml
http://www.adobe.com/2006/mxml 
xmlns:view=view.*
layout=absolute
creationComplete=doInit()
mx:Script
![CDATA[
public var arrTest:Array;
   
public function doInit():void {
arrTest = [1,2,3,4];
myTiles.dataProvider = arrTest;
}
public function clickedList():void {
//myTiles.getItemAt(1).testFunction
   ();
//I want to call a function here for
   a specific set of tiles...
how do I do that without getItemAt?
//Note: getChildAt does not work
   either
}
]]
/mx:Script
mx:Button label=click me click=clickedList()/
   
mx:TileList id=myTiles width=660
   itemRenderer=view.TestComponent/
   
/mx:Application
   
TestComponent.mxml
?xml version=1.0 encoding=utf-8?
mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml
http://www.adobe.com/2006/mxml  width=40
height=30 backgroundColor=#FF3366
mx:Script
![CDATA[
import mx.controls.Alert;
   
public function testFunction():void {
Alert.show('hi');
}
]]
/mx:Script
/mx:Canvas
   
  
 




 


[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?

2007-04-11 Thread erinwyher
Thanks for the suggestion, but it doesn't work :(. Do you need the
latest version of Flex 2 for that to work?  I didn't install the latest
upgrade (2.1 I believe).

When I tried it, I got the following error.

TypeError: Error #1006: value is not a function.
 at test/clickedList()
 at test/___Button1_click()

Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated,
and neither can IList(myTiles.dataProvider).getItemAt(any_number)

Any more ideas? I really need help with this and I appreciate any
suggestions! Thank you.

-Erin

--- In flexcoders@yahoogroups.com, bhaq1972 [EMAIL PROTECTED] wrote:

 the getItemAt() function is available but not like the flex 1.5 way.

 you can do the following

 import mx.collections.IList;

 public function clickedList():void {
 //myTiles.getItemAt(1).testFunction();
 IList(myTiles.dataProvider).getItemAt(1).testFunction();
 etc



 --- In flexcoders@yahoogroups.com, erinwyher erinwyher@ wrote:
 
  In Flex 1.5, you use getItemAt() to call functions from the
 children
  of the TileList, but that method no longer exists in F2. Any
  suggestions to do this?
 
  Here is some sample code:
 
  test.mxml:
  ?xml version=1.0 encoding=utf-8?
  mx:Application
   xmlns:mx=http://www.adobe.com/2006/mxml;
   xmlns:view=view.*
   layout=absolute
   creationComplete=doInit()
   mx:Script
![CDATA[
 public var arrTest:Array;
 
 public function doInit():void {
  arrTest = [1,2,3,4];
  myTiles.dataProvider = arrTest;
 }
 public function clickedList():void {
  //myTiles.getItemAt(1).testFunction
 ();
  //I want to call a function here for
 a specific set of tiles...
  how do I do that without getItemAt?
  //Note: getChildAt does not work
 either
 }
]]
   /mx:Script
  mx:Button label=click me click=clickedList()/
 
  mx:TileList id=myTiles width=660
 itemRenderer=view.TestComponent/
 
  /mx:Application
 
  TestComponent.mxml
  ?xml version=1.0 encoding=utf-8?
  mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40
  height=30 backgroundColor=#FF3366
  mx:Script
   ![CDATA[
import mx.controls.Alert;
 
public function testFunction():void {
 Alert.show('hi');
}
   ]]
  /mx:Script
  /mx:Canvas
 




[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?

2007-04-11 Thread craig.drabik
Try using an ArrayCollection for your data provider instead of a
simple array.  

--- In flexcoders@yahoogroups.com, erinwyher [EMAIL PROTECTED] wrote:

 Thanks for the suggestion, but it doesn't work :(. Do you need the
 latest version of Flex 2 for that to work?  I didn't install the latest
 upgrade (2.1 I believe).
 
 When I tried it, I got the following error.
 
 TypeError: Error #1006: value is not a function.
  at test/clickedList()
  at test/___Button1_click()
 
 Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated,
 and neither can IList(myTiles.dataProvider).getItemAt(any_number)
 
 Any more ideas? I really need help with this and I appreciate any
 suggestions! Thank you.
 
 -Erin
 
 --- In flexcoders@yahoogroups.com, bhaq1972 mbhaque@ wrote:
 
  the getItemAt() function is available but not like the flex 1.5 way.
 
  you can do the following
 
  import mx.collections.IList;
 
  public function clickedList():void {
  //myTiles.getItemAt(1).testFunction();
  IList(myTiles.dataProvider).getItemAt(1).testFunction();
  etc
 
 
 
  --- In flexcoders@yahoogroups.com, erinwyher erinwyher@ wrote:
  
   In Flex 1.5, you use getItemAt() to call functions from the
  children
   of the TileList, but that method no longer exists in F2. Any
   suggestions to do this?
  
   Here is some sample code:
  
   test.mxml:
   ?xml version=1.0 encoding=utf-8?
   mx:Application
xmlns:mx=http://www.adobe.com/2006/mxml;
xmlns:view=view.*
layout=absolute
creationComplete=doInit()
mx:Script
 ![CDATA[
  public var arrTest:Array;
  
  public function doInit():void {
   arrTest = [1,2,3,4];
   myTiles.dataProvider = arrTest;
  }
  public function clickedList():void {
   //myTiles.getItemAt(1).testFunction
  ();
   //I want to call a function here for
  a specific set of tiles...
   how do I do that without getItemAt?
   //Note: getChildAt does not work
  either
  }
 ]]
/mx:Script
   mx:Button label=click me click=clickedList()/
  
   mx:TileList id=myTiles width=660
  itemRenderer=view.TestComponent/
  
   /mx:Application
  
   TestComponent.mxml
   ?xml version=1.0 encoding=utf-8?
   mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40
   height=30 backgroundColor=#FF3366
   mx:Script
![CDATA[
 import mx.controls.Alert;
  
 public function testFunction():void {
  Alert.show('hi');
 }
]]
   /mx:Script
   /mx:Canvas
  
 





[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?

2007-04-10 Thread bhaq1972
the getItemAt() function is available but not like the flex 1.5 way.

you can do the following 

import mx.collections.IList;

public function clickedList():void {
//myTiles.getItemAt(1).testFunction();
IList(myTiles.dataProvider).getItemAt(1).testFunction();
etc



--- In flexcoders@yahoogroups.com, erinwyher [EMAIL PROTECTED] wrote:

 In Flex 1.5, you use getItemAt() to call functions from the 
children
 of the TileList, but that method no longer exists in F2. Any
 suggestions to do this? 
 
 Here is some sample code:
 
 test.mxml:
 ?xml version=1.0 encoding=utf-8?
 mx:Application 
   xmlns:mx=http://www.adobe.com/2006/mxml;
   xmlns:view=view.* 
   layout=absolute
   creationComplete=doInit()
   mx:Script
   ![CDATA[
   public var arrTest:Array;
   
   public function doInit():void {
   arrTest = [1,2,3,4];
   myTiles.dataProvider = arrTest;
   }
   public function clickedList():void {
   //myTiles.getItemAt(1).testFunction
();
   //I want to call a function here for 
a specific set of tiles...
 how do I do that without getItemAt?
   //Note: getChildAt does not work 
either
   }
   ]]
   /mx:Script
 mx:Button label=click me click=clickedList()/
 
 mx:TileList id=myTiles width=660 
itemRenderer=view.TestComponent/
 
 /mx:Application
 
 TestComponent.mxml 
 ?xml version=1.0 encoding=utf-8?
 mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40
 height=30 backgroundColor=#FF3366
 mx:Script
   ![CDATA[
   import mx.controls.Alert;
   
   public function testFunction():void {
   Alert.show('hi');
   }
   ]]
 /mx:Script
 /mx:Canvas