onvaluechanged not !bool in the editor

Is there a way to use the editor only to set up a “do the opposite” scenario.

inputBox.interactable = !toggle.isOn;

I see a dynamic call which always sets the value to isOn and not the opposite. There is also the static feature which is always either true or false. But no dynamic feature which outputs the NOT(!) version. It is a shame to write scripts every time, just so i can add this.

Attach this to the Toggle’s gameobject

using UnityEngine.EventSystems;
using UnityEngine;
using UnityEngine.UI;

public class InvertedToggleEvent : MonoBehaviour{

	//wont show in inspector
	//public	UnityEngine.Events.UnityEvent<bool> toggleEvent;
	//this will show in inspector
	public class UnityEventBool : UnityEngine.Events.UnityEvent<bool>{}
	public	UnityEventBool onValueChangedInverse;

	private void Start()
		GetComponent<Toggle>().onValueChanged.AddListener( (on)=>{ onValueChangedInverse.Invoke(!on); } );

Well I just tested this for a button, but it could just as easily be an on value changed for a toggle:

public void swapActive()
		GetComponent<InputField>().interactable = !GetComponent<InputField>().interactable;

Just call the function when that toggle value changes and set the target interactable to the opposite of itself. Shouldn’t need to access the toggle it’ll just switch back and forth as a toggle only has 2 possible states and so does interactable.