コード例 #1
0
def importDataUI():
    """
    UI for selectively loading Rig data.
    """
    rig = Rig()
    dataPath = rig.setDataPath()

    # Build Window
    window = rig.IMPORT_DATA_UI
    if cmds.window(window, q=True, ex=1): cmds.deleteUI(window)
    window = cmds.window(window, t='RIG: Import Data')

    # Layout
    FL = cmds.formLayout()

    # UI Elements
    dataPathTBG = cmds.textFieldButtonGrp(rig.IMPORT_PATH_TBG, label='Data Path', buttonLabel='...', text=dataPath)
    filterTFG = cmds.textFieldGrp(rig.IMPORT_FILTER_TFG, label='Filter', text='')
    fileListTSL = cmds.textScrollList(rig.IMPORT_LIST_TSL, ams=True)
    importB = cmds.button('rigImportData_importB', label='Import', c='glTools.rig.ui.importDataFromUI()')
    cancelB = cmds.button('rigImportData_cancelB', label='Close', c='cmds.deleteUI("' + window + '")')

    # UI Callbacks
    cmds.textFieldButtonGrp(dataPathTBG, e=True, bc='glTools.ui.utils.importFolderBrowser("' + dataPathTBG + '")')
    cmds.textFieldButtonGrp(dataPathTBG, e=True,
                          cc='glTools.ui.utils.loadFileList("' + fileListTSL + '","' + cmds.textFieldButtonGrp(
                              dataPathTBG, q=True, text=True) + '",filesOnly=True,filterStr=".pkl")')

    # Form Layout
    cmds.formLayout(FL, e=True, af=[(dataPathTBG, 'top', 5), (dataPathTBG, 'left', 5), (dataPathTBG, 'right', 5)])
    cmds.formLayout(FL, e=True, ac=[(filterTFG, 'top', 5, dataPathTBG)],
                  af=[(filterTFG, 'left', 5), (filterTFG, 'right', 5)])
    cmds.formLayout(FL, e=True, ac=[(fileListTSL, 'top', 5, filterTFG), (fileListTSL, 'bottom', 5, importB)],
                  af=[(fileListTSL, 'left', 5), (fileListTSL, 'right', 5)])
    cmds.formLayout(FL, e=True, ac=[(importB, 'bottom', 5, cancelB)], af=[(importB, 'left', 5), (importB, 'right', 5)])
    cmds.formLayout(FL, e=True, af=[(cancelB, 'left', 5), (cancelB, 'right', 5), (cancelB, 'bottom', 5)])

    # Load Data files
    if dataPath: glTools.ui.utils.loadFileList(fileListTSL, dataPath, filesOnly=True, filterStr='.pkl', sort=True)

    # Show Window
    cmds.showWindow(window)
コード例 #2
0
def exportDataUI():
    """
    UI for selectively saving Rig data.
    """
    rig = Rig()
    dataPath = rig.setDataPath()

    # Build Window
    window = rig.EXPORT_DATA_UI
    if cmds.window(window, q=True, ex=1): cmds.deleteUI(window)
    window = cmds.window(window, t='RIG: Export Data')

    # Layout
    FL = cmds.formLayout()

    # UI Elements
    dataPathTBG = cmds.textFieldButtonGrp(rig.EXPORT_PATH_TBG, label='Data Path', buttonLabel='...', text=dataPath)
    dataListTSL = cmds.textScrollList(rig.EXPORT_LIST_TSL, ams=True)
    reloadB = cmds.button('rigExportData_reloadB', label='Reload', c='glTools.rig.ui.reloadDataUIList()')
    exportB = cmds.button('rigExportData_exportB', label='Export', c='glTools.rig.ui.exportDataFromUI()')
    cancelB = cmds.button('rigExportData_cancelB', label='Close', c='cmds.deleteUI("' + window + '")')

    # UI Callbacks
    cmds.textFieldButtonGrp(dataPathTBG, e=True, bc='glTools.ui.utils.exportFolderBrowser("' + dataPathTBG + '")')
    cmds.textFieldButtonGrp(dataPathTBG, e=True,
                          cc='glTools.ui.utils.loadFileList("' + dataListTSL + '","' + cmds.textFieldButtonGrp(
                              dataPathTBG, q=True, text=True) + '",filesOnly=True,filterStr=".pkl")')

    # Form Layout
    cmds.formLayout(FL, e=True, af=[(dataPathTBG, 'top', 5), (dataPathTBG, 'left', 5), (dataPathTBG, 'right', 5)])
    cmds.formLayout(FL, e=True, ac=[(dataListTSL, 'top', 5, dataPathTBG), (dataListTSL, 'bottom', 5, reloadB)],
                  af=[(dataListTSL, 'left', 5), (dataListTSL, 'right', 5)])
    cmds.formLayout(FL, e=True, ac=[(reloadB, 'bottom', 5, exportB)], af=[(reloadB, 'left', 5), (reloadB, 'right', 5)])
    cmds.formLayout(FL, e=True, ac=[(exportB, 'bottom', 5, cancelB)], af=[(exportB, 'left', 5), (exportB, 'right', 5)])
    cmds.formLayout(FL, e=True, af=[(cancelB, 'left', 5), (cancelB, 'right', 5), (cancelB, 'bottom', 5)])

    # Load Deformer List
    reloadDataUIList()

    # Show Window
    cmds.showWindow(window)