Mar 8 2005

Skinning Engine Update

Category: Rory Primrose @ 22:09

Over the last month, I have been mainly working on the new .Net based skinning engine. So far, I have been working on five areas in this development process.

Firstly, I have built most of the object model that supports reading and understanding a skin file. The object model defines the structure of the skin file itself. There are several features that I am trying to achieve in this skinning engine that the current applications don't have. These include in-memory zip reading, resizable skins, generic skins definitions and multiple application definitions and maybe some effects. The generic skin definitions allow the skin to be applied as a default look. This means, for example, that any skinnable button in any new Higher Tendencies application can use the same skin to render a button. Other than generic definitions, the skin structure allows for specific applications and forms to be defined as well. Many of these can be defined in the one skin file that can be used by multiple Higher Tendencies applications. Skin Suites will be great with this feature as it will be just the one skin file.

Secondly, I have been developing a skin builder application. With the skin builder, putting skins together will be a snap. This also makes my testing of the skinning engine easy as I can change the definition of the skin quickly.

Thirdly, I have created some generic controls that are based on the Windows form, button and textbox controls etc that will handle skinning the element as appropriate. It is these controls that will do the grunt work of converting the skin file information into the rendered display.

Fourthly, I have started to develop the new Switch application that will be written in .Net and support the new skinning engine. This is a great opportunity to overhaul this app and test the skin engine development.

Finally, I have also been looking at skin upgrade code. As I am developing the new version of Switch, I still want to support the existing skins. It turns out that the work I have done in the skin file object model has made creating an upgrader quite simple.

It is good to see things coming along. I hope to have a beta of Switch and SkinBuilder out in a month or two.

Tags:

Add comment

  Country flag

biuquote
  • Comment
  • Preview
Loading