OLArchitect Theme Concept

I’m going to discuss briefly my thoughts on OLArchitect’s Theme / CSS system.  I have not yet finished the control and panel configuration completely (but I have finished the configuration of all the basic controls), but I am far exceeding my expectations so far.  My current progress occasionally encourages me to consider how I am going to implement themes.  As is stands, I plan to work on custom styles / themes last, but I think it’s good to take the time to figure out more specifics as I continue programming.  While having a solid project plan is essential, I do not believe that should always be strictly followed, especially if it hampers development.  Thus, I’ve adjusted my plan numerous times, and while I may make a horrible project manager, I think my project as a whole is much better off.  I do think I will deviate any more from my plan, and everything is going great so far – but I have not planned out in detail how I will implement custom themes, for the very reason that I am writing this post. Personally, if I plan out every detail I feel constrained, so I tend to generalize things then work out specifics as they come to me.

My themeing system is not overly complicated.  I basically have my program generate CSS and appropiate classes based on a selected or user generated theme.  I want the project to be extensible as possible, so every element in openlayers that can be assigned a custom class will be assigned one.  Any button control should also have the option of being assigned a custom button, but I have not yet determined the best way to approach this – I think it may be best to provide the option to set the button’s graphic when the control is created, as well as when the theme is configured, but I will reserve my judgment until I get to that point.  I previously posted a link to jquery’s roll your own style, and I plan to implment color selection in a similar manner.

So, the jist of this post is that I’m not a fan of having a concrete, unchangable project plan (it’s 2008, adapation is a necessary trait) and my revised project plan is as follow:

Controls – Map -  Create JS  / CSS – Theme – Usability

Finish control configuration (sometime next week)
Finish Map Configuration (sometime in the follow week)
Implement javascript / CSS generator, output code to create an OpenLayers map
Create Theme Configuration, tie in with CSS theme generation
Work on usability issues – polish site, add help information to configuration options, get user feedback

I plan to have the above completed by the end of Google’s Summer of Code, and I am excited to continue development, as I plan to implement a community aspect (not necessarly a facebook for GIS, but a place where these generated maps can be shared) after GSoC 2008 ends.

http://olarchitect.com

You can leave a response, or trackback from your own site.
Leave a Reply

Subscribe to RSS Feed My tweets