I started making a panel for Photoshop using Flash and ran into a small (large) problem:
Do I HAVE to use Flash Builder to make panels for Photoshop? ExternalInterface will not work (like panels used in Flash)? If I have to use Flash Builder, will I loose all the work I did in Flash CS5? I really hope not.
Any information will be appreciated.
\\
I took a look at the sample files. Some have MXML and some do not, which makes me think that you can just use ExternalInterface.call("").
Replies
CSXSLibrary-2.0-sdk-3.4.swc into your Flash project.
Here is a link on how to do that:
http://v2.scriptplayground.com/tutorials/as/Creating-Flash-Panels-for-Photoshop-using-Flash-CS4/
You can folow as well the Panels Develoepr's Guide:
http://www.dev.bowdenweb.com/js/adobe/jsx/ps/cs5-win-panel-developers-guide/documentation/pages/index.html
it is done for Flash Builder but the main part is Action Script so you can integrate that with Flash.
As for the ExternalInterface.call("").I never got it to work with the Panels, I know it works with a flash inside a ScriptUI, but for the panels I've communicated with it by registering an event and using the ExternalInterface.addCallback("PhotoshopCallback", PhotoshopCallback);,
Maybe someone that has more experience with the panels has figured a way to find the panel by scripting and send a call to it.
I have gotten ExternalInterface.call("") to work with Flash itself and Unity, Photoshop seems to be another beast.
I think it's a better and without too much headache solution to just create a independet UI who can stay on top of Photoshop, and communicate with it.
What i found has worked great is actually just make some tools as standalone apps. Python can talk to PS very well over the com interface, with all the same stuff available as the native JS api, than after that i can use something like pySide to use qt4.x as my UI.
Im pretty sure the guys at quxiel do the same, where they got there standalone app in a language that can access the com interface such as c# or python, than in there case they created there own ui toolkit.
Much more flexible UI wise, now if only i was able to do more with the API there are a lot of PS features you can access at all from code.
EDIT:
http://www.polycount.com/forum/showpost.php?p=1671608&postcount=1214
http://www.polycount.com/forum/showpost.php?p=1672118&postcount=1219
http://www.polycount.com/forum/showpost.php?p=1689109&postcount=1231
are you referring to actions made in PS in the actions pallet? I yes, yes you can, the Application Class has a .DoAction() and .ExecuteAction() methods for this.
here is the syntax for doing it.
that would run a action named foo, in a group named bar.
http://www.ps-scripts.com/bb/viewtopic.php?f=26&t=3566
Seems like it could be the version of the CSXS you're using
Thanks everyone for the input, I will get to it again this weekend and hopefully have something worth showing.
Thank you passerby I've actually was thinking about the AM scripting with syntax like this "app.charIDToTypeID( "Mk " )", but I've seen that the .com interface is using the VBScripting an I know I've used this kind of scripting once with VB scripts so it's great that there are no restrictions on what you can do with Python for Photoshop.
Haha well hopefully you get it working