The layoutDialog command creates a modal dialog containing a formLayout with 100 divisions. The formLayout can be populated with arbitrary UI elements through use of the ‘-ui/-uiScript’ flag. NOTE:A layoutDialog is not a window and certain UI elements will not function properly within it. In particular menuBars and panels containing menuBars should not be used with the layoutDialog.
| Long name (short name) | Argument Types | Properties | |
|---|---|---|---|
| backgroundColor (bgc) | float, float, float |   | |
| The background color of the dialog. The arguments correspond to the red, green, and blue color components. Each component ranges in value from 0.0 to 1.0. (Windows only flag) | |||
| dismiss (dis) | unicode |   | |
| 
 | |||
| parent (p) | unicode |   | |
| Specify the parent window for the dialog. The dialog will be centered on this window and raise and lower with it’s parent. By default, the dialog is not parented to a particular window and is simply centered on the screen. | |||
| title (t) | unicode |   | |
| 
 | |||
| uiScript (ui) | script |   | |
| The specified MEL procedure name will be invoked to build the UI of the layoutDialog. This flag is required when creating a layoutDialog. The top-level control of a layoutDialog is a formLayout with 100 divisions. It can be accessed by calling ‘setParent -q’ at the beginning of the specified MEL procedure.Flag can appear in Create mode of commandFlag can have multiple arguments, passed either as a tuple or a list. | |||
Derived from mel command maya.cmds.layoutDialog
Example:
import pymel.core as pm
def checkboxPrompt():
        # Get the dialog's formLayout.
        #
        form = pm.setParent(q=True)
        # layoutDialog's are not resizable, so hard code a size here,
        # to make sure all UI elements are visible.
        #
        pm.formLayout(form, e=True, width=300)
        t = pm.text(l='What do you want to do?')
        b1 = pm.button(l='Abort', c='pm.layoutDialog( dismiss="Abort" )' )
        b2 = pm.button(l='Skip', c='pm.layoutDialog( dismiss="Skip" )' )
        b3 = pm.button(l='Continue', c='pm.layoutDialog( dismiss="Continue" )' )
        cb1 = pm.checkBox(label='Remember my choice')
        spacer = 5
        top = 5
        edge = 5
        pm.formLayout(form, edit=True,
                                        attachForm=[(t, 'top', top), (t, 'left', edge), (t, 'right', edge), (b1, 'left', edge), (b3, 'right', edge), (cb1, 'left', edge), (cb1, 'bottom', spacer)],
                                        attachNone=[(t, 'bottom'), (b1, 'bottom'), (b2, 'bottom'), (b3, 'bottom'), (cb1, 'right')],
                                        attachControl=[(b1, 'top', spacer, t), (b2, 'top', spacer, t), (b3, 'top', spacer, t), (cb1, 'top', spacer, b1)],
                                        attachPosition=[(b1, 'right', spacer, 33), (b2, 'left', spacer, 33), (b2, 'right', spacer, 66), (b3, 'left', spacer, 66)])
print pm.layoutDialog(ui=checkboxPrompt)