SQLite is a mostly ACID-compliant relational database management system contained in a relatively small (~500kB) C programming library. The Adobe AIR runtime includes the SQLite embedded database for use by Adobe AIR applications. This allows applications to run and store data locally and or synchronise the datastore with online repositories.

Applications that depend on user input to create a SQL statement — concatenating the user input to the SQL query — can become vulnerable to SQL Injection attacks, much like those common to web applications.

SQL Injection is a technique that exploits a security vulnerability occurring in the database layer of an application. The vulnerability is present when user input is either incorrectly filtered for string literal escape characters embedded in SQL statements or user input is not strongly typed and thereby unexpectedly executed.

Fortunately, there is a simple solution to the problem: use parameterised SQL Statements. Parameterised statements not only make your applications more secure and run more efficiently, but they also enable you to use objects, rather than literal values, in your queries. SQL injection can’t happen because the parameter values are treated explicitly as substituted values, rather than becoming part of the literal statement text.

Parameters in a SQL statement can be either named or unnamed. Below are examples of both types of statement in ActionScript and JavaScript.

Named Parameters

A named parameter has a specific name that is used to match the parameter value to its placeholder location in the SQL statement text. A parameter name consists of the colon (:) or an at (@) character followed by the variable’s name:

ActionScript 3

var conn:SQLConnection = new SQLConnection();
var stmt:SQLStatement = new SQLStatement();
stmt.sqlConnection = conn;
stmt.text = "INSERT INTO user VALUES(@title, @firstname, @lastname)";
stmt.parameters["@title"] = "Mr";
stmt.parameters["@firstname"] = "Simon";
stmt.parameters["@lastname"] = "Whatley";
stmt.execute()

JavaScript

var conn = new air.SQLConnection();
var stmt = new air.SQLStatement();
stmt.sqlConnection = conn;
stmt.text = "INSERT INTO user VALUES(@title, @firstname, @lastname)";
stmt.parameters["@title"] = "Mr";
stmt.parameters["@firstname"] = "Simon";
stmt.parameters["@lastname"] = "Whatley";
stmt.execute()

Unnamed Parameters

As an alternative to using explicit named parameters, you can also use implicit unnamed parameters. To use an unnamed parameter you simply designate a parameter in the SQL statement using a question mark (?) character. Each parameter is assigned a numeric index, according to the order in which the parameters appear in the SQL statement, starting with index 0 (zero) for the first parameter.

ActionScript 3

var conn:SQLConnection = new SQLConnection();
var stmt:SQLStatement = new SQLStatement();
stmt.sqlConnection = conn;
stmt.text = "INSERT INTO address VALUES(?, ?, ?, ?)";
stmt.parameters[0] = "123 Main Street";
stmt.parameters[1] = "Sometown";
stmt.parameters[2] = "12345";
stmt.parameters[3] = "USA";
stmt.execute()

JavaScript

var conn = new air.SQLConnection();
var stmt = new air.SQLStatement();
stmt.sqlConnection = conn;
stmt.text = "INSERT INTO address VALUES(?, ?, ?, ?)";
stmt.parameters[0] = "123 Main Street";
stmt.parameters[1] = "Sometown";
stmt.parameters[2] = "12345";
stmt.parameters[3] = "USA";
stmt.execute()

Note: Use clearParameters() to empty the statement parameters array; e.g. stmt.clearParameters().

Advantages

  1. Performance - A SQL statement that uses parameters can execute more efficiently compared to one that dynamically creates the SQL text each time it executes. The performance improvement is because the statement is prepared once and then executed multiple times using different parameter values, without needing to recompile the SQL statement. A comparison can be draw with database stored procedures.
  2. Data Typing - Parameters are used to allow for typed-substitution of values that are unknown at the time the SQL statement is constructed. The use of parameters is the only way to guarantee the type (storage class) for a value passed to the database. Using paramters therefore, implies better performance and security. When parameters are not used, the runtime attempts to convert all values from their text representation to a type based on the associated column’s type.
  3. Security - The AIR application is not vulnerable to SQL injections so common to web applications.

Today ColdFusion moved into the next stage of its life and became a teenager, hopefully not a precocious one!

Happy 13th Birthday ColdFusion.

Adobe ColdFusion has had a long and illustrious life. The first version of ColdFusion–written almost entirely by one person, JJ Allaire and then called “Cold Fusion”–was released in 1995. This first version, although revolutionising how web applications were built, was primitive by modern standards, doing little more than database access.

Although originally built in Visual C++, Allaire, around 1999, took the decision to rewrite the entire ColdFusion engine in Java–a project named “Neo”–which would allow for greater portability among different platforms. The rewrite, released under the monicker MX 6, would prove to be somewhat problematic and a wholescale update to the version resulted.

In 2001 Allaire was acquired by Macromedia. This union brought with it the integration of Macromedia’s Flash platform via Flash Remoting; a huge step towards rich Internet applications.

In 2005 it was the turn of Macromedia to be acquired and they merged with Adobe. A period of instability in the ColdFusion world resulted, brought about by the knowledge that Adobe was a company that developed tools, not programming languages. However, following a successful release of ColdFusion 8 in 2007 and the announcement that a version 9 would be developed, code-named “Centaur”, fears about ColdFusion’s future have subsided–albeit the continued debate over “ColdFusion is Dead” remains boiling in the background.

The primary distinguishing feature of ColdFusion is its associated scripting language, ColdFusion Markup Language (CFML), which compares favourably to its rivals, JSP, ASP.NET, or PHP and resembles HTML in syntax. “ColdFusion” is often used synonymously with “CFML”, but it should be noted that there are additional CFML application servers besides ColdFusion, and that ColdFusion supports programming languages other than CFML, such as server-side Actionscript and embedded scripts that can be written in a JavaScript-like language, known as CFScript. Adobe ColdFusion also includes native support for Flex, PDF, Verity and the embedded Derby database amongst a host of other features.

ColdFusion 9 is set to be an exciting release, much like its predecessor, with more features added to the core tag set, whilst also integrating other technologies such AIR and Hibernate.

Exciting times lay ahead. Let’s hope Adobe takes full advantage with such a fine product.

See Also:

In the past, the US has held a near monopoly not only in ColdFusion-based user groups, but also conferences, with CFUnited, cf.Objective() and the more general Adobe MAX leading the way.

But the landscape is changing and the UK is challenging for its share of the scene. 2008 is seeing a renaissance in the ColdFusion world following on from the buzz created around the release of ColdFusion 8 in 2007 and the eagerly anticipated future release of ColdFusion, codenamed Centaur. This buzz has resulted in not one but three conferences for 2008: CFUnited Europe was held in London in March, Scotch-on-the-Rocks was held in Edinburgh in June and soon we will see the return of CFDevCon.

The inaugural CFDevCon one-day-conference was held back in 2006, in Croydon, but in September 2008 it is heading down to what is arguably one of the creative capitals in the south of England, Brighton. The conference has not only become a two-day conference, but its scope has moved beyond simply Adobe-based products, with the introduction of Microsoft-based technologies, specifically IIS7.0, Silverlight and SQL Server 2008 and technology-agnostic topics such as Regular Expressions, Search Engine Optimisation (SEO) and Accessibility.

As with all great conferences, CFDevCon has a great line-up of speakers with the likes of Sean Corfield, Hal Helms, Peter Elst, Peter Bell, Aral Balkan and Simon Bailey, to name a few, all presenting sessions.

So, lets get excited people, support the conferences and user groups and evangelise ColdFusion.

The Adobe ColdFusion 8 Developer Exam arrived earlier this year and it is about time I took it. But like Ben Nadel, the exam scares me! Why? Because there is so much more to know. With the introduction of new AJAX tags, native JSON support, .NET integration, image manipulation, threading, interfaces, not to mention full PDF integration, the presentation builder and across the board enhancements, there are a lot of new things to know.

If it wasn’t for the fact that I am also an Adobe Certified Trainer, I would probably shy away from taking the exam, since, apart from showing that I have gained an Advanced level of knowledge of what’s available in the language/application, is it really relevant?

Now for the moan…

I like to prepare for exams properly. I studied hard for the CFMX6.1 and CFMX7 exams because I wanted to achieve the best result I possibly could. I don’t much like the stigma of mediocrity, so I try hard. But with the advent of the ColdFusion 8 exam, Adobe aren’t making life any easier and this isn’t because of the increased number of features. It’s because they are not supporting their exam with the appropriate study material.

In the past, Ben Forta had been commissioned to create the official developer study guide. However, according to Ben, this appears no longer to be the case (at least for now).

It beggars belief that Adobe release a product, then release a related exam, but do not have the will to produce a study guide. Yes we have the Web Application Construction Kit and Livedocs, but for me, they are either not succinct enough or not available in print. It makes it tough to study.

Clearly there is a cost issue, but Adobe Publishing can be smarter these days with their print-runs. Indeed they could even allow developers to choose between a print and PDF versions, much like Manning and many other publishers.

Perhaps Ben is busy. Surely not! But if it is the case, I’m sure there are a number of his peers that could take up the mantle. Cue…

A ray of hope…

There is a small ray of hope. There is likely to be an updated version of the popular CFMX Exam Buster by CentraSoft. Brian Simmons is working hard on the latest version.

CFEclipse is a community project that builds on the open-source Eclipse framework to deliver expert, code-centric developers a new option for ColdFusion development. CFEclipse provides Eclipse with an outline view, a CFC (ColdFusion component) view, code completion (code hinting), syntax highlighting text editors for CFML and CFC files, and many more ColdFusion-specific features.

Eclipse can be downloaded from http://www.eclipse.org and CFEclipse from http://www.cfeclipse.org.

One thing CFEclipse does not have is WYSIWYG ability. Its complete focus is on writing ColdFusion code (so-called hand coding) and building tools that help you write code. If you do a lot of visual or page-layout development, for instance, if you rely heavily on drag-and-drop tools, wizards, or the Design view in Macromedia Dreamweaver, CFEclipse may not be the tool for you.

However, to make your life easier when coding, below is a list of keyboard shortcuts that make common tasks available in a couple of keystrokes:

Keys Description
Key Shortcuts
Ctrl+Shift+L Key Assist (dialog windows)
Alt+Shift+Q Show View
Comments
Ctrl+Shift+M ColdFusion Comment <!--- --->
Ctrl+Shift+C Context sensitive comment
Surround Selection
Ctrl+3 Pound/hash marks ##
Ctrl+’ Single quotes ''
Ctrl+Shift+” Double quotes ""
Ctrl+Shift+O <cfoutput></cfoutput>
Ctrl+Shift+D <cfdump var="##">
Ctrl+Shift+R <cfscript></cfscript>
Insert
Ctrl+Enter <br/>
Ctrl+Shift+Space &nbsp;
Ctrl+Shift+P <p></p>
Ctrl+I <em></em>
Ctrl+B <strong></strong>
Edit
Alt+Up or Alt+Down arrow Moves the current line up or down
Ctrl+Alt+Up or Ctrl+Alt+Down Duplicates line above/below current
Shift+Enter Insert line below current line
Ctrl+Shift+Enter Insert line above current line
Ctrl+D Deletes current line
Ctrl+Delete Delete next word
Ctrl+Backspace Delete previous word
Ctrl+Shift+Delete Delete to end of line
Function Keys
F1 Tag/function reference at http://www.cfdocs.org
F5 Refresh browser view
F8 Scribble pad
Ctrl+F3 Surround with ##
Ctrl+F5 Reload dictionaries
Ctrl+F6 Switch editor
Ctrl+F7 Switch view
Ctrl+F8 Switch perspective
Search / Find
Ctrl+H Search
Ctrl+F Find
Ctrl+K Find next
Ctrl+Shift+K Find previous
Browsing
F12 View current page in browser
Shift+F12 View current page in secondary browser
F5 Refresh internal browser
Shift+F5 View current page in internal browser
Ctrl+Shift+F5 View project root in internal browser
Windows / Navigation
Ctrl+Shift+R Opens the Open Resource (while in Navigator)
Ctrl+E List open files, then start typing the name
Ctrl+F6 Tab back through open files
Ctrl+Shift+F6 Tab forwards through open files
Ctrl+M Maximise/Minimse Current window
Miscellaneous
Tab Indent code
Shift+Tab Un-indent code
Ctrl+L Goto line number
Ctrl+Q Repeat last tag
Ctrl+Shift+Z Insert Color

Adobe has progressively been developing an online presence with Buzzword, Share, Brio and Photoshop Express. But the online presence falls short of important spreadsheet and presentation applications.

So who could the contenders be? Here are two extremely promising applications built on the Flash platform:

SlideRocket

SlideRocket LogoSlideRocket is a rich Internet application, built on the Flash platform, that provides for every part of the presentation lifecycle. It integrates authoring, asset management, delivery and analytics tools into a single hosted environment that allows you to quickly create stunning presentations, intelligently manage your assets, securely share your slides, and measure the results.

There are already a number of companies that are striving to be the web-based presentation application of choice, including Google, Zoho and Empressr.

SlideRocket is the first online productivity application that embraces business level features such as collaboration, robust security, dynamic data binding and business integration with applications like Salesforce.com. SlideRocket aims to differentiate itself from other presentation products by including a community marketplace where content and services can be shared and transacted. SlideRocket also embraces the best of the Internet with features like asset tagging, web content mashups, embedded data services and seamless rich media support.

It’s absolutely one of the best presentation creation applications out there. And because it’s built on rich Internet application technologies you can add interactivity and create a cinematic experience that I haven’t seen done any where else.

Ryan Stewart, Adobe’s Rich Internet Evangelist writing in ZDNet - SlideRocket - the king of presentation applications.

SlideRocket - main presentation screenSlideRocket - incorporating videoSlideRocket - adding Flickr to the librarySlideRocket - manipulating images

(click on the images for more detail)

SlideRocket has been designed from the ground up with extensibility and portability in mind as well. To this effect, third party developers will be able to build components into slideshows using the application’s APIs, creating compelling presentations.

You can find more information on the SlideRocket website.

blist

Blist LogoBlist makes it easy for anyone to create private or collaborative databases.

Blist is not alone in the online database market. Zoho DB, DabbleDB and Trackvia are all web-based tools that provide users the ability to create and administer databases.

Although Blist’s simplicity makes it seem like you’re not dealing with anything more complicated than an online spreadsheet, the Blist user interface is actually hiding a complex relational database backend.

Unlike other online database systems, such as Zoho DB, using Blist doesn’t require the user to know SQL to use all it has to offer. This makes Blist great for users who need more than an Excel spreadsheet, but who don’t want to delve into the complexities of a database software application like Access.

Blist BetaBlist BetaBlist BetaBlist Beta

(click on the images for more detail)

Blist’s focus on making database creation and management a straightforward process, built on an always available, rich Internet application suggests it can fill a niche. Demand will prove the depth of such a niche, but if it grabs enough attention from people as regular users, it will become an extremely interesting prospect for acquisition.

You can find more information on the blist website.

Adobe AIR for JavaScript DevelopersMike Chambers announced at the onAIR tour London event last week that he would be releasing an electronic version of the Adobe AIR for JavaScript Developers pocket book, by the publishers O’Reilly, under Creative Commons licence terms. Well, good to his word, you can download the pocket reference from the Adobe onAIR website.

This book is the official guide to Adobe AIR, written by members of the AIR team. With Adobe AIR, web developers can use technologies like HTML and JavaScript to build and deploy web applications to the desktop. Packed with examples, this book explains how AIR works and features recipes for performing common runtime tasks. Part of the Adobe Developer Library, this concise pocket guide explains:

  • What Adobe AIR is, and the problems this runtime aims to solve
  • How to set up your development environment
  • The HTML and JavaScript environments within AIR
  • How to create your first AIR application using HTML and JavaScript
  • Ways to perform an array of common tasks with this runtime

Also included is a guide to AIR packages, classes, and command line tools. Once you understand the basics of building HTML- and JavaScript-based AIR applications, this book makes an ideal reference for tackling specific problems. It offers a quick introduction to a significant new development technology, which lets you combine the reach and ease of the Web with the power of the desktop.

Adobe is slowly but surely increasing its online presence with the addition of four web-based tools; Buzzword, Share, Photoshop Express and Brio. Although these four applications currently function independently from each other, they have very similar user interfaces and with a small amount of work, these tools could be tied together, offering a new and unique online suite worth noticing.

So why the big deal?

Software is moving from being packaged, where you develop for a particular operating system and put it in a box, to being developed and distributed over the internet and being designed to run across operating systems. That’s where all the innovation has moved to. Software isn’t as OS-specific anymore, it’s moving to rich internet applications. It’s a sea change in how software in general is being built.

Adobe’s Kevin Lynch on AIR’s Open-Source Road to the Desktop.

What is Adobe offering?

Adobe hasn’t developed a cohesive online suite like Google Docs and Zoho, but they are developing a series of applications that will, given time, challenge for position.

Buzzword

Buzzword, originally developed by Virtual Ubiquity, is a web-based, highly collaborative word processor built on Adobe’s ubiquitous Flash platform. This online editor really excels in “what you see is what you print” (WYSIWYP) functionality. Unlike the slightly clunky Google Docs and Zoho Writer, using Flash allows Buzzword to handle page layout in a way that is not possible with HTML. Buzzword also offers online collaboration via its sharing feature, which, like Google Docs, allows users to invite others to read, edit or comment on documents in realtime. Buzzword stores files online so that they are available in a single repository for document collaboration. Work is underway to support Adobe AIR to allow for offline work.

Adobe BuzzwordAdobe BuzzwordAdobe BuzzwordAdobe Buzzword

(click on the images for more detail)

You can find more information about Buzzword on the Adobe Labs website.

Share

Share is a free web-based service that makes it easy to share, publish and organize your important documents. Each document you upload to your Share account is assigned a unique website address. To share a document with someone, select the document you want to share, enter the person’s email address and an optional message, and set whether the files will be publicly accessible or restricted only to the recipients. Recipients will get an email with a link they can click on to download the document. You can also link to your documents, or embed flash previews on your own website, blog or wiki. This concept is not new, with Scribd and Issuu being an alternatives.

Adobe ShareAdobe ShareAdobe ShareAdobe Share

(click on the images for more detail)

You can find more information about Share on the Adobe Labs website.

Photoshop Express

Adobe Photoshop Express is an online Rich Internet Application (RIA) where you can polish, sort, store, and show off up to 2GB of photos. Furthermore, you can crop, rotate, smudge, tweak, twirl, pinch, correct — or any combination you like — the images. The tool isn’t like its more powerful offline sister, it is more like the photo editing website Picnik. What’s interesting about the Adobe offering, is the fact that Photoshop Express comes with 2GB of free storage for your photos, which makes it less of just an online tool, and more of an online service. The 2GB trumps Picassa’s current 1GB.

Adobe Photoshop ExpressAdobe Photoshop ExpressAdobe Photoshop ExpressAdobe Photoshop Express

(click on the images for more detail)

You can find more information about Photoshop Express on the Adobe Labs website.

Brio

Brio, currently in Beta, is a personal web-conferenceing service that enables you to instantly communicate and collaborate using your own online meeting room. Brio offers screen-sharing, full multi-party video, VoIP, teleconferencing, whiteboarding, chat and shared notes; all via the browser.

To start a meeting, just go to your meeting room and invite others to join you at the same URL. As the host, you will need to download a small Brio add-in in order to share your screen. Meeting attendees will not need to download any software unless they will also be sharing their screen. There is no need to schedule meetings in advance.

Adobe BrioAdobe BrioAdobe BrioAdobe Brio

(click on the images for more detail)

You can find more information about Brio on the Adobe Labs website.

Integration and Offline Access

Although each of these tools work independently of one another, using different sign-ons, it is a very real possibility that Adobe will adopt a similar route to that of Google, Microsoft, Yahoo and Zoho and integrate their online products into a single cohesive unit with one sign-on; the Adobe ID.

Plans are already afoot to integrate the Buzzword and Share tools, both of which sit naturally together. What would be more interesting would be the integration of Photoshop Express with these tools so that you can, for example, edit images embedded in a Buzzword document.

The Future

Adobe has stiff competion from the offline, desktop applications. This is where AIR enters the picture. Adobe said, as far back as September 2007, that they would create a version of Buzzword in AIR. This has yet to be envisaged, but the rumblings from Adobe suggest that this development is still in the works. Bringing Buzzword to the desktop would be an extremely significant step, making it a very real alternative to desktop word processors.

All that is required now for Adobe is to implement a spreadsheet and presentation application. Whether they buy in these tools, or use their existing skill set is the question. On current form, and if the acquisition of Virtual Ubiquity and its Buzzword product is an indication, Adobe are likely to be keeping a keen eye on existing technologies being developed by third parties. For example SlideRocket is a viable contender for presentations - built in Flash and with an AIR client; the user interface even looks similar to the above products. Or there is blist for spreadsheets that again is built on Flex/Flash technology.

Keep an eye on Adobe Labs for their latest developments. You will notice developments in areas such as RSS with myFeedz, colour theming with Kuler, and a competitor to Microsoft’s Sharepoint and Google’s Sites called JamJar.

Adobe AIR LogoAdobe Integrated Runtime is more than just hot air, it traverses the previously unexplored space that exists between the Web and desktop applications.

Up until very recently, the void between the Web and the desktop seemed like a schism that could not be crossed. But since AIR’s 1.0 release in February this year, a whole host of other applications are emerging to compete with AIR in the single site browser space.

Although AIR is very new, the product is remarkably mature with the integration of the excellent opensource WebKit browser engine for rendering HTML and JavaScript, the SQLite database engine for embedded database functionality and of course, Adobe’s Flash player for development of Flash-based Rich Internet Applications. Because of this flexibility, the learning curve faced by developers is almost non-existent, they simply have to get to grips with the AIR API.

What is all the fuss about?

Delving into the AIR API, your application will have the ability to detect whether it is currently the active window or connected to the network. You can access the file system, allowing you to read and write files, access other datasources, tap into the native menu options or interact with almost any aspect of the operating system in a way familiar to common desktop applications. This functionality is available regardless of the architecture on which it is installed. Therefore AIR applications will work similarly when installed on a Windows PC or Mac, and soon on Linux machines as well.

AIR is much, much more than a single-site browser — it’s a cross-platform runtime environment and the distinction is significant.

The ability to run applications built on AIR on almost any machine, on- and offline, sets it apart from any other offering currently out there or in development. For example, Google Gears is restricted to AJAX applications, whilst Mozilla Prism isn’t much more advanced than a cut-down version of Firefox, with no offline capabilities yet.

Who else has entered the race?

As mentioned, a significant entry is Mozilla’s Prism, however, Pyro for Linux and Bubbles and Fluid for Mac are clever little tools for packaging up an existing website and presenting it as a standalone desktop application.

Mozilla Prism

Mozilla Prism LogoPrism, previously known as WebRunner is a product in development which integrates web applications with the desktop, allowing web applications to be launched from the desktop and configured independently of the default web browser. It is commonly used with Google AJAX Applications, such as Gmail and Google Docs.

Prism is part of an experiment by Mozilla designed to “bridge the divide in the user experience between web applications and desktop applications”. Essentially, Prism will allow you to create a desktop-like application out of individual websites. These site-specific applications are a growing trend and a trend heavily marketed by, not only Adobe, but now Mozilla, as ‘the future’.

While traditionally users have interacted mostly with desktop applications, more and more of them are using Web applications. But the latter often fit awkwardly into the document-centric interface of Web browsers.

In its current form, Prism doesn’t have the ability to function as a desktop application without access to the Internet, but Mozilla says it is “working to increase the capabilities of those apps by adding functionality to the Web itself, such as providing support for offline data storage and access to 3D graphics hardware.”

More details can be found on the Mozilla Prism website.

Pyro Desktop

Pyro LogoPyro Desktop is a new type of desktop environment for Linux built on Mozilla Firefox. Its goal is to enable true integration between the Web and modern desktop computing. Pyro was announced during GUADEC 2007 and is developed by Alex Graveley and Chris Toshok.

More details can be found on the Pyro Desktop website.

3D3R Bubbles

Bubbles LogoBubbles is a desktop application that allows you to work with your web resources in the way you want to work with them.

The Bubbles application window, known simply as a Bubble carries the web resource almost like a web browser does. Since the Bubble has advanced browser capabilities there’s an advanced control device for it — the Bubble seed — an XML file called Smart Bubble. It defines the properties — the whats & the hows — of its Bubble window. The Smart Bubble contains the information about what Bubble will load, how it will look on the desktop and what capabilities it will have, etc. So it goes from the Smart Bubble into a grown Bubble that lives on your desktop, accessible from the system tray.

More details can be found on the 3D3R Bubbles website.

Fluid App

Fluid LogoFluid is a way to create Site-Specific Browsers SSBs to run each of your favorite WebApps as a separate desktop application. Fluid gives any WebApp a home on your Mac OS X desktop complete with Dock icon, standard menu bar, logical separation from your other web browsing activity, and many other goodies.

Fluid includes optional Tabbed Browsing, built-in Userscripting (aka Greasemonkey/GreaseKit), RSS/Atom Feed detection, a JavaScript API for setting dock badges, showing Growl notifications and adding Dock Menu Items, optional bookmarks, optional browsing to urls outside the SSB “home” domain, Dock badges and Dock menus for Gmail, Google Reader, Facebook, Flickr, and Yahoo! Mail, auto-software updates via the Sparkle Update framework, and custom SSB icons.

More details can be found on the Fluid App website.

The ActionScript reference for rich Internet application development provides an alphabetical reference for all native ActionScript APIs for the Adobe technology platform runtimes: Adobe Flash Player and Adobe AIR—as well as the Adobe Flex framework APIs. Use this guide both as an API reference and a tool to learn about the ActionScript APIs available within the runtimes.

Download the ActionScript reference for RIA development (PDF 1.3MB)

The Adobe technology platform contains two primary runtimes. Flash Player is browser-based, and Adobe AIR is desktop-based. Because Adobe AIR is built on top of Flash Player, the Flash Player APIs are available within Adobe AIR. Consequently, Adobe AIR APIs are not available within Flash Player. The Flex framework is built on top of the Flash Player APIs, so it runs in both Flash Player and Adobe AIR. However, a number of Flex APIs take advantage of AIR APIs, and thus work only within Adobe AIR.

More information about this guide can be found on the Adobe Developer Centre Website.

« Older entries