Yes I understand that changing the colors works in principle. I just think there are way too many knobs to turn. Why have a "shine" and "shadow" color when it's more sensible to be able to define a single "contrast" setting. And I find many other colors options to be over the top as well. I would really cleanup the list and keep only the essential options. As for modifying Draw() methods, pretty much all of them use BControlLook to do the actual drawing, if you look closer you should see that the old code is only used when the be_control_look global is NULL.
Thanks for the info. I'll look into it then. :)
That's true. I guess I'd just like to avoid mucking around with the app_server whenever possible, given my ability to cause trouble and how much more complicated it's gotten since I last worked on it. ;-) Looks like I'll just have to be extra careful.I'm not completely sure what the live updates implementation should look like, but I remember that was one thing that was my plan _way_ back when I actually hacked on the app_server. The main problem is that broadcasting a message via the roster would be a cleaner approach, but that doesn't handle window tab colors and text. You *could* put together a message to the app_server to update those colors and broadcast the message via the roster, but that seems kinda messy. Any ideas?Why would that be messy? You can also post a message to app_server and have it in turn broadcast to all open windows, which in turn calls a new hook method in BViews to update to current colors. Default implementation being to invoke Invalidate().
--DW