This just seems simpler then everyone is making it out to be. The problem has already been solved by the browsers. If appearance themes and color themes are implemented as stylesheets added and subtracted from the head section of the DOM, then no one has to think about overriding settings. If a setting has been overridden by a control, the browser knows if and uses that setting, if not, it uses the setting from the CSS Stylesheet. As long as the default appearance theme always has the same name, then there is no need to touch any of the individual controls in order to change appearances. Simply remove the current stylesheet and replace it with the new one, using the same name. The browser will then change any of the settings it needs to change. on controls that are already rendered. This would also speed things up immensely.

Granted, I have not delved into the code to see how you are doing things currently, but this is one way that makes sense. And if this is the way you are treating appearances then you are also doing too much after the appearance change is made to try and 'control' the way widgets look, let the browser do it.

The whole reason I started thinking this is because a comment was made that if a user wants to change a theme, then all properties get overridden with the new theme settings and it's up to us to re-set those that we changed along the way. This is 'silly'. If I create a page loaded with buttons, and the 'default' width of a button (set in a theme)  is 100 and I make them all various sizes to 'fit' on the page where they need to go, and a user decides they want a different theme, they should be able to change themes without all the buttons getting changed to 100 width. And, as the developer, I should not have to go back then, and make changes to all buttons and re-set their widths. This is not the way things should be done. Changing a theme should not change the location or the size of a control already rendered, period.


If any of this needs clarification I'll be happy to clarify things. Also, if any code is needed for manipulating stylesheets in the DOM, I have that available.

Jim
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to