Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FlexSpy will not investigate components inside SwfLoader #12

Open
GoogleCodeExporter opened this issue Mar 20, 2015 · 4 comments
Open

Comments

@GoogleCodeExporter
Copy link
Collaborator

What steps will reproduce the problem?
1. Create a project with a Swfloader and FlexSpy.
2. Load a precompiled swf into this Swfloader.  Eg
swfLoader.load("otherSwf.swf");
3. Run the project, and open FlexSpy.  You will see no information
displayed about the components inside SwfLoader.

What is the expected output? What do you see instead?
I would like to see the entire hierarchy for this swf inside of the
SwfLoader.  Instead I just see the child swfLoader, with only information
about the swfloader, and no information about the components inside.

What version of the product are you using? On what operating system?
FlexSpy 1.3, Windows

Please provide any additional information below.
Great tool - wish it had this additional functionality!
Thanks!
-Weston

Original issue reported on code.google.com by WestonMc...@gmail.com on 26 Oct 2009 at 9:20

@GoogleCodeExporter
Copy link
Collaborator Author

Just figured out the code... it was really simple!  In the computerChildren() 
method
of ComponentTreeItem, simply add this code:

if (component is SWFLoader){

    var swfLoader:SWFLoader = component as SWFLoader;
    var content:SystemManager = swfLoader.content as SystemManager;
    if (content && content.application){
        children.push(new ComponentTreeItem((content.application as Application), this));
    }
}

Original comment by WestonMc...@gmail.com on 26 Oct 2009 at 9:52

@GoogleCodeExporter
Copy link
Collaborator Author

Actually... updated...  The additional code should come before the "add the 
'Standard
Children' code, and should return.  We do not want any 'standard' children 
added for
the SwfLoader, else the FindComponent utility will not work correctly. 

if (component is SWFLoader){
    var swfLoader:SWFLoader = component as SWFLoader;
    var content:SystemManager = swfLoader.content as SystemManager;
    if (content && content.application){
        children.push(new ComponentTreeItem((content.application as Application), this));
    }
    return children;
}

// Add the "standard" children

Original comment by WestonMc...@gmail.com on 28 Oct 2009 at 8:12

@GoogleCodeExporter
Copy link
Collaborator Author

HI All

I found the same issue , but i  added this code into corresponding 
ComponentTreeItem.as. when i compiled, i got new flexspy.swc. when i tried to 
add 
this into my application project lib and run the app. i got an error

---- Illegal override of FlexModuleFactory in mx.core.FlexModuleFactory.

i am using flex sdk 3.2 to compile

Please help me on this

Original comment by shivajid...@gmail.com on 29 Dec 2009 at 2:01

@GoogleCodeExporter
Copy link
Collaborator Author

Thanks Weston, this worked like a champ for me:
if (component is SWFLoader){
    var swfLoader:SWFLoader = component as SWFLoader;
    var content:SystemManager = swfLoader.content as SystemManager;
    if (content && content.application){
        children.push(new ComponentTreeItem(DisplayObject(content.application), this));
    }
    return children;
}

Original comment by danielb...@yahoo.com on 3 May 2010 at 11:49

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant