Toggle button background color (with "@ifset") + OSD (on screen display) message possible?

1)
How do you toggle the background color of an button, currently I have something like this

@ifset:HIDEEXT=On
Set HIDEEXT=Off
@color:back = "none";
@ifset:HIDEEXT=Off
Set HIDEEXT=On
@color:back = "#FF0000";

When clicked, set button background to red, when clicked again set to back to default background.
But this does not work (it doesn't toggle).

2)
Is it possible to render an onscreen display message for preset duration, like those CRT televisions with the green overlay text. I think windows has an OSD api(?)
If it's not possible, could it be considered in the future? (It would serve as an alternative for the messagebox)

Lines with @modifiers are all processed before any conditional branching happens, which is why the original approach wouldn't work.

You can do this:

@toggle:disable
@color:back=IsChecked("Set HIDEEXT=toggle") ? "#FF0000" : "none"
Set HIDEEXT=toggle

The @toggle:disable line stops the normal background color change from happening, so that your specified background isn't blended with another color.

The @color:... line uses the Evaluator to test if the toggle is on or off and set the color appropriately.

This works!
Thank you!