I wanted to post a quick update on the status of the gskinner lightweight interface components, including recent progress, which components are done, licensing, pricing, limitations, etc. for everyone who has been asking about them.

You can find my original post about them which includes general information and screenshots by clicking here.

General Progress
We have recently finished turning them all into compiled components, and adding support for the properties inspector. We are also working to finalize our skinning, tab management and style management models (though I expect some changes to these models even after release based on developer feedback).

I'm also happy to report that GLIC has been successfully integrated into three of our projects, with only minor bugs discovered, and huge decreases in file size and CPU usage - the real world results are awesome (though I'm biased). One of them is also entirely Flash Player 6 based!!

Completed Components
The list of components that will be included in the first drop currently includes:


  • Button

  • TextInput

  • TextArea

  • CheckBox

  • RadioButton

  • ComboBox

  • ListBox

  • SmartClipList (think of DataGrid, but row based instead of cell based - very flexible)

  • Accordion

  • ScrollBar

  • ScrollPane

This list may well be expanded before the 1.0 release, as we already have the beginnings of some other components. Besides the components, we will also be packaging some useful classes such as an enhanced focus manager, a style manager, a new version of gDispatcher, an image/swf loading class, and some of the code I have released on this site. They will also include at least 3 skins, including a wireframe skin that will let you easily create wireframes during the early phases of a project.

Licensing & Pricing
The components will be licensed under two models:


  1. Project licensing - you will receive the compiled components, and all documentation, with a license that allows you to use the components in a single project, and pass the license on to your client when you deploy.

  2. Developer licensing - this will be a site license that allows your company to develop an unlimited number of projects using the components. It includes full source code, compiled components and documentation. You may distribute the components compiled into a project, but must purchase a project license if you wish to provide your clients with source code or the compiled components on their own.

We are aiming for the mass market with these components, so the pricing should be reasonable.

Limitations
Another question I've been asked is what these components don't do. This is a reasonable question - in order to make our components smaller and more CPU friendly we had to shed some features, but I tried to choose the features that are used infrequently, or that are very poorly implemented in MM's set (so that we'd have room to improve in the future w/o worrying about polymorphism). The main features that we left out are Data Binding, which is used rarely except for prototyping (and is imperfect in MM's components), and CSS/StyleManager support. We are providing a simple, registration based StyleManager with the components, and making skinning a much simpler process to make up for this, but we may add some CSS support in the future (possibly even before we ship 1.0). We're also not using MM's FocusManager, but our implementation offers a lot of additional functionality (such as the ability to set up tab groups), and is polymorphic with MM's.

What's remaining
All that remains is some more testing, documentation, and finalizing the license scheme - I don't want to commit to a hard release date (because no one ever seems to stick to those), but we're getting pretty close. We also need to set up a store-front to automate selling licenses - any suggestions?