RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-14 Thread Zoran Avramov
I have been down this rocky road of recording indexes of where the nodes are in 
respect to their parent node but this did not work and this is why. In order 
for me to get a meaningful path went from event.target node that was clicked 
all the way to its root (stage) and constructed a path based on the where the 
child node is, so I can parse the sting of number and just use get childAt(). 
This DID NOT work and the reason is that the DOM like tree in Flash is not 
rendered the same during my record phase and my replay phase. The reason for 
this is ‘mouseCatcher’ since I do not use the mouse in replay this is not 
created as a child object hence throwing of the DOM like tree so my child 
positions are off. Is there any way to hack the systemManager or somehow 
uniquely indentify the controls in the .swf that I do not have to be dependent 
on the instance of the .swf. Any help on this or even a pointer to the right 
direction will be greatly appreciated…

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 3:59 PM








Well, you can use getChildAt() and assume indexes (they are less likely to 
change).  You can subclass the components and walk their trees assigning names
 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 2:54 PM
To: [EMAIL PROTECTED] ups.com ; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 




Yep I thought you did something like that for the numbering and that is 
definitely not going to work. In terms of walking the tree and assigning names 
this will not work either since one of my requirements (It sucks to be me…) is 
to use my path or control name (that I just got from clicking on a button lets 
say) on a different instance of the .swf and this new instance will not have 
those names that I will generate. Is there any way that I can associate a 
control on the .swf with some type of identifier that can be used at a 
different instance of the .swf and select that control.


--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] com wrote:
From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] com, [EMAIL PROTECTED] ups.com
Date: Wednesday, August 13, 2008, 2:40 PM






Hmm.  I thought the name property of every sprite was filled out.  You could 
certainly walk the tree and find things with no name and give them names.
 
The numbering has to do with when it got instantiated.  The ConfirmScreen was 
the 388th thing, UIComponent was the 418th, etc.  But one UI change or timing 
glitch can change those numbers.
 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 2:21 PM
To: [EMAIL PROTECTED] ups.com ; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 




What happens when the object does not have a name (or it does not have a static 
name) like the close button that I mentioned below? Also can you share 
something on how the numbering schema works (ConfirmScreen388. UIComponent418. 
Button422), maybe I can match the numbering somehow that if that information is 
publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] com wrote:
From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] com, [EMAIL PROTECTED] ups.com
Date: Wednesday, August 13, 2008, 12:53 PM


The root of a SWF is a SystemManager.  All Popups and the Application are 
children of the SystemManager.
 
You may be able to use getChildByName and get more consistent results.
 
We have a much more sophisticated technology we use in house to exercise 
components similar to what you are doing.  Maybe it will be public someday.
 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: [EMAIL PROTECTED] ups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 





Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root (ConfirmScreen388. 
UIComponent418. Button422) , is created by just setting this flag 
'showCloseButton=true' in the code below. I need to be able to find a way to 
identify that button or any other DisplayObject that I want to monitor for 
clicks and then execute those clicks on a different instance of the same .swf. 
I have not found a good way to do this and if you can help me understand how 
you render your DOM in flex (at least the part that will help me do this) it 
would be greatly appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe. com/2006/ mxml
 layout=vertical
 close=PopUpManager. removePopUp

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-14 Thread Alex Harui
MouseCatcher gets created no matter what, but using indexes can be
fragile.  Your choices are index and/or names, or what we did, is make
sure there is a variable dot-path expression to most everything and use
indexes where there wasn't.  It provided more stability, but isn't
perfect.  We also don't use dot-path expressions for mouse targeting
since, if some bug accidentally overlays the original mouse target, your
playback wouldn't catch that.  We use getObjectsUnderPoint instead.

 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Thursday, August 14, 2008 10:59 AM
To: flexcoders@yahoogroups.com; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

I have been down this rocky road of recording indexes of where the nodes
are in respect to their parent node but this did not work and this is
why. In order for me to get a meaningful path went from event.target
node that was clicked all the way to its root (stage) and constructed a
path based on the where the child node is, so I can parse the sting of
number and just use get childAt(). This DID NOT work and the reason is
that the DOM like tree in Flash is not rendered the same during my
record phase and my replay phase. The reason for this is 'mouseCatcher'
since I do not use the mouse in replay this is not created as a child
object hence throwing of the DOM like tree so my child positions are
off. Is there any way to hack the systemManager or somehow uniquely
indentify the controls in the .swf that I do not have to be dependent on
the instance of the .swf. Any help on this or even a pointer to the
right direction will be greatly appreciated...



--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 3:59 PM

Well, you can use getChildAt() and assume indexes (they are less likely
to change).  You can subclass the components and walk their trees
assigning names

 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 2:54 PM
To: [EMAIL PROTECTED] ups.com ; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Yep I thought you did something like that for the numbering and that is
definitely not going to work. In terms of walking the tree and assigning
names this will not work either since one of my requirements (It sucks
to be me...) is to use my path or control name (that I just got from
clicking on a button lets say) on a different instance of the .swf and
this new instance will not have those names that I will generate. Is
there any way that I can associate a control on the .swf with some type
of identifier that can be used at a different instance of the .swf and
select that control.



--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] com wrote:

From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] com, [EMAIL PROTECTED] ups.com
Date: Wednesday, August 13, 2008, 2:40 PM

Hmm.  I thought the name property of every sprite was filled out.  You
could certainly walk the tree and find things with no name and give them
names.

 

The numbering has to do with when it got instantiated.  The
ConfirmScreen was the 388th thing, UIComponent was the 418th, etc.  But
one UI change or timing glitch can change those numbers.

 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 2:21 PM
To: [EMAIL PROTECTED] ups.com ; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What happens when the object does not have a name (or it does not have a
static name) like the close button that I mentioned below? Also can you
share something on how the numbering schema works (ConfirmScreen388.
UIComponent418. Button422), maybe I can match the numbering somehow that
if that information is publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] com wrote:

From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] com, [EMAIL PROTECTED] ups.com
Date: Wednesday, August 13, 2008, 12:53 PM

The root of a SWF is a SystemManager.  All Popups and the Application
are children of the SystemManager.

 

You may be able to use getChildByName and get more consistent results.

 

We have a much more sophisticated technology we use in house to exercise
components similar to what you are doing.  Maybe it will be public
someday.

 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: [EMAIL PROTECTED] ups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Zoran Avramov
Hi Alex/Gordon
 
The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root 
(ConfirmScreen388.UIComponent418.Button422), is created by just setting this 
flag 'showCloseButton=true' in the code below. I need to be able to find a 
way to identify that button or any other DisplayObject that I want to monitor 
for clicks and then execute those clicks on a different instance of the same 
.swf. I have not found a good way to do this and if you can help me understand 
how you render your DOM in flex (at least the part that will help me do this) 
it would be greatly appreciated. 
 
mx:TitleWindow xmlns:mx=http://www.adobe.com/2006/mxml;
 layout=vertical
 close=PopUpManager.removePopUp(this)
 showCloseButton=true
 
 
Thanks,
Zoran
 


--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: flexcoders@yahoogroups.com
Date: Tuesday, August 12, 2008, 9:38 PM








He’s surprised that the popup isn’t parented by the app.  Popups are parented 
by the systemMgr which also parents the app.
 
Id’s are per-document (or per-mxml file) so you can traverse documents and pull 
objects by their ids.
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 




What do you mean by I don't have the path to the root?
 
If you assign an id to each component, the toString() method will use that 
instead of a dynamically generated name like Button498.
 
Gordon Smith
Adobe Flex SDK Team
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: [EMAIL PROTECTED] ups.com
Subject: [flexcoders] AS 3.0 event target problem!!!
 



I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play the clicks back based on the event.target information that I got 
and I was able to do that except when we have popups. Here is the 
problem:

When I execute a click on a button with event.target =
DataEntry0._ UpdateDeleteProd 1.Form10. FormItem102. HBox103.Button10 4 
A poupup appears and then I click on the close button on that popup 
with event.target=
ConfirmScreen464. UIComponent494. Button498

COUPLE OF PROBLEMS HERE:
1) I don't have the path to the root (DataEntry0) even though I 
use the standard event.target.
2) This is even a bigger problem, the DOM path 
(ConfirmScreen464. UIComponent494. Button498) is dynamically generated 
(the numbers are dynamically generated) so when I use that path that 
I got during the time I was monitoring the app, when I use my code to 
play the events that very same target does not correspond to the 
popup that the fist event caused. 

I tried using IDs but in Flex I have not found anything like 
document.getElement ById() that is available in JavaScript. Any help 
on this will be greatly appreciated.

Thanks

p.s. I looked at the automation library that Flex has (and Mercury 
QTP uses) but that will not work for me.
 














  

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Alex Harui
The root of a SWF is a SystemManager.  All Popups and the Application are 
children of the SystemManager.

 

You may be able to use getChildByName and get more consistent results.

 

We have a much more sophisticated technology we use in house to exercise 
components similar to what you are doing.  Maybe it will be public someday.

 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: flexcoders@yahoogroups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root 
(ConfirmScreen388.UIComponent418.Button422), is created by just setting this 
flag 'showCloseButton=true' in the code below. I need to be able to find a 
way to identify that button or any other DisplayObject that I want to monitor 
for clicks and then execute those clicks on a different instance of the same 
.swf. I have not found a good way to do this and if you can help me understand 
how you render your DOM in flex (at least the part that will help me do this) 
it would be greatly appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe.com/2006/mxml;
 layout=vertical
 close=PopUpManager.removePopUp(this)
 showCloseButton=true

 

 

Thanks,

Zoran

 



--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: flexcoders@yahoogroups.com
Date: Tuesday, August 12, 2008, 9:38 PM

He’s surprised that the popup isn’t parented by the app.  Popups are 
parented by the systemMgr which also parents the app.

 

Id’s are per-document (or per-mxml file) so you can traverse documents 
and pull objects by their ids.

 





From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On 
Behalf Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What do you mean by I don't have the path to the root?

 

If you assign an id to each component, the toString() method will use 
that instead of a dynamically generated name like Button498.

 

Gordon Smith

Adobe Flex SDK Team

 



From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: [EMAIL PROTECTED] ups.com
Subject: [flexcoders] AS 3.0 event target problem!!!

 

I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play the clicks back based on the event.target information that I got 
and I was able to do that except when we have popups. Here is the 
problem:

When I execute a click on a button with event.target =
DataEntry0._ UpdateDeleteProd 1.Form10. FormItem102. HBox103.Button10 4 
A poupup appears and then I click on the close button on that popup 
with event.target=
ConfirmScreen464. UIComponent494. Button498

COUPLE OF PROBLEMS HERE:
1) I don't have the path to the root (DataEntry0) even though I 
use the standard event.target.
2) This is even a bigger problem, the DOM path 
(ConfirmScreen464. UIComponent494. Button498) is dynamically generated 
(the numbers are dynamically generated) so when I use that path that 
I got during the time I was monitoring the app, when I use my code to 
play the events that very same target does not correspond to the 
popup that the fist event caused. 

I tried using IDs but in Flex I have not found anything like 
document.getElement ById() that is available in JavaScript. Any help 
on this will be greatly appreciated.

Thanks

p.s. I looked at the automation library that Flex has (and Mercury 
QTP uses) but that will not work for me.

 

 



RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Alex Harui
Hmm.  I thought the name property of every sprite was filled out.  You could 
certainly walk the tree and find things with no name and give them names.

 

The numbering has to do with when it got instantiated.  The ConfirmScreen was 
the 388th thing, UIComponent was the 418th, etc.  But one UI change or timing 
glitch can change those numbers.

 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 13, 2008 2:21 PM
To: flexcoders@yahoogroups.com; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What happens when the object does not have a name (or it does not have a static 
name) like the close button that I mentioned below? Also can you share 
something on how the numbering schema works (ConfirmScreen388. UIComponent418. 
Button422), maybe I can match the numbering somehow that if that information is 
publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 12:53 PM

The root of a SWF is a SystemManager.  All Popups and the Application are 
children of the SystemManager.

 

You may be able to use getChildByName and get more consistent results.

 

We have a much more sophisticated technology we use in house to exercise 
components similar to what you are doing.  Maybe it will be public someday.

 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: flexcoders@yahoogroups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root 
(ConfirmScreen388.UIComponent418.Button422), is created by just setting this 
flag 'showCloseButton=true' in the code below. I need to be able to find a 
way to identify that button or any other DisplayObject that I want to monitor 
for clicks and then execute those clicks on a different instance of the same 
.swf. I have not found a good way to do this and if you can help me understand 
how you render your DOM in flex (at least the part that will help me do this) 
it would be greatly appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe.com/2006/mxml 
http://www.adobe.com/2006/mxml 
 layout=vertical
 close=PopUpManager.removePopUp(this)
 showCloseButton=true

 

 

Thanks,

Zoran

 



--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: flexcoders@yahoogroups.com
Date: Tuesday, August 12, 2008, 9:38 PM

He’s surprised that the popup isn’t parented by the app.  Popups are parented 
by the systemMgr which also parents the app.

 

Id’s are per-document (or per-mxml file) so you can traverse documents and pull 
objects by their ids.

 



From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What do you mean by I don't have the path to the root?

 

If you assign an id to each component, the toString() method will use that 
instead of a dynamically generated name like Button498.

 

Gordon Smith

Adobe Flex SDK Team

 



From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: [EMAIL PROTECTED] ups.com
Subject: [flexcoders] AS 3.0 event target problem!!!

 

I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play the clicks back based on the event.target information that I got 
and I was able to do that except when we have popups. Here is the 
problem:

When I execute a click on a button with event.target =
DataEntry0._ UpdateDeleteProd 1.Form10. FormItem102. HBox103.Button10 4 
A poupup appears and then I click on the close button on that popup 
with event.target=
ConfirmScreen464. UIComponent494. Button498

COUPLE OF PROBLEMS HERE:
1) I don't have the path to the root (DataEntry0) even though I 
use the standard event.target.
2) This is even a bigger problem, the DOM path 
(ConfirmScreen464. UIComponent494. Button498) is dynamically generated 
(the numbers are dynamically generated) so when I use

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Gordon Smith
If you assign an id, the name is the id. But if you don't assign an id, the 
name is set to the class name concatenated with an incrementing counter value, 
to ensure uniqueness. Look at the following file:

 

http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils//NameUtil.as

 

The counter is simply a static var starting at 0 and incrementing every time a 
component calls NameUtil.createUniqueName().

 

When an object gets toString(), a string is formed by concatenating together, 
with periods, the names of the object and the names of its ancestors, omitting 
the SystemManager.

 

Gordon Smith

Adobe Flex SDK Team

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Alex 
Harui
Sent: Wednesday, August 13, 2008 2:41 PM
To: [EMAIL PROTECTED]; flexcoders@yahoogroups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Hmm.  I thought the name property of every sprite was filled out.  You could 
certainly walk the tree and find things with no name and give them names.

 

The numbering has to do with when it got instantiated.  The ConfirmScreen was 
the 388th thing, UIComponent was the 418th, etc.  But one UI change or timing 
glitch can change those numbers.

 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 13, 2008 2:21 PM
To: flexcoders@yahoogroups.com; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What happens when the object does not have a name (or it does not have a static 
name) like the close button that I mentioned below? Also can you share 
something on how the numbering schema works (ConfirmScreen388. UIComponent418. 
Button422), maybe I can match the numbering somehow that if that information is 
publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 12:53 PM

The root of a SWF is a SystemManager.  All Popups and the Application are 
children of the SystemManager.

 

You may be able to use getChildByName and get more consistent results.

 

We have a much more sophisticated technology we use in house to exercise 
components similar to what you are doing.  Maybe it will be public someday.

 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: flexcoders@yahoogroups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root 
(ConfirmScreen388.UIComponent418.Button422), is created by just setting this 
flag 'showCloseButton=true' in the code below. I need to be able to find a 
way to identify that button or any other DisplayObject that I want to monitor 
for clicks and then execute those clicks on a different instance of the same 
.swf. I have not found a good way to do this and if you can help me understand 
how you render your DOM in flex (at least the part that will help me do this) 
it would be greatly appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe.com/2006/mxml 
http://www.adobe.com/2006/mxml 
 layout=vertical
 close=PopUpManager.removePopUp(this)
 showCloseButton=true

 

 

Thanks,

Zoran

 



--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: flexcoders@yahoogroups.com
Date: Tuesday, August 12, 2008, 9:38 PM

He’s surprised that the popup isn’t parented by the app.  Popups are parented 
by the systemMgr which also parents the app.

 

Id’s are per-document (or per-mxml file) so you can traverse documents and pull 
objects by their ids.

 



From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What do you mean by I don't have the path to the root?

 

If you assign an id to each component, the toString() method will use that 
instead of a dynamically generated name like Button498.

 

Gordon Smith

Adobe Flex SDK Team

 



From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: [EMAIL PROTECTED] ups.com
Subject: [flexcoders] AS 3.0 event target problem!!!

 

I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Alex Harui
Well, you can use getChildAt() and assume indexes (they are less likely
to change).  You can subclass the components and walk their trees
assigning names

 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 13, 2008 2:54 PM
To: flexcoders@yahoogroups.com; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Yep I thought you did something like that for the numbering and that is
definitely not going to work. In terms of walking the tree and assigning
names this will not work either since one of my requirements (It sucks
to be me...) is to use my path or control name (that I just got from
clicking on a button lets say) on a different instance of the .swf and
this new instance will not have those names that I will generate. Is
there any way that I can associate a control on the .swf with some type
of identifier that can be used at a different instance of the .swf and
select that control.



--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 2:40 PM

Hmm.  I thought the name property of every sprite was filled out.  You
could certainly walk the tree and find things with no name and give them
names.

 

The numbering has to do with when it got instantiated.  The
ConfirmScreen was the 388th thing, UIComponent was the 418th, etc.  But
one UI change or timing glitch can change those numbers.

 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 2:21 PM
To: [EMAIL PROTECTED] ups.com ; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What happens when the object does not have a name (or it does not have a
static name) like the close button that I mentioned below? Also can you
share something on how the numbering schema works (ConfirmScreen388.
UIComponent418. Button422), maybe I can match the numbering somehow that
if that information is publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] com wrote:

From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] com, [EMAIL PROTECTED] ups.com
Date: Wednesday, August 13, 2008, 12:53 PM

The root of a SWF is a SystemManager.  All Popups and the Application
are children of the SystemManager.

 

You may be able to use getChildByName and get more consistent results.

 

We have a much more sophisticated technology we use in house to exercise
components similar to what you are doing.  Maybe it will be public
someday.

 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: [EMAIL PROTECTED] ups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that
close button (the path that I gave) when you create the actual popup.
For example the button that I gave an example with no path to the root
(ConfirmScreen388. UIComponent418. Button422) , is created by just
setting this flag 'showCloseButton=true' in the code below. I need to
be able to find a way to identify that button or any other DisplayObject
that I want to monitor for clicks and then execute those clicks on a
different instance of the same .swf. I have not found a good way to do
this and if you can help me understand how you render your DOM in flex
(at least the part that will help me do this) it would be greatly
appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe. com/2006/ mxml
http://www.adobe.com/2006/mxml 
 layout=vertical
 close=PopUpManager. removePopUp( this)
 showCloseButton=true

 

 

Thanks,

Zoran

 



--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] com wrote:

From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] ups.com
Date: Tuesday, August 12, 2008, 9:38 PM

He's surprised that the popup isn't parented by the app.  Popups are
parented by the systemMgr which also parents the app.

 

Id's are per-document (or per-mxml file) so you can traverse documents
and pull objects by their ids.

 



From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ]
On Behalf Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What do you mean by I don't have the path to the root?

 

If you assign an id to each component, the toString() method will use
that instead of a dynamically generated name like Button498.

 

Gordon Smith

Adobe Flex SDK Team

 



From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ]
On Behalf

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Zoran Avramov
What happens when the object does not have a name (or it does not have a static 
name) like the close button that I mentioned below? Also can you share 
something on how the numbering schema works (ConfirmScreen388. UIComponent418. 
Button422), maybe I can match the numbering somehow that if that information is 
publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 12:53 PM








The root of a SWF is a SystemManager.  All Popups and the Application are 
children of the SystemManager.
 
You may be able to use getChildByName and get more consistent results.
 
We have a much more sophisticated technology we use in house to exercise 
components similar to what you are doing.  Maybe it will be public someday.
 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: [EMAIL PROTECTED] ups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 





Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root (ConfirmScreen388. 
UIComponent418. Button422) , is created by just setting this flag 
'showCloseButton=true' in the code below. I need to be able to find a way to 
identify that button or any other DisplayObject that I want to monitor for 
clicks and then execute those clicks on a different instance of the same .swf. 
I have not found a good way to do this and if you can help me understand how 
you render your DOM in flex (at least the part that will help me do this) it 
would be greatly appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe. com/2006/ mxml
 layout=vertical
 close=PopUpManager. removePopUp( this)
 showCloseButton=true

 

 

Thanks,

Zoran

 



--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] com wrote:

From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] ups.com
Date: Tuesday, August 12, 2008, 9:38 PM






He’s surprised that the popup isn’t parented by the app.  Popups are parented 
by the systemMgr which also parents the app.
 
Id’s are per-document (or per-mxml file) so you can traverse documents and pull 
objects by their ids.
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 




What do you mean by I don't have the path to the root?
 
If you assign an id to each component, the toString() method will use that 
instead of a dynamically generated name like Button498.
 
Gordon Smith
Adobe Flex SDK Team
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: [EMAIL PROTECTED] ups.com
Subject: [flexcoders] AS 3.0 event target problem!!!
 




I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play the clicks back based on the event.target information that I got 
and I was able to do that except when we have popups. Here is the 
problem:

When I execute a click on a button with event.target =
DataEntry0._ UpdateDeleteProd 1.Form10. FormItem102. HBox103.Button10 4 
A poupup appears and then I click on the close button on that popup 
with event.target=
ConfirmScreen464. UIComponent494. Button498

COUPLE OF PROBLEMS HERE:
1) I don't have the path to the root (DataEntry0) even though I 
use the standard event.target.
2) This is even a bigger problem, the DOM path 
(ConfirmScreen464. UIComponent494. Button498) is dynamically generated 
(the numbers are dynamically generated) so when I use that path that 
I got during the time I was monitoring the app, when I use my code to 
play the events that very same target does not correspond to the 
popup that the fist event caused. 

I tried using IDs but in Flex I have not found anything like 
document.getElement ById() that is available in JavaScript. Any help 
on this will be greatly appreciated.

Thanks

p.s. I looked at the automation library that Flex has (and Mercury 
QTP uses) but that will not work for me.

  














  

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Zoran Avramov
What happens when the object does not have a name (or it does not have a static 
name) like the close button that I mentioned below? Also can you share 
something on how the numbering schema works (ConfirmScreen388. UIComponent418. 
Button422), maybe I can match the numbering somehow that if that information is 
publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 12:53 PM








The root of a SWF is a SystemManager.  All Popups and the Application are 
children of the SystemManager.
 
You may be able to use getChildByName and get more consistent results.
 
We have a much more sophisticated technology we use in house to exercise 
components similar to what you are doing.  Maybe it will be public someday.
 



From: Zoran Avramov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: flexcoders@yahoogroups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 





Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root 
(ConfirmScreen388.UIComponent418.Button422), is created by just setting this 
flag 'showCloseButton=true' in the code below. I need to be able to find a 
way to identify that button or any other DisplayObject that I want to monitor 
for clicks and then execute those clicks on a different instance of the same 
.swf. I have not found a good way to do this and if you can help me understand 
how you render your DOM in flex (at least the part that will help me do this) 
it would be greatly appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe.com/2006/mxml;
 layout=vertical
 close=PopUpManager.removePopUp(this)
 showCloseButton=true

 

 

Thanks,

Zoran

 



--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: flexcoders@yahoogroups.com
Date: Tuesday, August 12, 2008, 9:38 PM






He’s surprised that the popup isn’t parented by the app.  Popups are parented 
by the systemMgr which also parents the app.
 
Id’s are per-document (or per-mxml file) so you can traverse documents and pull 
objects by their ids.
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 




What do you mean by I don't have the path to the root?
 
If you assign an id to each component, the toString() method will use that 
instead of a dynamically generated name like Button498.
 
Gordon Smith
Adobe Flex SDK Team
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: [EMAIL PROTECTED] ups.com
Subject: [flexcoders] AS 3.0 event target problem!!!
 




I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play the clicks back based on the event.target information that I got 
and I was able to do that except when we have popups. Here is the 
problem:

When I execute a click on a button with event.target =
DataEntry0._ UpdateDeleteProd 1.Form10. FormItem102. HBox103.Button10 4 
A poupup appears and then I click on the close button on that popup 
with event.target=
ConfirmScreen464. UIComponent494. Button498

COUPLE OF PROBLEMS HERE:
1) I don't have the path to the root (DataEntry0) even though I 
use the standard event.target.
2) This is even a bigger problem, the DOM path 
(ConfirmScreen464. UIComponent494. Button498) is dynamically generated 
(the numbers are dynamically generated) so when I use that path that 
I got during the time I was monitoring the app, when I use my code to 
play the events that very same target does not correspond to the 
popup that the fist event caused. 

I tried using IDs but in Flex I have not found anything like 
document.getElement ById() that is available in JavaScript. Any help 
on this will be greatly appreciated.

Thanks

p.s. I looked at the automation library that Flex has (and Mercury 
QTP uses) but that will not work for me.
 
 


  

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-13 Thread Zoran Avramov
Yep I thought you did something like that for the numbering and that is 
definitely not going to work. In terms of walking the tree and assigning names 
this will not work either since one of my requirements (It sucks to be me…) is 
to use my path or control name (that I just got from clicking on a button lets 
say) on a different instance of the .swf and this new instance will not have 
those names that I will generate. Is there any way that I can associate a 
control on the .swf with some type of identifier that can be used at a 
different instance of the .swf and select that control.

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] wrote:

From: Alex Harui [EMAIL PROTECTED]
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED], flexcoders@yahoogroups.com
Date: Wednesday, August 13, 2008, 2:40 PM








Hmm.  I thought the name property of every sprite was filled out.  You could 
certainly walk the tree and find things with no name and give them names.
 
The numbering has to do with when it got instantiated.  The ConfirmScreen was 
the 388th thing, UIComponent was the 418th, etc.  But one UI change or timing 
glitch can change those numbers.
 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 2:21 PM
To: [EMAIL PROTECTED] ups.com ; Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 




What happens when the object does not have a name (or it does not have a static 
name) like the close button that I mentioned below? Also can you share 
something on how the numbering schema works (ConfirmScreen388. UIComponent418. 
Button422), maybe I can match the numbering somehow that if that information is 
publicly available. 

--- On Wed, 8/13/08, Alex Harui [EMAIL PROTECTED] com wrote:
From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] com, [EMAIL PROTECTED] ups.com
Date: Wednesday, August 13, 2008, 12:53 PM


The root of a SWF is a SystemManager.  All Popups and the Application are 
children of the SystemManager.
 
You may be able to use getChildByName and get more consistent results.
 
We have a much more sophisticated technology we use in house to exercise 
components similar to what you are doing.  Maybe it will be public someday.
 



From: Zoran Avramov [mailto:zoran_ [EMAIL PROTECTED] com] 
Sent: Wednesday, August 13, 2008 9:40 AM
To: [EMAIL PROTECTED] ups.com
Cc: Alex Harui
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 





Hi Alex/Gordon

 

The problem with assigning IDs is that the popup container has that close 
button (the path that I gave) when you create the actual popup. For example the 
button that I gave an example with no path to the root (ConfirmScreen388. 
UIComponent418. Button422) , is created by just setting this flag 
'showCloseButton=true' in the code below. I need to be able to find a way to 
identify that button or any other DisplayObject that I want to monitor for 
clicks and then execute those clicks on a different instance of the same .swf. 
I have not found a good way to do this and if you can help me understand how 
you render your DOM in flex (at least the part that will help me do this) it 
would be greatly appreciated. 

 

mx:TitleWindow xmlns:mx=http://www.adobe. com/2006/ mxml
 layout=vertical
 close=PopUpManager. removePopUp( this)
 showCloseButton=true

 

 

Thanks,

Zoran

 



--- On Tue, 8/12/08, Alex Harui [EMAIL PROTECTED] com wrote:

From: Alex Harui [EMAIL PROTECTED] com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
To: [EMAIL PROTECTED] ups.com
Date: Tuesday, August 12, 2008, 9:38 PM






He’s surprised that the popup isn’t parented by the app.  Popups are parented 
by the systemMgr which also parents the app.
 
Id’s are per-document (or per-mxml file) so you can traverse documents and pull 
objects by their ids.
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: [EMAIL PROTECTED] ups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!
 




What do you mean by I don't have the path to the root?
 
If you assign an id to each component, the toString() method will use that 
instead of a dynamically generated name like Button498.
 
Gordon Smith
Adobe Flex SDK Team
 




From: [EMAIL PROTECTED] ups.com [mailto: [EMAIL PROTECTED] ups.com ] On Behalf 
Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: [EMAIL PROTECTED] ups.com
Subject: [flexcoders] AS 3.0 event target problem!!!
 




I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play

RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-12 Thread Gordon Smith
What do you mean by I don't have the path to the root?

 

If you assign an id to each component, the toString() method will use
that instead of a dynamically generated name like Button498.

 

Gordon Smith

Adobe Flex SDK Team

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] AS 3.0 event target problem!!!

 

I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play the clicks back based on the event.target information that I got 
and I was able to do that except when we have popups. Here is the 
problem:

When I execute a click on a button with event.target =
DataEntry0._UpdateDeleteProd1.Form10.FormItem102.HBox103.Button104 
A poupup appears and then I click on the close button on that popup 
with event.target=
ConfirmScreen464.UIComponent494.Button498

COUPLE OF PROBLEMS HERE:
1) I don't have the path to the root (DataEntry0) even though I 
use the standard event.target.
2) This is even a bigger problem, the DOM path 
(ConfirmScreen464.UIComponent494.Button498) is dynamically generated 
(the numbers are dynamically generated) so when I use that path that 
I got during the time I was monitoring the app, when I use my code to 
play the events that very same target does not correspond to the 
popup that the fist event caused. 

I tried using IDs but in Flex I have not found anything like 
document.getElementById() that is available in JavaScript. Any help 
on this will be greatly appreciated.

Thanks

p.s. I looked at the automation library that Flex has (and Mercury 
QTP uses) but that will not work for me.

 



RE: [flexcoders] AS 3.0 event target problem!!!

2008-08-12 Thread Alex Harui
He's surprised that the popup isn't parented by the app.  Popups are
parented by the systemMgr which also parents the app.

 

Id's are per-document (or per-mxml file) so you can traverse documents
and pull objects by their ids.

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Gordon Smith
Sent: Tuesday, August 12, 2008 7:54 PM
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] AS 3.0 event target problem!!!

 

What do you mean by I don't have the path to the root?

 

If you assign an id to each component, the toString() method will use
that instead of a dynamically generated name like Button498.

 

Gordon Smith

Adobe Flex SDK Team

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of zoran_101
Sent: Tuesday, August 12, 2008 4:30 PM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] AS 3.0 event target problem!!!

 

I have an interesting problem regarding event.target in Flex 
2/ActionScript 3.0. I am using the Flex Grocer app in order to try 
something out. I am attaching listeners to all the click events and 
then printing out event.target to keep track of my events and where 
we clicked, nothing revolutionary here very easy stuff. Once I get 
the paths I would like to run code that will execute my steps and 
play the clicks back based on the event.target information that I got 
and I was able to do that except when we have popups. Here is the 
problem:

When I execute a click on a button with event.target =
DataEntry0._UpdateDeleteProd1.Form10.FormItem102.HBox103.Button104 
A poupup appears and then I click on the close button on that popup 
with event.target=
ConfirmScreen464.UIComponent494.Button498

COUPLE OF PROBLEMS HERE:
1) I don't have the path to the root (DataEntry0) even though I 
use the standard event.target.
2) This is even a bigger problem, the DOM path 
(ConfirmScreen464.UIComponent494.Button498) is dynamically generated 
(the numbers are dynamically generated) so when I use that path that 
I got during the time I was monitoring the app, when I use my code to 
play the events that very same target does not correspond to the 
popup that the fist event caused. 

I tried using IDs but in Flex I have not found anything like 
document.getElementById() that is available in JavaScript. Any help 
on this will be greatly appreciated.

Thanks

p.s. I looked at the automation library that Flex has (and Mercury 
QTP uses) but that will not work for me.