Working with SQLite databases in AIR, it's important to define and mantain a consisten and highly reusable approach with data. To be more precise it's important to abstract your View from all the data access logic. Doing that you'll ba able to reuse DAO classes for different Views of your AIR applications.

In terms of development it means to create several ActionScript classes that implement the DAO pattern and that uses ActionScript Value objects as entity. This repetitive task could make you spend a lot of annoying time.

That's why at Comtaste we've decided to create DAO-Ext, a simple AIR tool that allows us to auto-generate the necessary ActionScript code and save us a lot of time.

DAO-Ext is an Adobe AIR tool that allows developers to automatically generate ActionScript Data Access Objects (DAO) and Value Objects starting from a local SQLite database. The project is totally free and open source.For this first release the tool allows developers to:

Select a local SQLite database and load a SQLite schema

Generate for each table an ActionScript VO and an ActionScript DAO

All the DAO objects are generated as singleton classes and use the ActionScript Value Object as itemClass of the row of the table

The ActionScript Value Objects are Bindlable object

Export all the AS VO and DAO of the tables in a click

Show/hide a log window Choose the folder to store the generated classes

This is a very first build of DAO-Ext and we've a lot of ideas in mind to implement and add new features. We're very curios to see how the community will use this tool and we'd love to have some supporters that contribute to the project.So feel free to send me an email !

SapphireSteel has just released the third beta of our Flex IDE, Amethyst. This release incorporates features being developed for both the free
Personal Edition and our commercial Professional Edition. The beta will
last for about 5 months from the date of release.

Everything is happening so fast at FITC. Today is the second and last day and I had been at great sessions this morning: Serge Jesper about Flash Catalyst, Lee Brimelow about Flash Polymath and Mario Klingerman about Tinkerer's box.

As promised I've just published the slides of my presentation on Slideshare:

FITC 2009 Amsterdam has started this morning and everything looks great ! Mike Chambers, Lee Brimelow and Serge Jesper presented the Adobe Keynotes showing some cool stuff on Flash CS4, AIR and mobile.Mike Chambers announced the upcoming release of AIR 1.5.1 as a bug fixing and maintenance update.

Aral, Ralph, Brenden, and Koen have just finished their talks and they were very inspiring (as usual).

As mentioned at the beginning of this chapter, context menus appear at the cursor when the user right- clicks (on Windows) or Ctrl- clicks (on the Mac). Contrary to Flash applications for the Web, AIR applications don’t offer any default context menus, so it’s up to the developer to create and populate context menus for the application if necessary.Context menus can be created with two different ActionScript classes:

The NativeMenu class

The ContextMenu class

You can only use the NativeMenu class for AIR applications, whereas you can use the ContextMenu class for both AIR applications and those that have been created to be executed in a web environment with Flash Player. The ContextMenu class is less flexible and offers fewer possibilities to developers, regardless of the fact that it extends the NativeMenu class.The ContextMenu class extends the NativeMenu class in AIR applications as well as in traditional Flash applications. The NativeMenu class can be used only for AIR applications. Now you can create an AIR application that uses both types of context menus.

Creating context menus

In this section, you will create native and nonnative context menus. Start by opening the ch06p03.fla project in Flash CS4. You’ll notice that the stage of the project contains the following two buttons, in addition to the output TextArea:

nativeBtn

contextBtn

Next, you’ll associate a different context menu with each button and use the TextArea as a console for the application. Open the document class that is associated with the Flash project by clicking the Edit class definition icon in the Document Properties panel. Figure 6-9 displays the stage of the application.

Flash on The Beach 2009 has a date : 20 - 23rd September 2009, Brighton. And there's also a new. Tickets will go on sale in June.

Flash on the Beach is in it's fourth year already! FOTB06 was
awesome, FOTB07 was even better, and FOTB08 was the best yet! We have
the best talent around speaking, new speakers for FOTB09, the Inspired
Sessions, workshops, parties and more! It's gonna rock!

Flash on the Beach is gonna be the rockingest gig around! Sign up
for the newsletter to be told exactly who, where what, and when we go
on sale. YIIIIHHHAAAAAAAAA!!!!

We start assignig the menu to the main AIR application. It will only contain one item: ‘App settings’ to which you will associate three elements with as many commands. These three elements will be constructed in the createFirstSubMenu() method . The following ActionScript code defines the createFirstSubMenu():

private function createFirstSubMenu():NativeMenuItem{

Start by creating a local variable, subMenu , an instance of the NativeMenuItem class, which will be the return value of the method createFirstSubMenu() . When you create the NativeMenuItem object, you tell AIR which text label it will have (App settings in the following code). This NativeMenuItem child of the application menu will be a drop- down menu that contains some commands. To add these child elements to the following instance of the NativeMenuItem class , you have to instantiate an object of the NativeMenu class. This object will then be assigned to its subMenu property . The following code accomplishesthese tasks:

Next, populate the submenu you’ve just created with three instances of the NativeMenuItem class. Then register a different event listener method on each of them for the selection event. Remember, to create an element of the menu, you generate an instance of the NativeMenuItem class. Then you tell the constructor method which label has to be associated with the object. At that point, register an event listener method for the Event.SELECT event . Finally, add the element you’ve created to the submenu. Do this through the addItem() method of the instance of the NativeMenu class, which is assigned to the subMenu property of the object of the NativeMenuItem class.

All you have to do now is define the event listener functions you need for the selection events. Your menu will allow you to do the following:

1. Minimize the application 2. Close the application3. Access the saved description in the XML configuration file of the AIR project

The closeApplication() method will call the immediate closure of the application and, consequently, all its open windows. To close the application, you use the exit() method of the static nativeApplication property of the NativeApplication class. The code follows:

Recently I've presented at the JavaDay conference about enterprise Flex and Livecycle DS development. The audiance was, of course, made up of Java/JEE developers so it was very interesting to give some tips very close to their world (enterprise developers). I've talked about:

It's a new service (still in beta) that allows users to create their own magazine. Goggling on the net I found the following information about the service:

Ulitzer will be launched in February with 1,000 new magazine and
journal titles, authored by more than 6,000 rock star technology
writers, and over 1 million original and copyrighted articles. Ulitzer
titles will be published under the Creative Commons license.

Launching a magazine at Ulitzer.com, which is currently in pre-beta, is
designed to be as easy as boiling an egg and doesn't take much longer.
For details of how to become a Ulitzer user, please contact editorial
(at) SYS-CON.com. Once you've been handed the keys, you will be able to
associate your future Web presence to whichever Topic or Topics suit
you best.