コード例 #1
0
ファイル: sol_ui.py プロジェクト: Vimkxi/vmTools
 def _update_combobox(self):
     """Updates the widget's lights and cameras comboboxes."""
     all_cameras = Method.get_scene_cameras()
     all_lights = Method.get_scene_lights()
     for widget in self._get_sol_widgets():
         widget.update_cameras_combobox(all_cameras)
         widget.update_lights_combobox(all_lights)
コード例 #2
0
ファイル: sol_ui.py プロジェクト: Vimkxi/vmTools
    def update_cameras_combobox(self, cameras=(), clear=True):
        """
        Refreshes the cameras combobox with nodes from the current scene.
        :param cameras: list. Optionnal.
        :param clear: bool. Default True. Whether to clear the list.
        """

        # Block comboboxes signals and get scene cameras
        self.ui_cbb_cam.blockSignals(True)
        cameras = [''] + (cameras or Method.get_scene_cameras())

        # Refill the list if necessary
        if clear:
            self.ui_cbb_cam.clear()
            self.ui_cbb_cam.addItems(cameras)

        # Combo boxes selections
        c_id = cameras.index(self.node_camera) if self.node_camera else 0
        self.ui_cbb_cam.setCurrentIndex(c_id)

        # Re-enable signals
        self.ui_cbb_cam.blockSignals(False)
コード例 #3
0
ファイル: sol_dialogs.py プロジェクト: Vimkxi/vmTools
    def _new_init(self):

        def _set_node(widget):
            try:
                widget.setText(cmds.ls(sl=True)[0])
            except IndexError:
                pass

        main_layout = QtGui.QGridLayout(self)
        self.setWindowTitle('Sol')

        # UI
        self.ui_lbl_01 = QtGui.QLabel('Sol Handle Name')
        self.ui_led_01 = QtGui.QLineEdit('SolHandle1')
        self.ui_lbl_02 = QtGui.QLabel('Sol Handle Camera')
        self.ui_led_02 = QtGui.QLineEdit('')
        self.ui_btn_02 = QtGui.QPushButton('Get')
        self.ui_lbl_03 = QtGui.QLabel('Sol Handle Light')
        self.ui_led_03 = QtGui.QLineEdit('')
        self.ui_btn_03 = QtGui.QPushButton('Get')
        self.ui_lbl_04 = QtGui.QLabel('Geometry')
        self.ui_led_04 = QtGui.QLineEdit('')
        self.ui_btn_04 = QtGui.QPushButton('Get')
        self.ui_btn_10 = QtGui.QPushButton('Create')

        # Auto-fill
        cams = Method.get_scene_cameras()
        lights = Method.get_scene_lights()
        if cams:
            self.ui_led_02.setText(cams[0])
        if lights:
            self.ui_led_03.setText(lights[0])

        # Slots
        self.ui_btn_02.clicked.connect(lambda: _set_node(self.ui_led_02))
        self.ui_btn_03.clicked.connect(lambda: _set_node(self.ui_led_03))
        self.ui_btn_04.clicked.connect(lambda: _set_node(self.ui_led_04))
        self.ui_btn_10.clicked.connect(self._new_complete)

        # Sizes and layout
        self.ui_led_01.setFixedWidth(220)
        self.ui_led_02.setFixedWidth(220)
        self.ui_led_03.setFixedWidth(220)
        self.ui_led_04.setFixedWidth(220)
        self.ui_btn_02.setFixedWidth(40)
        self.ui_btn_03.setFixedWidth(40)
        self.ui_btn_04.setFixedWidth(40)

        main_layout.addWidget(self.ui_lbl_01,   0, 0, 1, 1)
        main_layout.addWidget(self.ui_led_01,   0, 1, 1, 1)
        main_layout.addWidget(self.ui_lbl_02,   1, 0, 1, 1)
        main_layout.addWidget(self.ui_led_02,   1, 1, 1, 1)
        main_layout.addWidget(self.ui_btn_02,   1, 2, 1, 1)
        main_layout.addWidget(self.ui_lbl_03,   2, 0, 1, 1)
        main_layout.addWidget(self.ui_led_03,   2, 1, 1, 1)
        main_layout.addWidget(self.ui_btn_03,   2, 2, 1, 1)
        main_layout.addWidget(self.ui_lbl_04,   3, 0, 1, 1)
        main_layout.addWidget(self.ui_led_04,   3, 1, 1, 1)
        main_layout.addWidget(self.ui_btn_04,   3, 2, 1, 1)
        main_layout.addWidget(QtGui.QLabel(''), 4, 1, 1, 1)
        main_layout.addWidget(self.ui_btn_10,   5, 1, 1, 1)

        self.show()