def create(parent, title, defaultCollapsed=False): ''' creates collapsable UI group ''' cmds.setParent(parent) optionName = "ngSkinTools_group%s_collapse" % title.replace(" ", "") def saveState(): Options.saveOption(optionName, cmds.frameLayout(group, q=True, collapse=True)) group = uiWrappers.frameLayout( label=title, marginWidth=Constants.MARGIN_SPACING_HORIZONTAL, marginHeight=Constants.MARGIN_SPACING_VERTICAL, collapsable=True, expandCommand=saveState, collapseCommand=saveState) cmds.frameLayout(group, e=True, collapse=Options.loadOption(optionName, 1 if defaultCollapsed else 0)) return cmds.columnLayout(adjustableColumn=1, rowSpacing=Constants.MARGIN_SPACING_VERTICAL)
def createUI(self, parent): result = group = self.mainLayout = uiWrappers.frameLayout( parent=parent, label="Influence Filter", marginWidth=Constants.MARGIN_SPACING_HORIZONTAL, marginHeight=Constants.MARGIN_SPACING_VERTICAL, collapsable=True, expandCommand=self.isVisible.save, collapseCommand=self.isVisible.save, borderStyle='etchedIn') cmds.frameLayout(group, e=True, collapse=self.isVisible.get()) column = cmds.columnLayout( parent=group, adjustableColumn=1, rowSpacing=Constants.MARGIN_SPACING_VERTICAL) form = FormLayout(parent=column) label = cmds.text(label='Influence Filter:') textField = self.influenceNameFilter = TextEdit( annotation="Filter influence list by name") clearButton = cmds.button(label='clear', width=50, command=self.clearNameFilter) form.attachForm(label, 10, None, 0, Constants.MARGIN_SPACING_HORIZONTAL) form.attachForm(clearButton, 10, Constants.MARGIN_SPACING_HORIZONTAL, 0, None) form.attachForm(textField, 10, None, 0, None) form.attachControl(textField, label, None, None, None, Constants.MARGIN_SPACING_HORIZONTAL) form.attachControl(textField, clearButton, None, Constants.MARGIN_SPACING_HORIZONTAL, None, None) textField.changeCommand.addHandler(self.filterChanged.emit) cmds.setParent(result) cmds.radioCollection() form = FormLayout(parent=column) self.radioAllInfluences = RadioButtonField(self.VAR_PREFIX + "allInfluences", defaultValue=1, label='Show all influences') self.radioAllInfluences.changeCommand.addHandler( self.radioAllInfluencesChanged) self.radioActiveInfluences = RadioButtonField( self.VAR_PREFIX + "activeInfluences", defaultValue=0, label='Only influences with non-zero weights') form.attachForm(self.radioAllInfluences, 0, 0, None, 90) form.attachForm(self.radioActiveInfluences, None, 0, None, 90) form.attachControl(self.radioActiveInfluences, self.radioAllInfluences, 0, None, None, None) return result
def createUI(self,parent): result = group = self.mainLayout = uiWrappers.frameLayout(parent=parent,label="Influence Filter", marginWidth=Constants.MARGIN_SPACING_HORIZONTAL,marginHeight=Constants.MARGIN_SPACING_VERTICAL, collapsable=True, expandCommand=self.isVisible.save,collapseCommand=self.isVisible.save, borderStyle='etchedIn') cmds.frameLayout(group,e=True,collapse = self.isVisible.get()) column = cmds.columnLayout(parent=group,adjustableColumn=1,rowSpacing=Constants.MARGIN_SPACING_VERTICAL) form = FormLayout(parent=column) label=cmds.text(label='Influence Filter:') textField = self.influenceNameFilter = TextEdit(annotation="Filter influence list by name") clearButton = cmds.button(label='clear',width=50,command=self.clearNameFilter) form.attachForm(label, 10, None, 0, Constants.MARGIN_SPACING_HORIZONTAL) form.attachForm(clearButton, 10, Constants.MARGIN_SPACING_HORIZONTAL, 0, None) form.attachForm(textField,10,None,0,None) form.attachControl(textField,label,None,None,None,Constants.MARGIN_SPACING_HORIZONTAL) form.attachControl(textField,clearButton,None,Constants.MARGIN_SPACING_HORIZONTAL,None,None) textField.changeCommand.addHandler(self.filterChanged.emit) cmds.setParent(result) cmds.radioCollection() form = FormLayout(parent=column) self.radioAllInfluences = RadioButtonField(self.VAR_PREFIX+"allInfluences",defaultValue=1,label='Show all influences') self.radioAllInfluences.changeCommand.addHandler(self.radioAllInfluencesChanged) self.radioActiveInfluences = RadioButtonField(self.VAR_PREFIX+"activeInfluences",defaultValue=0,label='Only influences with non-zero weights') form.attachForm(self.radioAllInfluences, 0, 0, None, 90) form.attachForm(self.radioActiveInfluences, None, 0, None, 90) form.attachControl(self.radioActiveInfluences, self.radioAllInfluences, 0, None, None, None) return result
def createUIGroup(self, layout, title, defaultCollapsed=False): ''' creates collapsable UI group ''' cmds.setParent(layout) group = uiWrappers.frameLayout( label=title, marginWidth=Constants.MARGIN_SPACING_HORIZONTAL, marginHeight=Constants.MARGIN_SPACING_VERTICAL, collapsable=True, expandCommand=self.saveOptions, collapseCommand=self.saveOptions) self.lastCreatedGroup = group self.controls.groups.append(group) cmds.frameLayout(group, e=True, collapse=Options.loadOption( self.getGroupVariable(group), 1 if defaultCollapsed else 0)) return cmds.columnLayout(adjustableColumn=1, rowSpacing=Constants.MARGIN_SPACING_VERTICAL)