Highlight the clicked button and reverse other buttons

I need your advice to establish the following action:
Suppose that I have X buttons what I would like is when one of the buttons is clicked to Highlight it and to do the opposite for all the X-1 buttons that remain (i.e. not to highlight them). This action should be the same for any of the X buttons.
I apologize that I can't link my account because it belongs to my company and they told me that their policy is not to disclose serial numbers for their purchased software.

Thank you in advance for your help

The best way to do this will depend on the details of the commands that the buttons run. Can you give us some more details on those?

GPSoftware already know all the serial numbers, since it's GPSoftware that issue the numbers to companies or individuals. What we don't know is if your forum account is related to any of those companies/individuals, which is all you'd be disclosing. The information the account linking page requests is not the full licence details, just a proof-of-purchase which is derived from them.

What I actually want to establish is to have N number of buttons every one of them will have different code (but all of them have an influence on the SAME program that would run after clicking this button then the user will be able to understand what is the current state of the program by looking on what button was clicked. I would like to avoid creating a new Global Variable every time I add a new button that belongs to the same group of N buttons and it seems that even this idea of multiple globall variables will not solve this problem.
Regarding the serial numbers: I know that you know all of them because it was bought from your company but my firm explicitly said to me that they don't want me to disclose them or one of them so please trust me that they legally purchased licenses to your program.

It will behave the same way like for example "View Mode" when ONLY one button shows the current view mode of the current tab either Thumbnalis, Details, Tiles etc. I would like to have indication of the state by highlighting the right button and setting the others to a normal state.

So you want to run an external program and have the buttons indicate the state of that program in some way?

I'm not sure if that would be possible without some kind of variable, but it's hard to say without knowing the full details of what you want to do. e.g. What are the commands you want to run? What is indicated by the buttons, and how/where can it be calculated or stored?

I can make it clear what I need it is actually very simple:
I need to have a group of buttons that will behave like "Radio Buttons" i.e. when one is selected (highlighted) the rest are unselected. Is there a built in function that can accomplish that? otherwise I will need to make a different variable for each button and in the first line of the code of the button to write the following code @toggle:if $glob:TheGlobalVariableForThisButton
and when one button is selected I will need to reset the rest.

It should behave the same as in "View Mode" when ONLY one button IS HIGHLIGHTED to indicate the current view mode of the current tab either Thumbnalis, Details, Tiles etc so all the "View Mode" buttons are actually "Radio Buttons" group.


What I was trying to achieve is doing it elegantly. If it is not possible doing it using the current tools then I have an idea for adding a command modifier that will enable it and also other combinations of buttons that depends only on ONE global variable.
Please comment.

Thank you

Using a bunch of different variables is one way to do it.

Another way it might be possible to do it is to use a program state to control the highlighting automatically. For example, the current display mode. This is why Leo asked you for the exact details of what your buttons will do, because what they do may affect the way you can do it.

The code under each button is completely different. The dependency between buttons is only visual and not functional (BUT all the buttons have an influence on a my only one program you can call the radio buttons the "basic current setup" for this program and they should be highlighted only one at a time in order to understand what is the current configuration of the running program) but as I have said before I have an idea of a command modifier that will allow radio buttons as well as other things.
My idea is the following:
If the first code in a button is @toggle:if $glob:TheGlobalVariableForThisButton is AUTOMATICALLY UPDATE all the buttons that have the same TheGlobalVariableForThisButton . Every time the TheGlobalVariableForThisButton is changed either created or destroyed all the buttons that dependent on this global variable will change their highlighted mode.
If you can add a command modifier to the @set glob:TheGlobalVariableForThisButton and to the
@set $glob!:TheGlobalVariableForThisButton =on command like -DONTUPDATEDEPENDENT then when for example using the command @set $glob!:TheGlobalVariableForThisButton =on -DONTUPDATEDEPENDENT will not change the other buttons highlighted state. This is just an example of how it would be possible to change the current button but not the other buttons. Now everything will have dependency upon only one variable but once the option -DONTUPDATEDEPENDENT is selected it will be a FLAG for Opus not to update the dependent buttons.
If it is feasible to add this option it would be a more elegant solution than to have multiple global variables to control the buttons.

Looking forward to be hearing from you...