Application wide background color for Vision windows

Can anyone think of how I can assign a default color for all the Vision windows of an application so that, for example, if we find it’s a bit bright or dark we can change it once and a background color binding on every window will use that color?

Many thanks.

Make a string client tag to hold the color. Then bind the background property to it.

I was thinking of that and now that you have confirmed it I’m wondering do I just initialise that in the startup script?

What type of tag and what format do I use? Hex? or 255, 255, 255 format?

Use a string client tag (you can't use anything else).
I use HEX, but really it doesn't matter, I guess whatever's more comfortable.
FYI if you bi-directionally bind the client tag to a fillPaint property, re-assigning the colour by picking a new colour from the colour picker on the fillPaint will set it to the string "color(r,g,b)" (assuming you don't force the colour of the client tag using an expression - which you should definitely do to avoid this very situation and where someone forgets, e.g. me, that it's bound and accidentally changes the colour everywhere :laughing:)

"Initialise" it via an expression in the client tag, as above

That's not quite true. You can use a single client dataset tag to hold all of your colors, with specific row indices documented to hold the color for specific purposes. The dataset can hold an actual java color object, so you don't suffer the parsing load everywhere. Using a dataset offers some conveniences if you want to store and reload complete color schemes to/from a database.

I thought about adding a * to “can’t”, as there are always alternatives. Although I didn’t consider using a dataset which is interesting.

Super, thanks, guys.

@nminchin, thanks for the bi-directional binding tip. That solves the problem of another developer overwriting very nicely.