Requirements

Prerequisite knowledge

Knowledge of Flex and/or ActionScript

User level

All

Note: To access CS Extension Builder, you need to be a member of the Adobe Enterprise Developer Program.

Introduction

Creative Suite Extension Builder 1.0 and Creative Suite SDK 1.0 represented major releases for the product team, third-party developers, and the Creative Suite extensibility story. For the first time, developers could use a simple yet powerful Integrated Development Environment (IDE) to easily and quickly build Flash panels that extend the functionality of the Creative Suite. Since then, developers have created a wide range of CS extensions using those tools, and we've received a lot of feedback about where we should focus next.

Just 12 months after this major release, we're thrilled to deliver another release that contains a number of significant new features and workflow enhancements, and takes the 1.0 release one major step forward. With CS Extension Builder 1.5 we want to:

  • Enable developers to easily build and package powerful hybrid extensions that combine the CS SDK and native plug-ins
  • Ease the pain of integrating Adobe XMP metadata in the developer workflow
  • Support a wider range of data services backend systems
  • Improve management of ActionScript libraries

This article introduces you to the variety of new features and workflows available in CS Extension Builder 1.5, and provides you with additional links and resources to help you get started.

Develop CS extensions for multiple versions of Creative Suite

CS Extension Builder allows you to select the specific version (or range of versions) of Creative Suite that your CS extension will run into. When creating a new CS extension project, you can select the minimum and the maximum version of Creative Suite that your extensions are compatible with, for example CS5 to CS5.5. Based on your selection, CS Extension Builder includes the appropriate versions of the CSAW libraries in your project.

If you have selected more than one CS version and both versions are installed, you can run, debug, or attach your extensions in either CS5 or CS5.5. For more information on the versioning feature in CS Extension Builder 1.5, read Zak Nelson's article on the Adobe Developer Connection site.

Note: All existing CS extension projects developed for CS5 are automatically updated to run with CS5.5 when opened and compiled with CS Extension Builder 1.5.

Improved support for hybrid extensions

Hybrid extensions combine native C++ code with ActionScript code. These extensions are very powerful, because they let you leverage both the power of the native code and create rich and engaging experiences within Creative Suite. CS Extension Builder 1.5 has major improvements in the support of hybrid extensions. Specifically:

  • You can define a CS extension project as a hybrid extension on the Hybrid tab of the Bundle Manifest Editor. This creates the appropriate folder structure within the project and generates the extension MXI file.
  • You can use both a text editor and a graphical interface to edit the MXI file (set this on the Hybrid tab of the Bundle Manifest Editor).
  • When exporting the hybrid extension, CS Extension Builder bundles all appropriate files into a ZXP file ready for deployment.
  • If the hybrid extension targets to more than one version of Creative Suite, the ZXP file created is installable in both versions of Creative Suite.

For more information on hybrid extensions, read Maria Gutierrez's article Developing Hybrid Extensions with CS Extension Builder 1.5.

Live Deployment and update of ActionScript libraries

CS Extension Builder 1.5 contains a new deployment and update mechanism for ActionScript libraries. This mechanism is available from the CS Extension Builder Libraries tab in the Project Properties window. Using this mechanism, we can provide new libraries and provide new releases of existing libraries, allowing us to provide bug fixes or new features without undertaking a complete update of CS Extension Builder. As a developer, you retain full control of the available versions and what gets updated.

Profiling your CS extensions directly inside Creative Suite applications

CS Extension Builder 1.5 lets you profile the performance of your extension running within the Creative Suite application. This is invaluable for discovering how to optimize your extension's performance. To access the profiling feature, right-click your CS Extension project, and choose Profile As > [Adobe Product Name].

Note: The Profiling feature requires Flash Builder Premium (standalone or plug-in).

Developing for custom XMP namespaces

The new XMP Namespace Designer feature included in CS Extension Builder 1.5 lets you define custom XMP namespaces and generate Flex libraries and XMP FileInfo panels. To create a new XMP Namespace project, make sure that you're in the CS Extension Builder perspective and choose File > New > XMP Namespace Designer Project.

Use the XMP Namespace Designer editor to define your custom namespace. For each property in your custom namespace, you can specify values such as name, type, and validation rules. The XMP Namespace Designer generates a Flex library for your namespace, which you can integrate into your CS extension, or Flex and standalone AIR applications. The generated library lets you easily access and update the properties of your namespace. In addition, if you need to retain business-critical information in the XMP packet of assets, we've provided the ability to encrypt the contents of your custom namespace. If you've installed the new XMP FileInfo feature of Extension Builder, you can also generate an XMP FileInfo panel project for your namespace.

We consider this a very powerful feature that mitigates a lot of the pain of dealing with XMP. Some of the major benefits of the XMP metadata platform are:

  • Data can be persistent throughout the different stages of a user's workflow and across different CS applications.
  • Data added to the files is accessible inside and outside of CS applications.

For more information on XMP Namespace Designer and XMP FileInfo features, read Fraser Gregor's article on Handling XMP Metadata with CS Extension Builder 1.5.

Note:Our product team has put great effort into enhancing CS Extension Builder 1.5 with a large feature set of XMP functionality, and we want to ensure that we meet the future needs of the developer community. We'll be releasing this functionality in BETA form. We need your feedback on this feature set to determine future development in this area.

Creating custom Adobe XMP FileInfo panels

XMP FileInfo panels are Flex applications that provide a standard UI for editing XMP metadata in Creative Suite documents. You can access these panels by choosing File > File Info in any Creative Suite application.

CS Extension Builder 1.5 contains a new XMP FileInfo feature that makes it easy to develop your own FileInfo panels, and export them for deployment. At any point during development, you can run your FileInfo panel within CS to see how it looks to the end user.

To create a FileInfo panel project, go to the CS Extension Builder perspective and choose File > New > XMP FileInfo Project. You can also generate XMP FileInfo panel projects for custom XMP namespaces using the new XMP Namespace Designer feature.

Content Management Interoperability Services (CMIS) ActionScript library

One of the core value propositions of CS Extension Builder is the ability to develop panels that integrate with backend systems. One of the examples we showed in our 1.0 release was integration with LiveCycle DataServices. CS Extension Builder 1.5 takes this integration one step further by including a new ActionScript library. The CMIS ActionScript library enables developers to build CS extensions that can interact with content management systems supporting the CMIS specification. This library is available on the CS Extension Builder Libraries tab in the Properties window.

Where to go from here

For more information on the new features of CS Extension Builder 1.5, Creative Suite SDK, and the capabilities of the Creative Suite Extensibility Framework, check out the Creative Suite Developer Center.

We hope that you're as excited as we are with this new release of CS Extension Builder. With the addition of the new features, we've made great progress toward solidifying the development experience for creating CS extensions. Give it a try and don't hesitate to share your feedback with the product team!