JSFL in Flash CS4: Project Panel Alternative?

September 26th, 2008 by Steven Sacks

I just saw that the project panel has been changed in Flash CS4, and the JSFL commands related to it are gone, as well.

Are there new JSFL API methods that are used with the new project panel? I don't see any API methods for it in the documentation. My Gaia Framework leverages the existing Project Panel in its Scaffolding engine and I need to figure out a CS4-centric way to do it now. What is the alternative in Flash CS4?

One of the things that the old Project Panel allowed was the ability to publish an entire project using project.testProject(). This would publish all of the .fla files in a project without opening them, and finally launch the primary .fla.

With JSFL automation, looping through a list of .fla files, opening them, publishing and closing them was MUCH slower than using project.testProject(). There is no JSFL API equivalent to do what the project panel was able to do.

While many people may not have used the project panel, I found it an invaluable tool when doing JSFL automation. Adobe has removed the ability to publish a Flash file without opening it, which really sucks for automation with JSFL.

Adobe, would you be willing to share the C code that was used by the project panel to publish Flash files without opening them since you're no longer using it?

Posted in Flash, JSFL

15 Responses

  1. Robert M. Hall

    Hey Steven,

    Try dropping Grant Skinner a note – his gProject panel is the built in replacement for the old project panel. I didn't even notice that the JSFL commands associated with the original project panel were gone until you pointed it out. It would have been nice if they could have left those commands in and leveraged them into the new version. If there is no way to do it now, perhaps an update to the panel that exposed maybe via local connection, at least a quick way to iterate through project items, and publish them out might be somewhat helpful and sounds like its the same thing as the slower alternative you mentioned as its not nearly as nice as being able to publish without opening them. Maybe there are some undocumented features.

    Good luck!
    Rob

  2. Josh Tynjala

    I see that there's a new swfPanel type whose instances are accessible through fl.swfPanels. I wonder if the new project panel is available there. Obviously, you'll still need documentation for what you can use via swfPanel.call(), but that's a place to start, at least.

  3. Robert M. Hall

    Hey Steven,

    I also fortgot to mention that perhaps there are some extra functionality documented in the ExtendScript toolkit that offers similar functionality to what JSFL and the old deprecated methods of the project panel offered. Perhaps its worth looking into, as well as Switchboard – http://labs.adobe.com/wiki/index.php/SwitchBoard

    I would be curious to see what that might offer – let us know how you make out.

  4. Philippe

    I already asked this question (you know, when you can ask questions directly to the developers and have a little chance they fix it) and I was answered that we'd have to wait like until CS5.

    IMHO a lot of things feel unfinished in CS4 (too much work on the new GUI?). I'd like to be proved wrong but it looks like Adobe wants to make us pay each year for bug fixes (think of the ridiculous UI bugs in CS3).

  5. Steven Sacks

    I don't think "deprecated" is the right word to use, since that implies it's still available, just not officially supported. They have ripped the Project Panel and all its JSFL functionality out without warning, and replaced it with Grant Skinner's gProject.

    I don't know why they felt the need to take such a drastic measure. It seems like ever since Robert Penner left, JSFL consideration has taken a back seat.

    IMO, it was a mistake to remove the existing project panel without warning or a grace period. If the new project panel API was not going to be available until CS5, then give us at least a little transition time.

    I've basically been put over a barrel here and forced to make my own JSFL project panel in order to support Gaia's scaffolding. This is no small amount of work they're putting on me, and until I do it, Gaia won't work in Flash CS4.

    :(

  6. jesse

    so now that its out any idea of how to get back my cs3 project window i miss it. i used it to batch publish and wish they would have atleast made a check all button clicking off 123 files was 15 min of pure fun then i waited. i ran a test cs3 vs cs4 batch publish same files both with some stuff. so basicly cs3 stuff. 100 files.

    cs4
    took 8 min to check them on
    took 43 min to publish
    cs3
    took 30 seconds to add
    took 28 min to publish

    thanks adobe for making my coffee brake longer im sure my boss loves it. lol

  7. jesse

    ok just ran a better test cause i think my cs4 was cranky cause i was working before the test.

    86 files

    cs4
    252.10
    253.10 fin checking
    001.00 total time

    254.00 publish
    309.20 end
    015.20 total time

    total time 16.2 min
    per file 11.395 sec

    cs3
    313.00
    313.27 add files
    000.27 total time

    315.00 publish
    319.07 end
    004.07 total time

    total time 4.34 min
    per file 3.186 sec

    that's a 357.6585% increase wow nice.
    anyone know how i can just create my own batch publisher that dose what cs3 dose?

  8. Nemo

    meybe use flex sdk?

    fl.trace(fl.flexSDKPath);

    I don't know for 100% if this will work

  9. Savage

    Look at here :
    http://www.iteratif.fr/blog/index.php?post/2008/11/03/Assistants-de-code-pour-Flash-CS3/CS4

    extension for Flash CS3 and CS4 ;)

  10. GrubbySeismic

    I'm not a French-speaker (to any certified degree!) but I think I've found an English translation of Savage's link (Nov 11th):
    http://www.flashguru.co.uk/communicating-between-actionscript-and-jsfl

    As I understand it (AKA what Adobe says what is *can* be capable of) Flex probably has three ways to do the same thing, though I don't know any :(
    As it stands JSFL's FileSystem class looks darned useful; shame I want future-proofing in the project I'm making (i.e any use of it won't work in CS4) :(

  11. GrubbySeismic

    P.S.

    In their semi-lengthy diatribe on JSFL Bugs in CS3, "Josh" writes about something called XFL (that in turn Colin "Genius" Moock has written about).
    JSFL errors article:
    http://joshblog.net/2008/04/07/feature-requests-and-bugs-in-jsfl-for-flash/
    XFL article:
    http://www.moock.org/blog/archives/000269.html

  12. Sean Cooper

    I am really confused by this move to the new project panel. All the dialogs come up wrap inside the panel, thus needing to having it at a lrger size etc. It is really hard to understand how Adobe can let this kind of (fundamental item) go backwards. Are they trying to stop everybody using Flash all together? Great new features, not-so-great changes…

  13. Billigflüge

    The new project panel is a much needed improvement over the last one (I used it about once?). Well done!

    External AS editing support would be nice as the one in Flash isn't the best… I use FlashDevelop.

  14. Jody Brewster

    I created FlashAntTasks as an alternative for the project panel if you have Flex Builder

    http://blog.jodybrewster.net/2009/04/26/flashanttasks-compiling-flash-movies-with-ant/

  15. Bbbent

    fyi for the record, the project panel jSFl features were brought back in the 10.0.2 update to FLash Pro

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.

About Steven Sacks

I am a professional Flash developer with over 13 years of programming experience. I have consulted for high-profile agencies and companies in San Francisco, Los Angeles, Atlanta and New York, and developed numerous award-winning websites and rich internet applications for clients including Adobe, Fox Sports, FX Networks, Anheuser-Busch, GE, DirecTV, ESPN, The Weather Channel, Home Depot, and Coca-Cola.

I am the author of the open-source Gaia Framework for Adobe Flash, which dramatically reduces development time and makes developing Flash sites much easier.