def _makeTerrainWizard(self):
        terrainWizard = QtGui.QWidget()

        self.cinderBlockButton = QtGui.QToolButton()
        self.cinderBlock2Button = QtGui.QToolButton()
        self.cinderBlockButton.setIcon(QtGui.QIcon(':/images/cinderblock.png'))
        self.cinderBlock2Button.setIcon(QtGui.QIcon(':/images/cinderblock_double.png'))
        self.cinderBlockButton.setIconSize(QtCore.QSize(60,60))
        self.cinderBlock2Button.setIconSize(QtCore.QSize(60,60))

        self.cinderBlockButton.connect('clicked()', functools.partial(self.onTerrainCinderblockSelected, self.cinderBlockButton))
        self.cinderBlock2Button.connect('clicked()', functools.partial(self.onTerrainCinderblockSelected, self.cinderBlock2Button))

        buttons = QtGui.QWidget()
        l = QtGui.QHBoxLayout(buttons)
        l.setMargin(0)
        l.addStretch()
        l.addWidget(self.cinderBlockButton)
        l.addWidget(self.cinderBlock2Button)
        l.addStretch()

        l = QtGui.QVBoxLayout(terrainWizard)
        l.addWidget(buttons)
        l.addWidget(_makeButton('double wide', functools.partial(startInteractiveLineDraw, [0.1905*2, 0.149225])))


        l.addStretch()
        return terrainWizard
 def _makeFirehoseWizard(self):
     firehoseWizard = QtGui.QWidget()
     segmentButton = QtGui.QToolButton()
     segmentButton.setIcon(QtGui.QIcon(':/images/wye.png'))
     segmentButton.setIconSize(QtCore.QSize(60,60))
     segmentButton.connect('clicked()', self.onSegmentWye)
     l = QtGui.QVBoxLayout(firehoseWizard)
     l.addWidget(segmentButton)
     l.addWidget(_makeButton('segment hose nozzle', startHoseNozzleSegmentation))
     l.addStretch()
     return firehoseWizard
Beispiel #3
0
    def iterate(self):
        if PyQt4:
            if self.ready:  # set from thread
                if not self.remotepointer:
                    self.remotepointer = widget = QtGui.QWidget()
                    widget.resize(24, 24)
                    widget.setWindowTitle('remote pointer')
                    flags = Qt.FramelessWindowHint | Qt.WindowStaysOnTopHint
                    widget.setWindowFlags(flags)
                    widget.setAttribute(Qt.WA_TranslucentBackground)
                    self.remotepointer_button = but = QtGui.QToolButton(widget)
                    but.setArrowType(Qt.UpArrow)
                    but.setGeometry(0, 0, 24, 24)  #but.setText('xx')
                self.remotepointer.show()

            if self.remotepointer and not self.clients:
                self.remotepointer.hide()

            if self.ready_mouse:  # set from thread
                button, x, y = self.ready_mouse
                if button and not self._button_down:
                    self._button_down = True
                    self.remotepointer_button.setArrowType(Qt.DownArrow)
                elif not button and self._button_down:
                    self._button_down = False
                    self.remotepointer_button.setArrowType(Qt.UpArrow)

                _clicktxt = 'click!'
                if len(self._clicks) > 1: _clicktxt = 'double-click!'
                if self._allow_mouse_warp:
                    if self.windll:
                        self.windll.user32.SetCursorPos(x, y)
                        if self._allow_mouse_click and self._clicks:
                            for x, y in self._clicks:
                                self.windll.user32.SetCursorPos(
                                    x,
                                    y)  # seems like this won't work under wine
                                self.windll.user32.mouse_event(2, 0, 0, 0,
                                                               0)  # left down
                                self.windll.user32.mouse_event(3, 0, 0, 0,
                                                               0)  # left up

                    elif gtk:
                        display = gtk.gdk.display_get_default()
                        display.warp_pointer(display.get_default_screen(), x,
                                             y)

                self.remotepointer.move(x + 2, y - 10)

                #if button and (not self._button_down or not QtGui.QToolTip.isVisible()):
                #	self._button_down = True
                #	if QtGui.QToolTip.isVisible(): QtGui.QToolTip.hideText()
                #	QtGui.QToolTip.showText( QtCore.QPoint(x,y), _clicktxt )	# very unthreadsafe
                #elif not button: self._button_down = False
                if self._clicks:
                    if button == 2: _clicktxt = 'right-click!'
                    elif button == 4: _clicktxt = 'middle-click!'
                    if QtGui.QToolTip.isVisible(): QtGui.QToolTip.hideText()
                    QtGui.QToolTip.showText(QtCore.QPoint(x, y), _clicktxt)
                self.ready_mouse = None
                self._clicks = []

            if not naali: app.processEvents()

        if _rfb_.rfbIsActive(self.serverPtr):
            if time.time() - self._lastupdate > self._refresh:
                self._lastupdate = time.time()
                rect = self._rects[self._index]
                x, y, w, h = rect
                self._buffer += self.get_screen_shot(self._antialias, rect)
                self.lock.acquire()
                ctypes.memmove(self.framebuffer, self._buffer,
                               len(self._buffer))
                self.lock.release()
                _rfb_.rfbMarkRectAsModified(self.serverPtr, x, y, w, h)
                self._index += 1
                if self._index == len(self._rects):
                    self._index = 0
                    self._buffer = ''
Beispiel #4
0
    def gui_example(self, object):
        self.set_mdsa(object)
        dialog = QtGui.QDialog()
        dialog.setObjectName("dialog")
        dialog.resize(858, 555)
        
        gridLayout_5 = QtGui.QGridLayout(dialog)
        gridLayout_5.setObjectName("gridLayout_5")

        avatar_groupBox = QtGui.QGroupBox(dialog)
        avatar_groupBox.setObjectName("save_groupBox")

        gridLayout = QtGui.QGridLayout(avatar_groupBox)
        gridLayout.setObjectName("gridLayout")

        avatar_load_toolButton = QtGui.QToolButton(avatar_groupBox)
        avatar_load_toolButton.setObjectName("avatar_load_toolButton")

        gridLayout.addWidget(avatar_load_toolButton, 0, 0, 1, 1)

        avatar_refresh_toolButton = QtGui.QToolButton(avatar_groupBox)
        avatar_refresh_toolButton.setObjectName("avatar_refresh_toolButton")

        gridLayout.addWidget(avatar_refresh_toolButton, 0, 1, 1, 1)

        self.avatar_ext_comboBox = QtGui.QComboBox(avatar_groupBox);
        self.avatar_ext_comboBox.setObjectName("avatar_ext_comboBox");
        self.avatar_ext_comboBox.clear();
        self.avatar_ext_comboBox.insertItem(0, "avt")
        self.avatar_ext_comboBox.insertItem(1, "obj")
        self.avatar_ext_comboBox.insertItem(2, "fbx")
        self.avatar_ext_comboBox.insertItem(3, "dae")

        gridLayout.addWidget(self.avatar_ext_comboBox, 0, 2, 1, 1);


        horizontalSpacer = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)

        gridLayout.addItem(horizontalSpacer, 0, 3, 1, 1)

        self.avatar_listWidget = QtGui.QListWidget(avatar_groupBox)
        self.avatar_listWidget.setObjectName("listWidget")

        gridLayout.addWidget(self.avatar_listWidget, 1, 0, 1, 3)

        gridLayout_5.addWidget(avatar_groupBox, 1, 0, 1, 1)

        garment_groupBox = QtGui.QGroupBox(dialog)
        garment_groupBox.setObjectName("laod_groupBox")
        gridLayout_2 = QtGui.QGridLayout(garment_groupBox);
        gridLayout_2.setObjectName("gridLayout_2")
        garment_load_toolButton = QtGui.QToolButton(garment_groupBox)
        garment_load_toolButton.setObjectName("garment_load_toolButton")

        gridLayout_2.addWidget(garment_load_toolButton, 0, 0, 1, 1)

        garment_refresh_toolButton = QtGui.QToolButton(garment_groupBox)
        garment_refresh_toolButton.setObjectName("garment_refresh_toolButton")

        gridLayout_2.addWidget(garment_refresh_toolButton, 0, 1, 1, 1)

        self.garment_ext_comboBox = QtGui.QComboBox(garment_groupBox);
        self.garment_ext_comboBox.setObjectName("garment_ext_comboBox");

        self.garment_ext_comboBox.clear();
        self.garment_ext_comboBox.insertItem(0, "zpac")
        self.garment_ext_comboBox.insertItem(1, "pac")

        gridLayout_2.addWidget(self.garment_ext_comboBox, 0, 2, 1, 1);

        horizontalSpacer_2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)

        gridLayout_2.addItem(horizontalSpacer_2, 0, 3, 1, 1)

        self.garment_listWidget = QtGui.QListWidget(garment_groupBox)
        self.garment_listWidget.setObjectName("garment_listWidget")

        gridLayout_2.addWidget(self.garment_listWidget, 1, 0, 1, 3)


        gridLayout_5.addWidget(garment_groupBox, 1, 1, 1, 1)

        animation_groupBox = QtGui.QGroupBox(dialog)
        animation_groupBox.setObjectName("animation_groupBox")

        gridLayout_3 = QtGui.QGridLayout(animation_groupBox)
        gridLayout_3.setObjectName("gridLayout_3")

        anim_load_toolButton = QtGui.QToolButton(animation_groupBox)
        anim_load_toolButton.setObjectName("anim_load_toolButton")

        gridLayout_3.addWidget(anim_load_toolButton, 0, 0, 1, 1)

        anim_refresh_toolButton = QtGui.QToolButton(animation_groupBox)
        anim_refresh_toolButton.setObjectName("anim_refresh_toolButton")
        gridLayout_3.addWidget(anim_refresh_toolButton, 0, 1, 1, 1)

        self.animation_ext_comboBox = QtGui.QComboBox(animation_groupBox);
        self.animation_ext_comboBox.setObjectName("animation_ext_comboBox");
        
        self.animation_ext_comboBox.clear();
        self.animation_ext_comboBox.insertItem(0, "pos")
        self.animation_ext_comboBox.insertItem(1, "mtn")
        self.animation_ext_comboBox.insertItem(2, "abc")
        self.animation_ext_comboBox.insertItem(3, "mc")
        self.animation_ext_comboBox.insertItem(4, "pc2")
        self.animation_ext_comboBox.insertItem(5, "mdd")

        gridLayout_3.addWidget(self.animation_ext_comboBox, 0, 2, 1, 1);

        horizontalSpacer_3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)

        gridLayout_3.addItem(horizontalSpacer_3, 0, 3, 1, 1)

        self.animation_listWidget = QtGui.QListWidget(animation_groupBox)
        self.animation_listWidget.setObjectName("animation_listWidget")

        gridLayout_3.addWidget(self.animation_listWidget, 1, 0, 1, 3)


        gridLayout_5.addWidget(animation_groupBox, 1, 2, 1, 1)

        save_groupBox = QtGui.QGroupBox(dialog)
        save_groupBox.setObjectName("save_groupBox")
        gridLayout_4 = QtGui.QGridLayout(save_groupBox)
        gridLayout_4.setObjectName("gridLayout_4")
        save_toolButton = QtGui.QToolButton(save_groupBox)
        save_toolButton.setObjectName("save_toolButton")

        gridLayout_4.addWidget(save_toolButton, 0, 0, 1, 1)

        self.save_ext_comboBox = QtGui.QComboBox(save_groupBox);
        self.save_ext_comboBox.setObjectName("save_ext_comboBox");

        self.save_ext_comboBox.clear();
        self.save_ext_comboBox.insertItem(0, "zprj")
        self.save_ext_comboBox.insertItem(1, "zpac")
        self.save_ext_comboBox.insertItem(2, "obj")
        self.save_ext_comboBox.insertItem(3, "fbx")
        self.save_ext_comboBox.insertItem(4, "abc")
        self.save_ext_comboBox.insertItem(5, "mc")
        self.save_ext_comboBox.insertItem(6, "pc2")
        self.save_ext_comboBox.insertItem(7, "mdd")

        gridLayout_4.addWidget(self.save_ext_comboBox, 0, 1, 1, 1);

        self.save_listWidget = QtGui.QListWidget(save_groupBox)
        self.save_listWidget.setObjectName("save_listWidget")

        gridLayout_4.addWidget(self.save_listWidget, 1, 0, 1, 2)

        horizontalSpacer_4 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)

        gridLayout_4.addItem(horizontalSpacer_4, 0, 2, 1, 1)

        gridLayout_5.addWidget(save_groupBox, 2, 0, 1, 3)

        horizontalSpacer_5 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        gridLayout_5.addItem(horizontalSpacer_5, 3, 0, 1, 1);
        
        process_button = QtGui.QPushButton(dialog)
        process_button.setObjectName("process_button")

        gridLayout_5.addWidget(process_button, 3, 1, 1, 1)

        cancel_button = QtGui.QPushButton(dialog)
        cancel_button.setObjectName("cancel_button")
        gridLayout_5.addWidget(cancel_button, 3, 2, 1, 1)

        horizontalSpacer_6 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        gridLayout_5.addItem(horizontalSpacer_6, 3, 3, 1, 1);

        sync_button = QtGui.QToolButton(dialog);
        sync_button.setObjectName("sync_button");

        gridLayout_5.addWidget(sync_button, 0, 0, 1, 2);

        dialog.setWindowTitle("Dialog")
        avatar_groupBox.setTitle("Avatar")
        avatar_load_toolButton.setText("Load")
        avatar_refresh_toolButton.setText("Refresh")
        garment_groupBox.setTitle("Garement")
        garment_load_toolButton.setText("Load")
        garment_refresh_toolButton.setText("Refresh")
        animation_groupBox.setTitle("Animation")
        anim_refresh_toolButton.setText("Refresh")
        anim_load_toolButton.setText("Load")
        save_groupBox.setTitle("Save File")
        save_toolButton.setText("Save")
        process_button.setText("Process")
        cancel_button.setText("Cancel")
        sync_button.setText("Sync File List")

        process_button.connect("clicked(bool)", self.run_process)
        avatar_load_toolButton.connect("clicked(bool)", self.set_avatar_path_list)
        garment_load_toolButton.connect("clicked(bool)", self.set_garment_path_list)
        anim_load_toolButton.connect("clicked(bool)", self.set_animation_path_list)
        sync_button.connect("clicked(bool)", self.sync_file_list)
        avatar_refresh_toolButton.connect("clicked(bool)", self.refresh_avatar_list)
        garment_refresh_toolButton.connect("clicked(bool)", self.refresh_garment_list)
        anim_refresh_toolButton.connect("clicked(bool)", self.refresh_animation_list)
        save_toolButton.connect("clicked(bool)", self.set_save_path_list)
        cancel_button.connect("clicked(bool)", self.cancel)

        self.widget = dialog
        return dialog
Beispiel #5
0
    def __init__(self):
        super(ExportQtGui, self).__init__()
        #--# Create Groups
        self.mainGroup = QtGui.QGroupBox('Export List')
        self.optionGroup = QtGui.QGroupBox('Options')
        #--# Create Layouts
        layoutV1_main = QtGui.QVBoxLayout()
        layoutV2_grp = QtGui.QVBoxLayout()
        layoutV3_grp = QtGui.QVBoxLayout()
        layoutH1_wdg = QtGui.QHBoxLayout()
        layoutH2_wdg = QtGui.QHBoxLayout()
        layoutH3_wdg = QtGui.QHBoxLayout()
        layoutH4_wdg = QtGui.QHBoxLayout()
        layoutH5_wdg = QtGui.QHBoxLayout()
        ## Build Layouts
        self.setLayout(layoutV1_main)
        self.mainGroup.setLayout(layoutV2_grp)
        self.optionGroup.setLayout(layoutV3_grp)
        layoutV2_grp.addLayout(layoutH1_wdg)
        layoutV2_grp.addLayout(layoutH2_wdg)
        layoutV3_grp.addLayout(layoutH3_wdg)
        layoutV3_grp.addLayout(layoutH4_wdg)
        layoutV3_grp.addLayout(layoutH5_wdg)
        #--# Export List TreeWidget
        self.exportList = QtGui.QTreeWidget()
        self.exportList.setSelectionMode(
            QtGui.QAbstractItemView.ExtendedSelection)
        self.exportList.setSortingEnabled(True)
        self.exportList.setAlternatingRowColors(True)
        #--# Create Widgets
        self.addBtn = QtGui.QToolButton(self)
        self.removeBtn = QtGui.QToolButton(self)
        self.clearBtn = QtGui.QToolButton(self)
        self.addAllBtn = QtGui.QToolButton(self)
        self.browseBtn = QtGui.QPushButton('Browse')
        self.exportBtn = QtGui.QPushButton('Export')
        self.formatCombo = QtGui.QComboBox()
        self.exportLabel = QtGui.QLabel('Path: ')
        self.formatLabel = QtGui.QLabel('Format: ')
        self.templateLabel = QtGui.QLabel('Template: ')
        self.templateLn = QtGui.QLineEdit(defaultTemplate)
        self.exportLn = QtGui.QLineEdit()
        ## Set Icons
        self.addBtn.setIcon(QtGui.QIcon('%s/Plus.png' % icon_path))
        self.removeBtn.setIcon(QtGui.QIcon('%s/Minus.png' % icon_path))
        self.clearBtn.setIcon(QtGui.QIcon('%s/Quit.png' % icon_path))
        self.addAllBtn.setIcon(QtGui.QIcon('%s/AddObject.png' % icon_path))
        #--# Populate Layouts
        layoutH1_wdg.addWidget(self.exportList)
        layoutH2_wdg.addWidget(self.addBtn)
        layoutH2_wdg.addWidget(self.removeBtn)
        layoutH2_wdg.addWidget(self.clearBtn)
        layoutH2_wdg.addWidget(self.addAllBtn)
        layoutH2_wdg.addStretch()
        layoutH3_wdg.addWidget(self.exportLabel)
        layoutH3_wdg.addWidget(self.exportLn)
        layoutH3_wdg.addWidget(self.browseBtn)
        layoutH4_wdg.addWidget(self.templateLabel)
        layoutH4_wdg.addWidget(self.templateLn)
        layoutH4_wdg.addWidget(self.formatLabel)
        layoutH4_wdg.addWidget(self.formatCombo)
        layoutH5_wdg.addWidget(self.exportBtn)
        ## Final
        layoutV1_main.addWidget(self.mainGroup)
        layoutV1_main.addWidget(self.optionGroup)
        #--# StyleSheets
        self.setStyleSheet("\
		QTreeWidget { alternate-background-color: rgb(100, 100, 100); } \
		")
        #--# Keyboard shortcuts
        self.deleteKey = QtGui.QShortcut(QtGui.QKeySequence('Delete'), self)
        #--# Connections
        self.addBtn.connect("clicked()", self.addUDIM)
        self.removeBtn.connect("clicked()",
                               lambda: self.manageTree(remove=True))
        self.clearBtn.connect("clicked()", self.clear)
        self.addAllBtn.connect("clicked()", self.addAllObjects)
        self.browseBtn.connect("clicked()", self.getExportPath)
        self.exportBtn.connect("clicked()", self.export)
        self.deleteKey.connect("activated()",
                               lambda: self.manageTree(remove=True))
        self.exportList.connect("itemDoubleClicked (QTreeWidgetItem *,int)",
                                lambda: self.manageTree(pick=True))
        #--# Init
        self.init()
        self.setHeader()