Well how would i get it to disable the modes if it isnt supported.. is there even a way to check for that

You can check it by using $chanmodes.

Also. Do you know if it can check what modes are selected and what ones arent so it can be automatically checked to cause no confusion.

You can use $chan(#channel).mode to determined the enable modes for the specified channel.

Im totally agree with others by using on init to check the current enable channel modes. However, its lack something such as when user keep the dialog open and the other channel operator changed a channel modes(or the user itself changed it manually).

So you need to watch the on mode event, and disable/enable the modes in dialog according to the current channel modes.

By using on active event also you can had one dialog for the whole channels, in other word the dialog would shown the correct modes for the active channel.

It doesn't seem like a good way but it's all I can think of. Do something like this on init and then if s isn't in the modes it sets disable the box. Idk.
mode $chan +abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ $str(1 $+ $chr(32),52)

I assume this script would working in some network only(especially the network that had implemented the specified chan modes...which many of them are unfamiliar for me).
IMO this is a simple script with a nice dialog and maybe you could added a couple thing on it such as:

Disable the modes if its not supported by the network

Adding a channel name into dialog title instead of 'Manager' so users know which channel the modes would be apply.