If you extend or integrate with Creative Suite apps–or if you’d like to–the 2010 Creative Suite Developer Summit may be up your alley. It’s being held in Seattle May 3-6, and topics will range over everything from porting plug-ins to 64-bit, extending Suite apps using Flex and new dev tools (more on that very soon), to using technologies like ePub and Pixel Bender. I’ll on hand to show off a new version of Configurator, and I hope to see you there.
Category Archives: Suite Development
Kuler Killers? New color-picking/sharing panels for Photoshop
ColoRotate is a new color picker panel for Photoshop. The project comes from IDEA, a nonprofit organization that helps improve scientific and artistic literacy. Here’s a quick demo:
The plug-in costs $39. For $49/year, you can also link your plugin to your online account, sync palettes between multiple computers, and share palettes with colleagues, collaborators, or clients.
In a related vein, developer Anastasiy Safari has created MagicPicker, a $7 non-modal color picker/color wheel that builds on his free ColorPicker panel (see my earlier post for details). Here’s a screenshot:

And, of course, don’t forget about the excellent Adobe Kuler, integrated into Photoshop CS4 and other CS4 apps via its own panel (screenshot). Choose Window->Extensions->Kuler to try it out.
WebKit & Creative Suite extensibility
Hey, what if I told you that to offer consistent, Suite-wide extensibility we’d ditched Flash Player and had gone with WebKit instead? Would we hear a bunch of attaboys about open standards, HTML5, etc.? Would Mac aficionados in particular cheer Adobe’s embrace of an open source, largely Apple-driven initiative?
Good, because we are indeed embracing WebKit for extensibility. We just happened to keep Flash as an option, too. (The union of the two is at the heart of Adobe AIR, and that’s what we’ll leverage going forward.) Now, let the touch-of-gray-finding begin…
CS4-style Flex skins available for panel dev
Commenters here sometimes slag the use of Flash panels inside Creative Suite apps, saying that Flash leads to poor UI. These comments confuse the technology with how it’s been used. Unfortunately it’s true that some SWF panels (example) have been poorly done.
Endeavoring to drive more consistency, the Adobe Experience Design & developer support teams have created a set of “Scope Skins” for use in CS4 panels. According to the download page,
Scope Skins (for Flex Builder 3) were created to skin Adobe Flex apps to provide the same UI as a native Creative Suite panel. This was done with little impact to the functionality of the standard Flex 3 components.
If you’re creating panels for use in Photoshop and/or other Suite apps, please take a look at these skins and let us know what you think.
MAX session: How to Write a Plug-in for Photoshop
Next Monday from 5:00-6:30pm at Adobe MAX, Mark Niemann-Ross will be hosting an interesting session:
This hands-on session will walk you through the process of creating a Flex plug-in for Photoshop. We’ll start with a basic “hello world” shell, add a Pixel Bender filter, and then integrate an online service. You get to take your work home with you and show your mom!
More new PS panels: Sharpening, blending
Photographer/coder Glenn Mitchell has posted a new set of sharpening actions panels for use with Photoshop CS4. (He’s excited about scripting & panel development for PS: “From a programmer’s point-of-view, Photoshop CS4 offers extraordinary opportunities to modify and extend the user’s experience with Photoshop… Well done!”)
Elsewhere, Mike Hale took the blending modes panel I mentioned yesterday and upgraded it* to handle multiple selected layers at once. You can download it here (see also Mike’s release notes).
On a related note, in case it’s useful, here’s a list of blending mode keyboard shortcuts.
* Potentially interesting explanation: You can use Configurator to open up & remix any Configurator-made panel: just double-click the .GPC file in the exported panel’s folder (Photoshop CS4/Plug-Ins/Panels/{your panel’s name}/). That is, the XML file used by a panel at runtime equals the source code for that panel. Anyway, I suggested that Mike remix the panel by applying his code to the buttons.
Simple, useful extension panels for PSCS4
- Edd Fahy has created a Lorem Ipsum text generator panel.
- This Blending Mode Panel offers one-click assignment of blending modes to selected layers. (Doesn’t work on multiple selected layers at once, though; rats.)
Know of others? Send me links, thanks.
New tutorials from Dr. Woohoo
Our friend Dr. Woohoo has posted a new set of tutorials on extending Photoshop & Suite apps using Flash, Flex, and scripting. Check ’em out and let me know if/when you create some cool extensions.
For links to many more tutorials & resources, see the Suite Development category.
GridIron Flow now shipping
It was my pleasure to help the GridIron Software folks officially launch Flow this morning. I got to reveal a previously unannounced feature that’s dear to my heart: Flash panels (screenshot) that run inside CS4 applications*, offering immediate context for your file (what files went into it, what files are derived from it, how long you’ve spent working on it, etc.).
If you haven’t seen Flow, check out this 2-minute overview:
For a deeper dive, Dave Cross from PhotoshopUser TV & Layers Magazine has created a solid 10-minute tour that shows the Flash panels in action (also available on Vimeo).
A single-user license for GridIron Flow is $299, and a three-user license costs $399, via the GridIron store. [Update: Use promo code “NACKONADOBE” to save $50.]
[Previously: GridIron Flow saves Adobe designer’s bacon]
*Photoshop, Illustrator, InDesign, Flash, Dreamweaver, and Fireworks
A special GridIron event on Monday
By now you’ve probably heard my enthusiasm about GridIron Flow–a very cool workflow management tool. If you have time & want to see more, come to a special event on Monday (June 29th at 12pm EST; time zone calculator). I’ll be making an appearance* to show off some slick Creative Suite integration the GridIron guys have put together. Hope you can join us.
* Caveat: If Project El Segundo launches early, all bets are off!
New AspectFrame Flash panel: tester wanted
Photographer & developer Thomas Menath has whipped up AspectFrame, a Flash panel for Photoshop CS4, and he’d like to get help testing it. (The Flash UI can also run as a dialog inside Photoshop CS3.) According to Thomas,
This tool is just for drawing rectangular frames around images and optional adding additional space to get the standard ratios of 4:3 and 3:2 with an optional cutting line.
For more info & to download the panel and submit bugs/feedback, go to the product page.
Creative Suite dev summit reg opens
Registration for the 2009 Creative Suite Developer Summit (May 11-15 in Seattle) is now open. Check out the site for details, or watch this brief overview from developer evangelist Mark Niemann-Ross. He writes,
This isn’t just for commercial developers – if you are working in a “captive” IT department, and trying to determine the best way to automate your production tasks, the developer summit will be a jump start for your efforts.
The summit is free: you only pay for your transportation, hotel and meals. Due to venue size, however, we are limited to 200 people live at the event. MNR writes, "If you can’t attend live, you can always watch the Connect presentations – but you’ll miss out on meeting your peers, and the Adobe Staff."
New Woohoo tutes
Dr. Woohoo is back with more useful tutorials for Flash/Suite scripters:
PatchPanel: Flash panels for multiple CS applications
Follow along with this tutorial to expand on what we created in the previous tutorial, with the objective of using a framework that embraces running our Flash plug-in in multiple Creative Suite applications (Photoshop and Illustrator). When we are done, our Flash plug-in will work in all three CS applications using code that is appropriate for each host application
PatchPanels: Integrating your ExtendScript
Follow along with this tutorial to create a simple Flash plug-in that gets the RGB, CMYK and HSB values of the foreground color in Photoshop CS4.
Incidentally, if you’re interested in how Adobe’s app automation layer came to be (and where it might be headed), check out Drew’s 2 Interviews: The guys behind ExtendScript ToolKit, SwitchBoard + PatchPanel.
The ins & outs of extending CS4
It’s never been this easy–not even close–to extend Photoshop and the Creative Suite to do new things. You can now write cross-platform, network-aware code that can drop into nearly all the CS4 applications, and you can use AIR applications to drive Suite apps. If you’re a developer, this can mean new opportunities to solve problems and make money.
To learn more about what’s possible in CS4, check out Mark Niemann-Ross’s presentation from Adobe MAX. It’s an hour long, but I think you’ll find it clear and informative–good stuff to watch over lunch. I’m also drawing together related resources in a new "Suite Development" category on this blog.
Extending Photoshop via SWF Panels: Tutorials
If you’ve got some JavaScript/Flash/Flex chops and are looking for a mental exercise over the little holiday, heads up: Our friend Dr. Woohoo has been busily creating a large series of tutorials on how to develop AIR applications and Flash panels that can communicate with and drive Photoshop and Illustrator CS4. The first two tutorials are online now. Drew (the doc) writes:
Enhanced Hello World
Follow along with this tutorial to create a Hello World Flash panel for Photoshop. In this exercise, you will create a Flash plug-in within a Flex Builder MXML project. When you run the Flash panel within Photoshop, it will send code to Photoshop that, when executed, will display an alert dialog box with a message.Integrating your ExtendScripts
In order to communicate to the host application (Photoshop or Illustrator CS4) using the CSXSLibrary SWC, our code is sent as a string message via BridgeTalk, which will then be evaluated once it reaches the host application. Not a big deal if we’re only sending a few lines of code at max, but when our ExtendScript code is lengthy, we would either have to manually wrap each line of code up as a string or use the work-around process we will use in this tutorial to simplify our life.
On a related note, Drew recently appeared on Inside Digital Design Radio & TV, talking about how he uses programming to do things like design custom kimonos:
Drew Trujillo, Designer–better known as Dr. Woohoo!–joins hosts Scott Sheppard and Gene Gable this week to share his background and an inside look at his amazing design work. Fusing the best of art, technology, and design Dr. Woohoo’s technical and programming background help him to bring his visions to life.
CS4 color picker now does CMYK
Responding to reader feedback, developer Anastasiy Safari has added CMYK support and other tweaks (e.g. resizability) to the color picker panel I mentioned the other day. Way to go, Anastasiy!
You can download the panel here, unzip the file, and then drag the contents of the file into your "Adobe Photoshop CS4/Plug-Ins/Panels" directory. (Don’t forget to delete the old one if you installed it earlier.) After you relaunch Photoshop CS4, the panel will appear under Window->Extensions.
Oh, and–indulging my inner 8-year-old for a second–to all those folks who were spraying bile at the idea of Flash panels not so long ago: "You like apples? Well how do you like them apples?". 😉
Photoshop gets a new color picker panel
When painting in Photoshop, I’ve always found the little color ramp area on the Color panel (screenshot) pretty cramped. At just 190×15 pixels, it occupies a princely 0.16% of the screen real estate on a 17″ monitor (or 0.07% on 30-incher!), and yet you’re supposed to use it to choose among 16.7 million colors. The main Photoshop color picker is of course much larger and more powerful, but using it requires trips into a modal dialog box.
Though we’ve yet to offer the color picker dialog in panel form, developer Anastasiy has created a SWF panel form of the picker (screenshot) that you can download for free. Very cool!
I’ve written to Anastasiy to suggest a few tweaks, and I hope this is the first of many alternate color pickers for Photoshop. (We’re also talking to Viktor Goltvyanitsa about bringing his ColorPalette panel–now part of Fireworks CS4–to PSCS4.) Lastly, we’ll work to make sure these components can be dropped into Configurator panels.
PS–A note on installation: Drop the contents of the ZIP file into your "Adobe Photoshop CS4/Plug-Ins/Panels" directory, then look under Window->Extensions. All SWF files you drop into Panels or its subfolders appear under the Extensions submenu.
Use Flex Builder to extend the Suite
We’re working to make it easier & easier for Flash/Flex developers to extend the Creative Suite. The new PatchPanel technology allows developers to use ActionScript to access the scripting DOM of a CS host app.
Developer Dr. Woohoo has been working closely with the development team for many months & points out some of PatchPanel’s advantages:
- It’s easier to write code because the DOMs for Photoshop, Illustrator, InDesign and ExtendScript are imported directly into Flex Builder. That means all the benefits of developing SWFs and AIR applications in FlexBuilder can now be applied to the development process of SWF panels (e.g., code-hinting, code-completion, refactoring, etc.).
- Debugging is on par with developing within Flex Builder. We can actually run the SWF within the Creative Suite host application and debug directly within Flex Builder. That’s dramatically significant.
- We can develop for both platforms using the same code base.
- We can develop for PS/AI/ID using the same framework (not the same code, though, because of the sometimes dramatic differences between the DOMs).
- PatchPanel is free.
PatchPanel creator Bernd Paradies also cites the following:
- You can copy and paste your old ExtendScript scripts into your Flex project, build them, and run them.
- You can write PP code that targets other CS hosts (e.g., Photoshop.alert() in InDesign brings up Photoshop).
- PatchPanel comes with complete LiveDocs-style documentation for ID, PS, AI, Bridge, PatchPanel, and SwitchBoard.
- The PatchPanel CS4 examples come with MXI samples that make it really easy to create MXPs that you can install via Extension Manager 2.x.
- PatchPanel comes with a special version of SwitchBoard, which allows you to do asynchronous communication with other CS apps without having to go through the host.
- You can use PatchPanel in AIR applications for smaller scripts.
For a deeper dive, check out Bernd’s video demo & overview presentation. Also look for Dr. W’s MAX presentations & some new tutorials to emerge soon. In the meantime, developers can download PatchPanel from Labs and discuss it on the Labs forum.
Tutorial: Creating Flash panels for Photoshop
Matthew Keefe has posted a brief tutorial on how to create your first Flash panel for Photoshop CS4. To load any SWF in Photoshop as a panel, just drop it into the Adobe Photoshop CS4/Plug-Ins/Panels directory, then launch PS and look under Window->Extensions. To make a SWF communicate with Photoshop via scripting, however, a bit more work is required, and that’s where Matthew’s tutorial comes in. If you create something cool, or if you see interesting SWF panels popping up, please let us know.
Related:
- The Photoshop Panel Developer’s Guide, including sample code, is available for download from the Photoshop Developer Center
- Lee Brimelow shows a similar process for extending the Flash authoring tool via SWF panels.
- The Adobe Configurator panel-making tool remains on track to be posted to Labs in the next couple of weeks
Introducing Adobe Configurator
By now you’ve probably heard me talk many times about our desire to better manage the complexity and power of Photoshop. The very general interface that Photoshop presents is incredibly flexible, but it can be overwhelming, and it doesn’t do much to show you just what you need when you need it. We can do better.
It should be possible to:
- Make Photoshop “everything you need, nothing you don’t”
- Navigate Photoshop as task-based pieces (think workspaces on steroids), each showing only what you need for the task at hand
- Let anyone remix the Photoshop UI to fit their needs
- Make it drop-dead easy to share these remixes
Adobe Configurator (screenshots 1, 2), a new utility that’s due to ship on Adobe Labs around the end of the month, is a key part of our strategy. Configurator makes it easy to snap together your own Photoshop panels (a.k.a. palettes). Think of Configurator as a box of Legos–an app that lets you drag and drop all the tools and menu items in Photoshop, call actions & scripts, and add widgets (images, videos, other SWFs, etc.). I’ve posted a 10-minute demo on Russell Brown’s site. (If you don’t have QuickTime installed, you can watch it on YouTube as well, though the compression quality there is pretty abysmal.)
We’ve shown a beta of Configurator to members of the press & have been getting great responses:
- Imaging Resource: “Dead easy. But we expected it to be easy. What we didn’t expect was just how useful the little panel we built would actually be.”
-
TG Daily: “[I]t is very intuitive to use and enables users to integrate virtually any function of Photoshop in a custom panel.”
- Outback Photo: “We personally love the new Adobe Configurator 1.0… Using the new Configurator is as easy as gets.”
We’re putting the finishing touches on Configurator right now, so look for it on Labs in the next few weeks. [Update: It’s live now!] (I’ll of course post news about it here.) We look forward to hearing your thoughts & using your feedback to move the tool forward.
[Updates: Sorry, I forgot to mention that Configurator requires Photoshop CS4. It’s building on top of the Flash panel extensibility system that’s new to CS4. We wanted to make sure people could create for that system without having to be coders. If you do write ActionScript, however, you can go much further using Flash and/or Flex. You can create independent SWF panels, and you can incorporate your SWFs into Configurator-made panels via drag and drop, just as easily as I added an image in the demo.]
PS–If you’d like to be able to configure other applications (Illustrator, InDesign, Flash, Fireworks, etc.) via Configurator, please make a little noise. We’ve designed the tool such that the other apps just need to supply an XML file that lists their menu items plus the associated scripting commands, as well as PNGs for their tools. Hearing your interest would help the PMs of other apps raise the priority of supplying those assets & testing Configurator.
Drive the Creative Suite through AIR
I’m pleased to announce that SwitchBoard, a technology for driving the Creative Suite family of products using applications running on Adobe AIR, is now available from Adobe Labs. As Dr. Woohoo explains, "SwitchBoard is a Flex library that allows you to extend an AIR app by giving you access to the ExtendScript DOMs for the Creative Suite apps. Your AIR app can now easily establish two-way communication with Photoshop, Illustrator, InDesign and Bridge." According to the Labs page,
Adobe AIR developers can create applications that participate as first class citizens in creative workflows. Each SwitchBoard solution consists of an AIR application written for SwitchBoard, JavaScripts, and the SwitchBoard service that delivers the scripts to the Creative Suite applications. AIR developers only need to include a Flex library called SwitchBoard.swc in their projects in order to send and receive scripts to and from Creative Suite applications.
SwitchBoard brings together the power of the automation in the Creative Suite applications with the potential for third parties to extend the creative process with new applications produced using AIR. The result is an extensible, powerful, cross-platform environment that can quickly adapt to today’s rapidly changing creative workflows.
Thanks to resident brainiac Bernd Paradies for making it happen. With the ability to create desktop-based Flash interfaces for the Suite, I’m looking forward to seeing what developers can devise, and I look forward to sharing some examples here soon. (Oh, and Bernd has more good tricks up his sleeve, too.)
Dr. Woohoo & the future of the Suite platform
We want to make Photoshop and the whole Creative Suite much more flexible, extensible, and connected. Therefore, we’re looking at letting upcoming versions of Photoshop and–as far as I know–all Creative Suite applications be extended via SWF panels (palettes) created in Adobe Flash or Flex.
Of course, this can’t come as a surprise. I mean, how brain-dead would Adobe have to be not to do this? The appeal of extending one’s app with lightweight, cross-platform, network-aware widgets is so obvious that we were busy building support in my first app some eight years ago–and we had to build our own Flash Player clone to do it! The CS3 versions of Flash, Fireworks, Dreamweaver, Illustrator, Bridge, and Soundbooth can already be extended in this way, and Photoshop and other apps can run SWFs in a scripting dialog.
Our task now is to implement support in as consistent a way as possible across the Suite. Today, developing for, say, the Photoshop/Illustrator/InDesign trio would mean writing six chunks of platform-specific C code, delivering three different user experiences. In the near future, by contrast, you should be able to write one chunk of code that extends each app with consistent, non-modal (panel-based) functionality. Want to add peer-to-peer notes, Adobe kuler integration, video tutorials, and more to the Suite in one shot? We aim to make it easy.
I believe the results will be transformative. When I talk about the need to make Photoshop radically more configurable–letting it be "everything you need, nothing you don’t," person by person, moment by moment–I’m placing a lot of hope in easy panel configurability that can reshape workspaces and workflows.
We’ve hired a great developer named Drew Trujillo–better known as Dr. Woohoo–to help prime the pump. In addition to After Effects<->Flash integration tools, he’s mashed up Illustrator with Flickr, and now he’s busily crafting fun new projects that we look forward to showing off a bit further down the line. In the meantime Matthew Fabb briefly covers a sneak peek (showing Adobe AIR driving Photoshop) that Drew gave at the FITC show in Toronto.
If using Flash/Flex/AIR to extend & transform the Creative Suite is up your alley, drop me a line. Seriously, we should talk. I think you’ll like what’s cooking.
Dr. Woohoo & the future of the Suite platform
We want to make Photoshop and the whole Creative Suite much more flexible, extensible, and connected. Therefore, we’re looking at letting upcoming versions of Photoshop and–as far as I know–all Creative Suite applications be extended via SWF panels (palettes) created in Adobe Flash or Flex.
Of course, this can’t come as a surprise. I mean, how brain-dead would Adobe have to be not to do this? The appeal of extending one’s app with lightweight, cross-platform, network-aware widgets is so obvious that we were busy building support in my first app some eight years ago–and we had to build our own Flash Player clone to do it! The CS3 versions of Flash, Fireworks, Dreamweaver, Illustrator, Bridge, and Soundbooth can already be extended in this way, and Photoshop and other apps can run SWFs in a scripting dialog.
Our task now is to implement support in as consistent a way as possible across the Suite. Today, developing for, say, the Photoshop/Illustrator/InDesign trio would mean writing six chunks of platform-specific C code, delivering three different user experiences. In the near future, by contrast, you should be able to write one chunk of code that extends each app with consistent, non-modal (panel-based) functionality. Want to add peer-to-peer notes, Adobe kuler integration, video tutorials, and more to the Suite in one shot? We aim to make it easy.
I believe the results will be transformative. When I talk about the need to make Photoshop radically more configurable–letting it be "everything you need, nothing you don’t," person by person, moment by moment–I’m placing a lot of hope in easy panel configurability that can reshape workspaces and workflows.
We’ve hired a great developer named Drew Trujillo–better known as Dr. Woohoo–to help prime the pump. In addition to After Effects<->Flash integration tools, he’s mashed up Illustrator with Flickr, and now he’s busily crafting fun new projects that we look forward to showing off a bit further down the line. In the meantime Matthew Fabb briefly covers a sneak peek (showing Adobe AIR driving Photoshop) that Drew gave at the FITC show in Toronto.
If using Flash/Flex/AIR to extend & transform the Creative Suite is up your alley, drop me a line. Seriously, we should talk. I think you’ll like what’s cooking.