How do I make only one toggle true at a time?

I can’t figure out how to make only one GUI.Toggle true at once. Sort of like how gridselection works

Here’s a quick example of how you might do this:

var defaultButtonIndex : int = 0;
private var currentButton : int = defaultButtonIndex;

var buttonText : String[] = ["FOO", "BAR", "GNU" ];

function OnGUI() {
	var lastButton : int = currentButton;
	var newButton : int = lastButton;
	var numButtons : int = buttonText.length;
	
	var r = Rect(0f,0f,100f,100f);
	GUILayout.BeginArea(r);
	for (var i : int = 0; i<numButtons; ++i) {
		var isActive : boolean = i == newButton;
		if (GUILayout.Toggle(isActive, buttonText*)){*
  •  	newButton = i;*
    
  •  }*
    
  • }*

  • GUILayout.EndArea();*

  • if (newButton != lastButton){*

  •  currentButton = newButton;*
    
  •  Debug.Log(String.Format("Button {0} was toggled", currentButton));*
    
  • }*
    }