MAXScript provides a set of classes and functions and some special syntax to allow you to construct custom rollouts that can be incorporated into the existing 3ds max user interface. You typically use custom rollouts to provide a point-and-click interface to a tool that you have written or want to write in MAXScript, so users of your tool don't have to work with it at the script level.
There are two places in the 3ds max user interface where you can install scripted rollouts:
In the Utilities panel. You use the utility definition construct in MAXScript to define and install scripted utilities. Once installed, they appear in the Utilities list at the bottom of the MAXScript rollout. If the user selects a utility in this list, its rollout(s) appear below the MAXScript rollout and functions just like a plug-in utility.
In special modeless rollout floater windows that you can create with the newRolloutFloater() function. These windows appear on the desktop and function in a way similar to the Material Editor and the Selection floater in 3ds max. You can click to alternate between them and the main 3ds max user interface. You create individual rollout(s) for these windows using the rollout definition construct in MAXScript and install them in a rollout floater window using the addRollout()function.
Choosing which place is best for your scripted rollouts depends on a number of factors. It is best to keep them in the Utilities panel if possible, as that maximizes the use of the screen and is consistent with the 3ds max user interface conventions. However sometimes it is useful to have them in a modeless window if the user of your tool needs to move between the various command panels while using the tool. In some cases, you might want to provide a "float me" button on a scripted Utility rollout, similar to the Color Clipboard utility, so the user can choose to display the rollouts in a rollout floater window or in the Utilities panel.
The following topics provide information about scripting utility panels and rollout floater windows:
Managing Multiple Rollouts in a Scripted Utility
Utility and Rollout Properties, Methods, and Event Handlers
Rollout User-Interface Controls
Visibility of Locals, Functions, Structures, and User-Interface Items in Rollout Code
Accessing Locals and Other Items in a Rollout from External Code