ControlLook is basically a consolidation of all the drawing code from each of the pieces of the interface kit (BButton, BSlider, BMenuField, etc.) in one place, nothing more, nothing less. If we seriously want to implement theming, we need to build an API from ControlLook with reasonable methods like DrawButtion(), DrawSlider(), DrawMenuField(), etc. Once that is done the result should be moved into BDecorator in app server so that decorators can alter not just the look of the window border and tab but also each of the interface kit controls as well.
What I'd like to see as a proof of concept is the BeDecorator extended to use the pre-control look drawing code that has been remove from the tree (but still exists in the repository somewhere). This would allow you to switch between the current theme and a theme reminiscent of BeOS R5. While this wouldn't be particularly useful except to BeOS luddites, once all that above work is done it will be much easier for us to transition to the new style whatever and whenever that may be.
Theoretically the MacDecorator and WinDecorator could be extended to make Haiku look like classic MacOS or Windows 98. But for this to happen you'd have to write all the drawing code for each of the controls, so, I doubt anyone would want to do that work, and I don't expect or even desire for that to happen. Long term it would be better if we nix those decorators and focus on the BeDecorator, HaikuDecorator (derived from current ControlLook) and future decorators. Maybe we could throw a Dan0/Zeta Decorator into the mix just for fun.
These ideas are all Glass Elevator of course, not something that we need to or even want to focus on in the pre-R1 timeframe.