Preserving the state of an element

How would you solve this problem:
I have radio buttons in the form of icons that change color. I also have a theme switcher (Mac Aqua and Dark). I need a separate version for each Icon because I need different brightnesses for the mouseover effect. When I switch to the other theme, all icons belonging to the inactive theme get hidden by switching their state. Unfortunately, this will overwrite the active state of a button. Can I store that state somehow across themes or make it exempt from the switch?

I got this. Using Hide instead of a state change achieves what I need. One drawback with that: Since I have grouped the dark and light versions of these Radios, I have to resort to hiding “All Widgets of the Same Type”, which is kind of brutal because it does exactly that. It means I’m having to create a new widget type for each new group of radios.
I have often wished for a more granular approach to what a sibling is. Sibling only goes one level deep. If this had a couple more levels, like Sibling of the first order, Sibling of the second order etc, it would allow for a more elegant prototype with fewer widgets.

Just in case someone has a better idea of how to solve this, here’s the preview and Antetype file.

One more thing that is not working as expected: I would assume that mouse over will work regardless of the state the button is in but it isn’t. When the button is set to state ‘Active’, mouseover does not change the state to ‘Mouse Over’. Is this intended?

yes, currently it works only for the Normal-State. We intend to change this (and even started to implement it), but it turned out to be quite a big task.

in the old days Antetype did provide Look&Feels for this (you could store the properties for the widgets in different looks, but preserve the hierarchy/states). We removed it, since it was not used a lot (and complicated the implementation). Now with dark-mode everywhere it would be another story :slight_smile:

But back to your question: I don’t see a better way to switch. Theoretically “All Children” could be used, but it doesn’t work (I guess we never thought of this use-case…).

Ok, thanks for the explanation. I can live with that for now!