def create_tearoff_viewport(camera, title=None, size=None, model_editor_kwargs=None, position=None): tearoff_window = mc.window(title=title) _model_editor_kwargs = model_editor_kwargs or dict() model_editor_kwargs = DEFAULT_MODEL_EDITOR_KWARGS.copy() model_editor_kwargs.update(_model_editor_kwargs) model_editor_kwargs['camera'] = camera if size is None: try: w, h = get_screen_size() size = w * .6, h * .6 except BaseException: size = [1280, 720] mc.window(tearoff_window, edit=True, widthHeight=size) if position is None: position = [w / 10, h / 10] mc.window(tearoff_window, edit=True, topLeftCorner=position) mc.paneLayout() panel = mc.modelPanel() mc.timePort(height=30, snap=True) mc.showWindow(tearoff_window) editor = mc.modelPanel(panel, query=True, modelEditor=True) mc.modelEditor(editor, edit=True, **model_editor_kwargs) mc.refresh() mc.modelEditor(editor, edit=True, activeView=True) return editor, panel, tearoff_window
def __init__(self, mainWindow): super(TheTimeSlider, self).__init__(None) self.mainWindow = mainWindow self.listKeys = [] #self.theTimePort = timePort.theTimePort #self.mayaMainWindow = timePort.mayaWindowLayout #theWindowForQtObjects = getQTObject () theWindowForQtObjects = self.mainWindow.theWindowForQtObjects cmds.setParent("tmpWidgetsWindow|qtLayoutObjects") # cmds.setParent ("MayaWindow|formLayout1|qtLayoutObjects") cmdsTimePort = cmds.timePort('skinFixingTimePort', w=10, h=20, snap=True, globalTime=True, enableBackground=True, bgc=[.5, .5, .6]) # self.theTimePort = gui_utils.qtLayoutObject.children() [-1] self.theTimePort = theWindowForQtObjects.children()[-1] self.theTimePort.setParent(self) self.theTimePort.show() self.setMaximumHeight(40) self.setMinimumHeight(40)
def create_timeline(self): """Creates a timeline widget.""" self.timeline = dwidget.DragSupportWidget() self.timeline.setLayout(dlayout.DragSupportLayout()) self.timeline_layout.addWidget(self.timeline) cmds.window() cmds.columnLayout() tp = cmds.timePort(bgc=(0.45, 0.45, 0.45), gt=True) tp_ptr = OpenMayaUI.MQtUtil.findControl(tp) self.timeport = shiboken.wrapInstance(long(tp_ptr), QtGui.QWidget) self.timeline.layout().addWidget(self.timeport) self.timeport.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)) self.resize_timeline()
def create_timeline(self): """Creates a timeline widget.""" self.timeline = dwidget.DragSupportWidget() self.timeline.setLayout(dlayout.DragSupportLayout()) self.timeline_layout.addWidget(self.timeline) cmds.window() cmds.columnLayout() tp = cmds.timePort(bgc=(0.45, 0.45, 0.45), gt=True) tp_ptr = OpenMayaUI.MQtUtil.findControl(tp) self.timeport = shiboken.wrapInstance(long(tp_ptr), QtGui.QWidget) self.timeline.layout().addWidget(self.timeport) self.timeport.setSizePolicy( QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)) self.resize_timeline()
def init_timeline(self): """Initializes the timeline widget. * sets the layout * adds a maya timeport to the widget """ self.setLayout(dlayout.DragSupportLayout()) cmds.window() cmds.columnLayout() tp = cmds.timePort(bgc=(0.45, 0.45, 0.45), gt=True) tp_ptr = OpenMayaUI.MQtUtil.findControl(tp) self.timeport = shiboken.wrapInstance(long(tp_ptr), QtGui.QWidget) self.layout().addWidget(self.timeport) self.timeport.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)) for i in range(self.item.rowCount()): key = self.item.child(i).data(QtCore.Qt.DisplayRole) self.create_timeline_button(key)
def init_timeline(self): """Initializes the timeline widget. * sets the layout * adds a maya timeport to the widget """ self.setLayout(dlayout.DragSupportLayout()) cmds.window() cmds.columnLayout() tp = cmds.timePort(bgc=(0.45, 0.45, 0.45), gt=True) tp_ptr = OpenMayaUI.MQtUtil.findControl(tp) self.timeport = shiboken.wrapInstance(long(tp_ptr), QtGui.QWidget) self.layout().addWidget(self.timeport) self.timeport.setSizePolicy( QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)) for i in range(self.item.rowCount()): key = self.item.child(i).data(QtCore.Qt.DisplayRole) self.create_timeline_button(key)
def custom_graph_editor(*args): invis_panel = cmds.getPanel(invisiblePanels=True) graphpanels = cmds.getPanel(scriptType='graphEditor') graphpanels.remove('graphEditor1') for o_graphp in graphpanels: if o_graphp in invis_panel: cmds.deleteUI(o_graphp, panel=True) grp_panel_no_a = str(len(cmds.getPanel(scriptType='graphEditor')) + 1) if cmds.window('custom_graphEditor' + grp_panel_no_a, exists=True): n_graphpanels = cmds.getPanel(scriptType='graphEditor') biggest_p = 1 for o_panel in n_graphpanels: if int(o_panel[len('graphEditor'):]) > biggest_p: biggest_p = int(o_panel[len('graphEditor'):]) grp_panel_no_a = str(biggest_p + 1) try: win1 = cmds.window('custom_graphEditor' + grp_panel_no_a, title='New CustomGraphEditor' + grp_panel_no_a, resizeToFitChildren=True, widthHeight=(1100, 450)) except: grp_panel_no_a = str(int(grp_panel_no_a) + 1) win1 = cmds.window('custom_graphEditor' + grp_panel_no_a, title='New CustomGraphEditor' + grp_panel_no_a, resizeToFitChildren=True, widthHeight=(1100, 450)) pane1 = cmds.paneLayout(configuration='horizontal2', paneSize=[2, 1, 1], parent=win1) graphmenu = 'graphEditor' + grp_panel_no_a cmds.scriptedPanel(graphmenu, label=graphmenu, type='graphEditor', parent=pane1) cmds.setParent('..') current_minimum_frame = cmds.playbackOptions(query=True, minTime=True) current_maxmum_frame = cmds.playbackOptions(query=True, maxTime=True) outline_ed_name = "graphEditor" + grp_panel_no_a + 'OutlineEd' mel.eval('string $outlineed_name = "%s"' % outline_ed_name) graph_ed_name = "graphEditor" + grp_panel_no_a + 'GraphEd' mel.eval('string $o_graph_ed_name = "%s"' % graph_ed_name) mel.eval('animCurveEditor -edit -displayInfinities true $o_graph_ed_name;') mel.eval('filterUISelectAttributesCheckbox translateX 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox translateY 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox translateZ 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox rotateX 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox rotateY 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox rotateZ 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox scaleX 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox scaleY 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox scaleZ 0 $outlineed_name;') mel.eval('filterUISelectAttributesCheckbox visibility 0 $outlineed_name;') cmds.columnLayout(adjustableColumn=True) cmds.rowLayout(numberOfColumns=19, adjustableColumn=19) cmds.text('t') cmds.button('b_c_tx' + grp_panel_no_a, label='X', bgc=[0.3, 0.0, 0.0], annotation='TranslateX', command=select_curve_tx, dragCallback=filter_tx, dropCallback=filter_tx2) cmds.button('b_c_ty' + grp_panel_no_a, label='Y', bgc=[0.0, 0.3, 0.0], annotation='TranslateY', command=select_curve_ty, dragCallback=filter_ty, dropCallback=filter_ty2) cmds.button('b_c_tz' + grp_panel_no_a, label='Z', bgc=[0.0, 0.0, 0.3], annotation='TranslateZ', command=select_curve_tz, dragCallback=filter_tz, dropCallback=filter_tz2) cmds.text(' r') cmds.button('b_c_rx' + grp_panel_no_a, label='X', bgc=[0.3, 0.0, 0.0], annotation='RotateX', command=select_curve_rx, dragCallback=filter_rx, dropCallback=filter_rx2) cmds.button('b_c_ry' + grp_panel_no_a, label='Y', bgc=[0.0, 0.3, 0.0], annotation='RotateY', command=select_curve_ry, dragCallback=filter_ry, dropCallback=filter_ry2) cmds.button('b_c_rz' + grp_panel_no_a, label='Z', bgc=[0.0, 0.0, 0.3], annotation='RotateZ', command=select_curve_rz, dragCallback=filter_rz, dropCallback=filter_rz2) cmds.text(' s') cmds.button('b_c_sx' + grp_panel_no_a, label='X', bgc=[0.3, 0.0, 0.0], annotation='ScaleX', command=select_curve_sx, dragCallback=filter_sx, dropCallback=filter_sx2) cmds.button('b_c_sy' + grp_panel_no_a, label='Y', bgc=[0.0, 0.3, 0.0], annotation='ScaleY', command=select_curve_sy, dragCallback=filter_sy, dropCallback=filter_sy2) cmds.button('b_c_sz' + grp_panel_no_a, label='Z', bgc=[0.0, 0.0, 0.3], annotation='ScaleZ', command=select_curve_sz, dragCallback=filter_sz, dropCallback=filter_sz2) cmds.text(' ') cmds.button('b_c_v' + grp_panel_no_a, label='V', bgc=[0.3, 0.3, 0.3], annotation='Visibility', command=select_curve_v, dragCallback=filter_v, dropCallback=filter_v2) cmds.text(' ') cmds.symbolButton('time_prev' + grp_panel_no_a, image='timeprev.xpm', command=o_prev_cmd, dragCallback=o_key_prev_cmd, dropCallback=o_key_prev_cmd2) cmds.symbolButton('time_next' + grp_panel_no_a, image='timenext.xpm', command=o_next_cmd, dragCallback=o_key_next_cmd, dropCallback=o_key_next_cmd2) cmds.text(' ') cmds.timePort(enableBackground=True, bgc=[0.2, 0.2, 0.2], width=500, height=20) cmds.setParent('..') cmds.rowLayout(numberOfColumns=16) cmds.text(' ') cmds.button('mirror' + grp_panel_no_a, label='Mirror', command=mirror_x, dragCallback=mirror_y, dropCallback=mirror_y2) cmds.button('Cycle_ON' + grp_panel_no_a, label='Cycle_ON', command=Cycle_On) cmds.button('Cycle_OFF' + grp_panel_no_a, label='Cycle_OFF', command=Cycle_Off) cmds.text(' ') cmds.button('Retime' + grp_panel_no_a, label='Retime', command=RetimeHelper) cmds.button('Out_l' + grp_panel_no_a, label='Outliner', command="mel.eval('OutlinerWindow;')") cmds.optionMenu(label='Speed', changeCommand=SetSpeed) cmds.menuItem(label='realtime') cmds.menuItem(label='2x') cmds.menuItem(label='1/2x') cmds.text(' ') cmds.symbolButton('time_rew' + grp_panel_no_a, image='timerew.xpm', command="mel.eval('playButtonStart;')") cmds.symbolButton('step_backward' + grp_panel_no_a, image='timeend.xpm', command=lambda x: step_backward(grp_panel_no_a)) cmds.symbolButton('play_forward' + grp_panel_no_a, image='timeplay.xpm', command=lambda x: play_forward(grp_panel_no_a)) cmds.symbolButton('step_forward' + grp_panel_no_a, image='timestart.xpm', command=lambda x: step_forward(grp_panel_no_a)) cmds.symbolButton('time_fwd' + grp_panel_no_a, image='timefwd.xpm', command="mel.eval('playButtonEnd;')") cmds.showWindow()