def __init__(self, widget): self.form = widget main_layout = QtWidgets.QVBoxLayout(self.form) self.placement = True self.v = FreeCAD.Gui.ActiveDocument.ActiveView # ---- Move distance ---- self.move_l_Label = QtWidgets.QLabel("Move distance:") self.move_l_Value = QtWidgets.QDoubleSpinBox() self.move_l_Value.setValue(60) self.move_l_Value.setSuffix(' mm') move_layout = QtWidgets.QHBoxLayout() move_layout.addWidget(self.move_l_Label) move_layout.addWidget(self.move_l_Value) # ---- Filter Length ---- self.Filter_Length_Label = QtWidgets.QLabel("Filter Length") self.Filter_Length_Value = QtWidgets.QDoubleSpinBox() self.Filter_Length_Value.setValue(60) self.Filter_Length_Value.setSuffix(' mm') length_layout = QtWidgets.QHBoxLayout() length_layout.addWidget(self.Filter_Length_Label) length_layout.addWidget(self.Filter_Length_Value) # ---- Filter Width ---- self.Filter_Width_Label = QtWidgets.QLabel("Filter Width") self.Filter_Width_Value = QtWidgets.QDoubleSpinBox() self.Filter_Width_Value.setValue(25) self.Filter_Width_Value.setSuffix(' mm') width_layout = QtWidgets.QHBoxLayout() width_layout.addWidget(self.Filter_Width_Label) width_layout.addWidget(self.Filter_Width_Value) # ---- Base width ---- self.base_w_Label = QtWidgets.QLabel("Base width:") #10/15/20/30/40 self.ComboBox_base_w = QtWidgets.QComboBox() self.TextBase_W = ["10mm", "15mm", "20mm", "30mm", "40mm"] self.ComboBox_base_w.addItems(self.TextBase_W) self.ComboBox_base_w.setCurrentIndex(self.TextBase_W.index('20mm')) base_width_layout = QtWidgets.QHBoxLayout() base_width_layout.addWidget(self.base_w_Label) base_width_layout.addWidget(self.ComboBox_base_w) # ---- Tensioner Stroke ---- self.tens_stroke_Label = QtWidgets.QLabel("Tensioner stroke:") self.tens_stroke_Value = QtWidgets.QDoubleSpinBox() self.tens_stroke_Value.setValue(20) self.tens_stroke_Value.setSuffix(' mm') tensioner_layout = QtWidgets.QHBoxLayout() tensioner_layout.addWidget(self.tens_stroke_Label) tensioner_layout.addWidget(self.tens_stroke_Value) # ---- Wall thick ---- self.wall_th_Label = QtWidgets.QLabel("Wall thick:") self.wall_th_Value = QtWidgets.QDoubleSpinBox() self.wall_th_Value.setValue(3) self.wall_th_Value.setSuffix(' mm') wall_layout = QtWidgets.QHBoxLayout() wall_layout.addWidget(self.wall_th_Label) wall_layout.addWidget(self.wall_th_Value) # ---- Nut Type ---- self.nut_hole_Label = QtWidgets.QLabel("Nut Type:") self.ComboBox_Nut_Hole = QtWidgets.QComboBox() self.TextNutType = ["M3", "M4", "M5", "M6"] self.ComboBox_Nut_Hole.addItems(self.TextNutType) self.ComboBox_Nut_Hole.setCurrentIndex(self.TextNutType.index('M3')) nut_layout = QtWidgets.QHBoxLayout() nut_layout.addWidget(self.nut_hole_Label) nut_layout.addWidget(self.ComboBox_Nut_Hole) # ---- Size Holder ---- self.Size_Holder_Label = QtWidgets.QLabel("Motor size") self.ComboBox_Size_Holder = QtWidgets.QComboBox() self.TextSizeHolder = ["8", "11", "14", "17", "23", "34", "42"] self.ComboBox_Size_Holder.addItems(self.TextSizeHolder) self.ComboBox_Size_Holder.setCurrentIndex( self.TextSizeHolder.index('14')) nema_holder_layout = QtWidgets.QHBoxLayout() nema_holder_layout.addWidget(self.Size_Holder_Label) nema_holder_layout.addWidget(self.ComboBox_Size_Holder) # ---- Rail Max High ---- self.motor_high_Label = QtWidgets.QLabel("Rail high Motor holder") self.motor_high_Value = QtWidgets.QDoubleSpinBox() self.motor_high_Value.setValue(25) #Value printed self.motor_high_Value.setSuffix(' mm') rail_layout = QtWidgets.QHBoxLayout() rail_layout.addWidget(self.motor_high_Label) rail_layout.addWidget(self.motor_high_Value) # ---- Thickness ---- self.Thickness_Label = QtWidgets.QLabel("Motor holder thickness:") self.Thickness_Value = QtWidgets.QDoubleSpinBox() self.Thickness_Value.setValue(3) self.Thickness_Value.setMinimum(2) self.Thickness_Value.setSuffix(' mm') thickness_layout = QtWidgets.QHBoxLayout() thickness_layout.addWidget(self.Thickness_Label) thickness_layout.addWidget(self.Thickness_Value) # ---- Placement ---- self.label_position = QtWidgets.QLabel("Placement ") self.label_pos_x = QtWidgets.QLabel("x:") self.label_pos_y = QtWidgets.QLabel("y:") self.label_pos_z = QtWidgets.QLabel("z:") self.pos_x = QtWidgets.QDoubleSpinBox() self.pos_y = QtWidgets.QDoubleSpinBox() self.pos_z = QtWidgets.QDoubleSpinBox() self.pos_x.setValue(0.000) self.pos_y.setValue(0.000) self.pos_z.setValue(0.000) self.pos_x.setDecimals(3) self.pos_y.setDecimals(3) self.pos_z.setDecimals(3) self.pos_x.setRange(minnum, maxnum) self.pos_y.setRange(minnum, maxnum) self.pos_z.setRange(minnum, maxnum) placement_layout = QtWidgets.QHBoxLayout() placement_layout_1 = QtWidgets.QHBoxLayout() placement_layout_2 = QtWidgets.QVBoxLayout() placement_layout_3 = QtWidgets.QVBoxLayout() placement_layout.addLayout(placement_layout_1) placement_layout.addLayout(placement_layout_2) placement_layout.addLayout(placement_layout_3) placement_layout_1.addWidget(self.label_position) placement_layout_2.addWidget(self.label_pos_x) placement_layout_2.addWidget(self.label_pos_y) placement_layout_2.addWidget(self.label_pos_z) placement_layout_3.addWidget(self.pos_x) placement_layout_3.addWidget(self.pos_y) placement_layout_3.addWidget(self.pos_z) main_layout.addLayout(move_layout) main_layout.addLayout(length_layout) main_layout.addLayout(width_layout) main_layout.addLayout(base_width_layout) main_layout.addLayout(tensioner_layout) main_layout.addLayout(wall_layout) main_layout.addLayout(nut_layout) main_layout.addLayout(nema_holder_layout) main_layout.addLayout(rail_layout) main_layout.addLayout(thickness_layout) main_layout.addLayout(placement_layout) self.track = self.v.addEventCallback("SoEvent", self.position)
def setupUi(self, Form): Form.setObjectName("Form") Form.resize(797, 600) Form.setMinimumSize(QtCore.QSize(797, 600)) Form.setMaximumSize(QtCore.QSize(797, 600)) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/res/icon.ico"), QtGui.QIcon.Normal, QtGui.QIcon.Off) Form.setWindowIcon(icon) Form.setStyleSheet("") self.stackedWidget = QtWidgets.QStackedWidget(Form) self.stackedWidget.setEnabled(True) self.stackedWidget.setGeometry(QtCore.QRect(0, 0, 800, 600)) self.stackedWidget.setStyleSheet("* {\n" " border: none;\n" "}\n" "\n" "QStackedWidget > QWidget { \n" " \n" " background-image: url(:/res/background.jpg);\n" "}\n" "\n" "QPushButton {\n" " background: rgba(255, 255, 255, 128);\n" " font-size: 30px;\n" " border-radius: 30px;\n" " height: 150px;\n" "}\n" "\n" "* {\n" " font-family: \'Calibri\';\n" " font-weight: bold;\n" " color: green;\n" "}\n" "\n" "QPushButton:hover {\n" " background: rgba(255, 255, 255, 255);\n" "}\n" "\n" "QPushButton:disabled {\n" " color: #52514e;\n" "}") self.stackedWidget.setLineWidth(1) self.stackedWidget.setObjectName("stackedWidget") self.page = QtWidgets.QWidget() self.page.setObjectName("page") self.gridLayoutWidget = QtWidgets.QWidget(self.page) self.gridLayoutWidget.setGeometry(QtCore.QRect(-1, -1, 801, 601)) self.gridLayoutWidget.setObjectName("gridLayoutWidget") self.gridLayout_2 = QtWidgets.QGridLayout(self.gridLayoutWidget) self.gridLayout_2.setSpacing(0) self.gridLayout_2.setContentsMargins(275, -1, 275, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.exitButton = QtWidgets.QPushButton(self.gridLayoutWidget) self.exitButton.setObjectName("exitButton") self.gridLayout_2.addWidget(self.exitButton, 3, 0, 1, 1) self.documentsButton = QtWidgets.QPushButton(self.gridLayoutWidget) self.documentsButton.setObjectName("documentsButton") self.gridLayout_2.addWidget(self.documentsButton, 1, 0, 1, 1) self.authorsButton = QtWidgets.QPushButton(self.gridLayoutWidget) self.authorsButton.setObjectName("authorsButton") self.gridLayout_2.addWidget(self.authorsButton, 2, 0, 1, 1) self.stackedWidget.addWidget(self.page) self.page_2 = QtWidgets.QWidget() self.page_2.setStyleSheet("* {\n" " font-family: \'Calibri\';\n" " font-weight: bold;\n" " color: green;\n" "}") self.page_2.setObjectName("page_2") self.gridLayoutWidget_2 = QtWidgets.QWidget(self.page_2) self.gridLayoutWidget_2.setGeometry(QtCore.QRect(-1, -1, 801, 601)) self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2") self.gridLayout_3 = QtWidgets.QGridLayout(self.gridLayoutWidget_2) self.gridLayout_3.setContentsMargins(40, 40, 40, 40) self.gridLayout_3.setObjectName("gridLayout_3") self.authors = QtWidgets.QWidget(self.gridLayoutWidget_2) self.authors.setStyleSheet("#authors {\n" " background-color: rgba(255, 255, 255, 128);\n" " border-radius: 30px;\n" "}") self.authors.setObjectName("authors") self.verticalLayoutWidget = QtWidgets.QWidget(self.authors) self.verticalLayoutWidget.setGeometry(QtCore.QRect(-1, -1, 1103, 441)) self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget) self.verticalLayout.setContentsMargins(30, -1, -1, -1) self.verticalLayout.setObjectName("verticalLayout") self.label = QtWidgets.QLabel(self.verticalLayoutWidget) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(30) font.setWeight(75) font.setBold(True) self.label.setFont(font) self.label.setStyleSheet("") self.label.setObjectName("label") self.verticalLayout.addWidget(self.label) self.label_4 = QtWidgets.QLabel(self.verticalLayoutWidget) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(30) font.setWeight(75) font.setBold(True) self.label_4.setFont(font) self.label_4.setObjectName("label_4") self.verticalLayout.addWidget(self.label_4) self.label_5 = QtWidgets.QLabel(self.verticalLayoutWidget) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(30) font.setWeight(75) font.setBold(True) self.label_5.setFont(font) self.label_5.setText("") self.label_5.setObjectName("label_5") self.verticalLayout.addWidget(self.label_5) self.label_6 = QtWidgets.QLabel(self.verticalLayoutWidget) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(30) font.setWeight(75) font.setBold(True) self.label_6.setFont(font) self.label_6.setObjectName("label_6") self.verticalLayout.addWidget(self.label_6) self.label_2 = QtWidgets.QLabel(self.verticalLayoutWidget) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(30) font.setWeight(75) font.setBold(True) self.label_2.setFont(font) self.label_2.setObjectName("label_2") self.verticalLayout.addWidget(self.label_2) self.gridLayout_3.addWidget(self.authors, 0, 0, 1, 1) self.authorsBackButton = QtWidgets.QPushButton(self.gridLayoutWidget_2) self.authorsBackButton.setStyleSheet("height: 70px;\n" "margin-left:150px;\n" "margin-right:150px;") self.authorsBackButton.setObjectName("authorsBackButton") self.gridLayout_3.addWidget(self.authorsBackButton, 1, 0, 1, 1) self.stackedWidget.addWidget(self.page_2) self.page_3 = QtWidgets.QWidget() self.page_3.setStyleSheet("QPushButton {\n" " height: 110px;\n" "}") self.page_3.setObjectName("page_3") self.gridLayoutWidget_3 = QtWidgets.QWidget(self.page_3) self.gridLayoutWidget_3.setGeometry(QtCore.QRect(-1, -1, 801, 623)) self.gridLayoutWidget_3.setObjectName("gridLayoutWidget_3") self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget_3) self.gridLayout.setContentsMargins(275, -1, 275, 20) self.gridLayout.setObjectName("gridLayout") self.booksButton = QtWidgets.QPushButton(self.gridLayoutWidget_3) self.booksButton.setObjectName("booksButton") self.gridLayout.addWidget(self.booksButton, 1, 0, 1, 1) self.videosButton = QtWidgets.QPushButton(self.gridLayoutWidget_3) self.videosButton.setObjectName("videosButton") self.gridLayout.addWidget(self.videosButton, 2, 0, 1, 1) self.presentationsButton = QtWidgets.QPushButton(self.gridLayoutWidget_3) self.presentationsButton.setObjectName("presentationsButton") self.gridLayout.addWidget(self.presentationsButton, 0, 0, 1, 1) self.menuBackButton = QtWidgets.QPushButton(self.gridLayoutWidget_3) self.menuBackButton.setObjectName("menuBackButton") self.gridLayout.addWidget(self.menuBackButton, 3, 0, 1, 1) self.stackedWidget.addWidget(self.page_3) self.page_4 = QtWidgets.QWidget() self.page_4.setObjectName("page_4") self.gridLayoutWidget_4 = QtWidgets.QWidget(self.page_4) self.gridLayoutWidget_4.setGeometry(QtCore.QRect(0, 0, 801, 601)) self.gridLayoutWidget_4.setObjectName("gridLayoutWidget_4") self.gridLayout_4 = QtWidgets.QGridLayout(self.gridLayoutWidget_4) self.gridLayout_4.setSpacing(0) self.gridLayout_4.setContentsMargins(30, 30, 30, 30) self.gridLayout_4.setObjectName("gridLayout_4") self.listBackButton = QtWidgets.QPushButton(self.gridLayoutWidget_4) self.listBackButton.setStyleSheet("height: 110px;\n" "margin-top: 20px;\n" "margin-left: 20px;") self.listBackButton.setObjectName("listBackButton") self.gridLayout_4.addWidget(self.listBackButton, 1, 1, 1, 1) self.listOpenButton = QtWidgets.QPushButton(self.gridLayoutWidget_4) self.listOpenButton.setEnabled(False) self.listOpenButton.setStyleSheet("height: 110px;\n" "margin-top: 20px;\n" "margin-right: 20px;") self.listOpenButton.setObjectName("listOpenButton") self.gridLayout_4.addWidget(self.listOpenButton, 1, 0, 1, 1) self.listWidget = QtWidgets.QListWidget(self.gridLayoutWidget_4) self.listWidget.setStyleSheet("\n" "QListWidget {\n" " background-color: rgba(255, 255, 255, 128);\n" " border: none;\n" " border-radius: 10px;\n" " padding: 10px;\n" " font-size: 40px;\n" "}\n" "\n" "QListWidget::item {\n" " height: 70px;\n" "}\n" "\n" "QListWidget::item:hover {\n" " background-color: white;\n" " color: green;\n" "}\n" "\n" "QListWidget::item:selected {\n" " background-color: #71f594;\n" " border: none;\n" " color:green;\n" "}") self.listWidget.setFrameShape(QtWidgets.QFrame.NoFrame) self.listWidget.setLineWidth(0) self.listWidget.setSelectionMode(QtWidgets.QAbstractItemView.SingleSelection) self.listWidget.setUniformItemSizes(False) self.listWidget.setBatchSize(100) self.listWidget.setSelectionRectVisible(False) self.listWidget.setObjectName("listWidget") self.gridLayout_4.addWidget(self.listWidget, 0, 0, 1, 2) self.stackedWidget.addWidget(self.page_4) self.retranslateUi(Form) self.stackedWidget.setCurrentIndex(1) QtCore.QMetaObject.connectSlotsByName(Form)
def setupUi(self, color_picker_ui): color_picker_ui.setObjectName("color_picker_ui") color_picker_ui.resize(440, 402) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( color_picker_ui.sizePolicy().hasHeightForWidth()) color_picker_ui.setSizePolicy(sizePolicy) self.gridLayout_2 = QtWidgets.QGridLayout(color_picker_ui) self.gridLayout_2.setObjectName("gridLayout_2") self.tabs = QtWidgets.QTabWidget(color_picker_ui) self.tabs.setEnabled(True) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.tabs.sizePolicy().hasHeightForWidth()) self.tabs.setSizePolicy(sizePolicy) self.tabs.setStyleSheet( "QTabBar::tab {\n" "background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #E1E1E1, stop: 0.4 #DDDDDD, stop: 0.5 #D8D8D8, stop: 1.0 #D3D3D3);\n" "border: 2px solid #C4C4C3;\n" "border-bottom-color: #C2C7CB; /* same as the pane color */\n" "border-top-left-radius: 4px;\n" "border-top-right-radius: 4px;\n" "min-width: 35ex;\n" "padding: 2px;\n" "}\n" "QTabBar::tab:selected, QTabBar::tab:hover {\n" "background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #fafafa, stop: 0.4 #f4f4f4, stop: 0.5 #e7e7e7, stop: 1.0 #fafafa);\n" "}\n" "QTabBar::tab:selected {\n" "border-color: #9B9B9B;\n" "border-bottom-color: #C2C7CB; /* same as pane color */\n" "}\n" "QTabBar::tab:!selected {\n" "margin-top: 4px; /* make non-selected tabs look smaller */color: gray;\n" "}\n" "\n" "QTabBar::tab:selected {\n" "/* expand/overlap to the left and right by 4px */font: bold; color: green;\n" "margin-left: -4px;\n" "margin-right: -4px;\n" "}\n" "QTabBar::tab:first:selected {\n" "margin-left: 0; /* the first selected tab has nothing to overlap with on the left */\n" "}\n" "QTabBar::tab:last:selected {\n" "margin-right: 0; /* the last selected tab has nothing to overlap with on the right */\n" "}\n" "QTabBar::tab:only-one {\n" "margin: 0; /* if there is only one tab, we don\'t want overlapping margins */\n" "}\n" "\n" " QTabWidget::pane\n" " {\n" " border-top: 1px solid gray;\n" " border-left: 1px solid gray;\n" " border-right: 1px solid gray;\n" " border-bottom: 1px solid gray;\n" " }\n" "\n" "\n" "") self.tabs.setTabShape(QtWidgets.QTabWidget.Rounded) self.tabs.setIconSize(QtCore.QSize(14, 14)) self.tabs.setElideMode(QtCore.Qt.ElideMiddle) self.tabs.setObjectName("tabs") self.material_design_tab = QtWidgets.QWidget() sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.material_design_tab.sizePolicy().hasHeightForWidth()) self.material_design_tab.setSizePolicy(sizePolicy) self.material_design_tab.setCursor(QtCore.Qt.ArrowCursor) self.material_design_tab.setLayoutDirection(QtCore.Qt.LeftToRight) self.material_design_tab.setAutoFillBackground(False) self.material_design_tab.setObjectName("material_design_tab") self.material_design_gridLayout = QtWidgets.QGridLayout( self.material_design_tab) self.material_design_gridLayout.setSpacing(0) self.material_design_gridLayout.setContentsMargins(0, 0, 0, 0) self.material_design_gridLayout.setObjectName( "material_design_gridLayout") self.tabs.addTab(self.material_design_tab, "") self.custom_tab = QtWidgets.QWidget() sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.custom_tab.sizePolicy().hasHeightForWidth()) self.custom_tab.setSizePolicy(sizePolicy) self.custom_tab.setObjectName("custom_tab") self.custom_gridLayout = QtWidgets.QGridLayout(self.custom_tab) self.custom_gridLayout.setSpacing(0) self.custom_gridLayout.setContentsMargins(0, 0, 0, 0) self.custom_gridLayout.setObjectName("custom_gridLayout") self.tabs.addTab(self.custom_tab, "") self.maya_index_tab = QtWidgets.QWidget() sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.maya_index_tab.sizePolicy().hasHeightForWidth()) self.maya_index_tab.setSizePolicy(sizePolicy) self.maya_index_tab.setObjectName("maya_index_tab") self.maya_index_gridLayout = QtWidgets.QGridLayout(self.maya_index_tab) self.maya_index_gridLayout.setSpacing(0) self.maya_index_gridLayout.setContentsMargins(0, 0, 0, 0) self.maya_index_gridLayout.setObjectName("maya_index_gridLayout") self.tabs.addTab(self.maya_index_tab, "") self.gridLayout_2.addWidget(self.tabs, 0, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.line_2 = QtWidgets.QFrame(color_picker_ui) self.line_2.setFrameShape(QtWidgets.QFrame.VLine) self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_2.setObjectName("line_2") self.horizontalLayout.addWidget(self.line_2) spacerItem = QtWidgets.QSpacerItem(13, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.color_check_layout = QtWidgets.QVBoxLayout() self.color_check_layout.setObjectName("color_check_layout") self.color_label = QtWidgets.QLabel(color_picker_ui) self.color_label.setObjectName("color_label") self.color_check_layout.addWidget(self.color_label) self.viewport_box = QtWidgets.QCheckBox(color_picker_ui) self.viewport_box.setChecked(True) self.viewport_box.setObjectName("viewport_box") self.color_check_layout.addWidget(self.viewport_box) self.outliner_box = QtWidgets.QCheckBox(color_picker_ui) self.outliner_box.setObjectName("outliner_box") self.color_check_layout.addWidget(self.outliner_box) self.horizontalLayout.addLayout(self.color_check_layout) spacerItem1 = QtWidgets.QSpacerItem(13, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.vertical_line = QtWidgets.QFrame(color_picker_ui) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.vertical_line.sizePolicy().hasHeightForWidth()) self.vertical_line.setSizePolicy(sizePolicy) self.vertical_line.setFrameShadow(QtWidgets.QFrame.Sunken) self.vertical_line.setFrameShape(QtWidgets.QFrame.VLine) self.vertical_line.setFrameShadow(QtWidgets.QFrame.Sunken) self.vertical_line.setObjectName("vertical_line") self.horizontalLayout.addWidget(self.vertical_line) spacerItem2 = QtWidgets.QSpacerItem(13, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.override_check_layout = QtWidgets.QVBoxLayout() self.override_check_layout.setObjectName("override_check_layout") self.override_label = QtWidgets.QLabel(color_picker_ui) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.override_label.sizePolicy().hasHeightForWidth()) self.override_label.setSizePolicy(sizePolicy) self.override_label.setObjectName("override_label") self.override_check_layout.addWidget(self.override_label) self.shape_button = QtWidgets.QRadioButton(color_picker_ui) self.shape_button.setChecked(True) self.shape_button.setAutoRepeat(True) self.shape_button.setAutoExclusive(True) self.shape_button.setObjectName("shape_button") self.override_check_layout.addWidget(self.shape_button) self.transform_button = QtWidgets.QRadioButton(color_picker_ui) self.transform_button.setAutoRepeat(True) self.transform_button.setAutoExclusive(True) self.transform_button.setObjectName("transform_button") self.override_check_layout.addWidget(self.transform_button) self.horizontalLayout.addLayout(self.override_check_layout) self.line_3 = QtWidgets.QFrame(color_picker_ui) self.line_3.setFrameShape(QtWidgets.QFrame.VLine) self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_3.setObjectName("line_3") self.horizontalLayout.addWidget(self.line_3) self.gridLayout = QtWidgets.QGridLayout() self.gridLayout.setObjectName("gridLayout") spacerItem3 = QtWidgets.QSpacerItem(20, 5, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout.addItem(spacerItem3, 2, 1, 1, 1) spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.gridLayout.addItem(spacerItem4, 1, 0, 1, 1) spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.gridLayout.addItem(spacerItem5, 1, 2, 1, 1) self.custom_button = QtWidgets.QPushButton(color_picker_ui) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.custom_button.sizePolicy().hasHeightForWidth()) self.custom_button.setSizePolicy(sizePolicy) self.custom_button.setStyleSheet( "QPushButton {\n" "color: #333;\n" "border: 2px solid #555;\n" "border-radius: 3px;\n" "border-style: solid black;\n" "background: qradialgradient(\n" "cx: 0.3, cy: -0.4, fx: 0.3, fy: -0.4,\n" "radius: 3, stop: 0 #ccff90, stop: 1 #888\n" ");\n" "padding: 8px;\n" "}\n" "QPushButton:hover {\n" "background: qradialgradient(\n" "cx: 0.3, cy: -0.8, fx: 0.3, fy: -0.8,\n" "radius: 1, stop: 0 #ccff90, stop: 1 #bbb\n" ");\n" "}\n" "QPushButton:pressed {\n" "border-style: inset;\n" "background: qradialgradient(\n" "cx: 0.4, cy: -0.1, fx: 0.4, fy: -0.1,\n" "radius: 1.35, stop: 0 #ccff90, stop: 1 #ddd\n" ");\n" "}") self.custom_button.setCheckable(False) self.custom_button.setObjectName("custom_button") self.gridLayout.addWidget(self.custom_button, 1, 1, 1, 1) spacerItem6 = QtWidgets.QSpacerItem(20, 5, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout.addItem(spacerItem6, 0, 1, 1, 1) self.horizontalLayout.addLayout(self.gridLayout) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 1) self.line = QtWidgets.QFrame(color_picker_ui) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.line.sizePolicy().hasHeightForWidth()) self.line.setSizePolicy(sizePolicy) self.line.setFrameShape(QtWidgets.QFrame.HLine) self.line.setFrameShadow(QtWidgets.QFrame.Sunken) self.line.setObjectName("line") self.gridLayout_2.addWidget(self.line, 2, 0, 1, 1) self.buttons_layout = QtWidgets.QHBoxLayout() self.buttons_layout.setObjectName("buttons_layout") spacerItem7 = QtWidgets.QSpacerItem(48, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.buttons_layout.addItem(spacerItem7) self.color_button = QtWidgets.QPushButton(color_picker_ui) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.color_button.sizePolicy().hasHeightForWidth()) self.color_button.setSizePolicy(sizePolicy) self.color_button.setStyleSheet("") self.color_button.setObjectName("color_button") self.buttons_layout.addWidget(self.color_button) self.default_button = QtWidgets.QPushButton(color_picker_ui) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.default_button.sizePolicy().hasHeightForWidth()) self.default_button.setSizePolicy(sizePolicy) self.default_button.setObjectName("default_button") self.buttons_layout.addWidget(self.default_button) self.cancel_button = QtWidgets.QPushButton(color_picker_ui) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.cancel_button.sizePolicy().hasHeightForWidth()) self.cancel_button.setSizePolicy(sizePolicy) self.cancel_button.setMaximumSize(QtCore.QSize(16777215, 16777215)) self.cancel_button.setObjectName("cancel_button") self.buttons_layout.addWidget(self.cancel_button) self.gridLayout_2.addLayout(self.buttons_layout, 3, 0, 1, 1) self.retranslateUi(color_picker_ui) self.tabs.setCurrentIndex(0) QtCore.QObject.connect(self.tabs, QtCore.SIGNAL("currentChanged(int)"), self.custom_button.hide) QtCore.QObject.connect(self.tabs, QtCore.SIGNAL("currentChanged(int)"), self.custom_button.show) QtCore.QMetaObject.connectSlotsByName(color_picker_ui)
def __init__(self): super(ImageViewer, self).__init__() self.setWindowTitle("Image Viewer") vbox = QtWidgets.QVBoxLayout(self) vbox.setContentsMargins(0, 0, 0, 0) hbox = QtWidgets.QHBoxLayout() hbox.setContentsMargins(0, 0, 0, 0) vbox.addLayout(hbox) self.channelCombobox = QtWidgets.QComboBox() self.channelCombobox.setMaxVisibleItems(100) self.channelCombobox.addItems(['rgb']) self.channelCombobox.currentTextChanged.connect(self.on_channel_changed) self.channelCombobox.setStyleSheet("QComboBox{{max-width:{0}px;min-width:{0}px}}".format(45)) self.gammaLabel = button() self.gammaLabel.setText("Gamma") self.gammaLabel.value_changed.connect(self.on_gamma_clicked) self.gammaLabel.setStyleSheet("QPushButton{background-color:transparent;margin:0px;padding:0px;" "font-size:15px;max-width:100px;max-height:100px}") self.gamma = PropFloat() self.gamma.set_value(1.0) self.gamma.value_changed.connect(self.on_postfx_changed) self.multiplyLabel = button() self.multiplyLabel.setText("Multiply") self.multiplyLabel.value_changed.connect(self.on_multiply_clicked) self.multiplyLabel.setStyleSheet("QPushButton{background-color:transparent;margin:0px;padding:0px;" "font-size:15px;max-width:100px;max-height:100px}") self.multiply = PropFloat() self.multiply.set_value(1.0) self.multiply.value_changed.connect(self.on_postfx_changed) # hbox.addWidget(channelLabel) hbox.addWidget(self.channelCombobox) hbox.addWidget(self.multiplyLabel) hbox.addWidget(self.multiply) hbox.addWidget(self.gammaLabel) hbox.addWidget(self.gamma) self.viewer = ImageGraphicsView() self.viewer.position_changed.connect(self.on_position_changed) self.viewer.color_changed.connect(self.on_color_changed) vbox.addWidget(self.viewer) hbox = QtWidgets.QHBoxLayout() hbox.setContentsMargins(0, 0, 0, 0) vbox.addLayout(hbox) self.positionLabel = QtWidgets.QLabel() self.positionLabel.setText("X:0,Y:0") self.positionLabel.setAlignment(QtCore.Qt.AlignLeft) self.positionLabel.setStyleSheet("QLabel{background-color:transparent;margin:0px;padding:0px;" "font-size:14px;border-width:0px;max-width:100px}") self.sizeLabel = QtWidgets.QLabel() self.sizeLabel.setText("Width:0,Height:0") self.sizeLabel.setAlignment(QtCore.Qt.AlignLeft) self.sizeLabel.setStyleSheet("QLabel{background-color:transparent;margin:0px;padding:0px;" "font-size:14px;border-width:0px;max-width:200px}") self.RLabel = QtWidgets.QLabel() self.RLabel.setText("R:0.000") self.RLabel.setAlignment(QtCore.Qt.AlignRight) self.RLabel.setStyleSheet("QLabel{background-color:transparent;margin:0px;padding:0px;" "font-size:14px;color:red;border-width:0px;max-width:70px}") self.GLabel = QtWidgets.QLabel() self.GLabel.setText("G:0.000") self.GLabel.setAlignment(QtCore.Qt.AlignRight) self.GLabel.setStyleSheet("QLabel{background-color:transparent;margin:0px;padding:0px;" "font-size:14px;color:green;border-width:0px;max-width:70px}") self.BLabel = QtWidgets.QLabel() self.BLabel.setText("B:0.000") self.BLabel.setAlignment(QtCore.Qt.AlignRight) self.BLabel.setStyleSheet("QLabel{background-color:transparent;margin:0px;padding:0px;" "font-size:14px;color:blue;border-width:0px;max-width:70px}") self.ALabel = QtWidgets.QLabel() self.ALabel.setText("A:0.000") self.ALabel.setAlignment(QtCore.Qt.AlignRight) self.ALabel.setStyleSheet("QLabel{background-color:transparent;margin:0px;padding:0px;" "font-size:14px;color:white;border-width:0px;max-width:70px}") hbox.addWidget(self.positionLabel) hbox.addWidget(self.sizeLabel) hbox.addStretch() hbox.addWidget(self.RLabel, QtCore.Qt.AlignRight) hbox.addWidget(self.GLabel) hbox.addWidget(self.BLabel) hbox.addWidget(self.ALabel) self.node = None self.block_signal = False self.block_value = False
def __init__( self, video: Optional[Video] = None, skeleton: Optional["Skeleton"] = None, head: Optional[Text] = None, cfg_getter: Optional["TrainingConfigsGetter"] = None, require_trained: bool = False, *args, **kwargs, ): super(TrainingEditorWidget, self).__init__() self._video = video self._cfg_getter = cfg_getter self._cfg_list_widget = None self._receptive_field_widget = None self._use_trained_model = None self._require_trained = require_trained self.head = head yaml_name = "training_editor_form" self.form_widgets = dict() for key in ("model", "data", "augmentation", "optimization", "outputs"): self.form_widgets[key] = YamlFormWidget.from_name( yaml_name, which_form=key, title=key.title()) self.form_widgets[key].valueChanged.connect(self.emitValueChanged) self.form_widgets["model"].valueChanged.connect( self.update_receptive_field) self.form_widgets["data"].valueChanged.connect( self.update_receptive_field) if hasattr(skeleton, "node_names"): for field_name in NODE_LIST_FIELDS: form_name = field_name.split(".")[0] self.form_widgets[form_name].set_field_options( field_name, skeleton.node_names, ) if self._video: self._receptive_field_widget = receptivefield.ReceptiveFieldWidget( self.head) self._receptive_field_widget.setImage(self._video.test_frame) self._set_head() # Layout for header and columns layout = QtWidgets.QVBoxLayout() # Two column layout for config parameters col1_layout = QtWidgets.QVBoxLayout() col2_layout = QtWidgets.QVBoxLayout() col3_layout = QtWidgets.QVBoxLayout() col1_layout.addWidget(self.form_widgets["data"]) col1_layout.addWidget(self.form_widgets["optimization"]) col2_layout.addWidget(self.form_widgets["augmentation"]) col3_layout.addWidget(self.form_widgets["model"]) if self._receptive_field_widget: col0_layout = QtWidgets.QVBoxLayout() col0_layout.addWidget(self._receptive_field_widget) else: col0_layout = None col_layout = QtWidgets.QHBoxLayout() if col0_layout: col_layout.addWidget(self._layout_widget(col0_layout)) col_layout.addWidget(self._layout_widget(col1_layout)) col_layout.addWidget(self._layout_widget(col2_layout)) col_layout.addWidget(self._layout_widget(col3_layout)) # If we have an object which gets a list of config files, # then we'll show a menu to allow selection from the list. if self._cfg_getter: self._cfg_list_widget = configs.TrainingConfigFilesWidget( cfg_getter=self._cfg_getter, head_name=head, require_trained=require_trained, ) self._cfg_list_widget.onConfigSelection.connect( self.acceptSelectedConfigInfo) # self._cfg_list_widget.setDataDict.connect(self.set_fields_from_key_val_dict) layout.addWidget(self._cfg_list_widget) # Add option for using trained model from selected config if self._require_trained: self._update_use_trained() else: self._use_trained_model = QtWidgets.QCheckBox( "Use Trained Model") self._use_trained_model.setEnabled(False) self._use_trained_model.setVisible(False) self._use_trained_model.stateChanged.connect( self._update_use_trained) layout.addWidget(self._use_trained_model) layout.addWidget(self._layout_widget(col_layout)) self.setLayout(layout)
def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(800, 420) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.formLayoutWidget = QtWidgets.QWidget(self.centralwidget) self.formLayoutWidget.setGeometry(QtCore.QRect(400, 30, 331, 181)) self.formLayoutWidget.setObjectName("formLayoutWidget") self.formLayout_2 = QtWidgets.QFormLayout(self.formLayoutWidget) self.formLayout_2.setContentsMargins(0, 0, 0, 0) self.formLayout_2.setObjectName("formLayout_2") self.label_6 = QtWidgets.QLabel(self.formLayoutWidget) self.label_6.setObjectName("label_6") self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label_6) self.lineEdit_5 = QtWidgets.QLineEdit(self.formLayoutWidget) self.lineEdit_5.setObjectName("lineEdit_5") self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.lineEdit_5) self.label_7 = QtWidgets.QLabel(self.formLayoutWidget) self.label_7.setObjectName("label_7") self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_7) self.lineEdit_6 = QtWidgets.QLineEdit(self.formLayoutWidget) self.lineEdit_6.setObjectName("lineEdit_6") self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.lineEdit_6) self.widget = QtWidgets.QWidget(self.centralwidget) self.widget.setGeometry(QtCore.QRect(100, 30, 261, 191)) self.widget.setObjectName("widget") self.formLayout = QtWidgets.QFormLayout(self.widget) self.formLayout.setContentsMargins(0, 0, 0, 0) self.formLayout.setObjectName("formLayout") self.label = QtWidgets.QLabel(self.widget) self.label.setObjectName("label") self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label) self.lineEdit = QtWidgets.QLineEdit(self.widget) self.lineEdit.setObjectName("lineEdit") self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.lineEdit) self.lineEdit_2 = QtWidgets.QLineEdit(self.widget) self.lineEdit_2.setObjectName("lineEdit_2") self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.lineEdit_2) self.label_3 = QtWidgets.QLabel(self.widget) self.label_3.setObjectName("label_3") self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_3) self.lineEdit_3 = QtWidgets.QLineEdit(self.widget) self.lineEdit_3.setObjectName("lineEdit_3") self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.lineEdit_3) self.label_4 = QtWidgets.QLabel(self.widget) self.label_4.setObjectName("label_4") self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.label_4) self.comboBox = QtWidgets.QComboBox(self.widget) self.comboBox.setObjectName("comboBox") self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.comboBox) self.label_5 = QtWidgets.QLabel(self.widget) self.label_5.setObjectName("label_5") self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.label_5) self.lineEdit_4 = QtWidgets.QLineEdit(self.widget) self.lineEdit_4.setObjectName("lineEdit_4") self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.lineEdit_4) self.label_2 = QtWidgets.QLabel(self.widget) self.label_2.setObjectName("label_2") self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_2) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtWidgets.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 22)) self.menubar.setObjectName("menubar") MainWindow.setMenuBar(self.menubar) self.statusbar = QtWidgets.QStatusBar(MainWindow) self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow)
def create_layouts(self): self.layout = QtWidgets.QHBoxLayout(self) self.layout.setContentsMargins(0, 0, 0, 0) self.layout.setSpacing(0)
def selectTargetFile(self): # path = QtWidgets.QFileDialog.getExistingDirectory(self, '选择文件', './') path = QtWidgets.QFileDialog.getOpenFileName(self, '选择文件', './') print(path[0]) self.targetFile = path[0] self.text.setText("The following log file is selected:\n{0}".format(self.targetFile)) def readDids(self): # eculog = EcuLog() # eculog.getResponseList(self.targetFile) # eculog.createStorage() # ecuBom = {} # for ecuName in EcuAddressMap: # ecuBom[ecuName] = eculog.getF1AEbyName(ecuName) # for swDID in SwDIDMap: # ecuBom[ecuName].update(eculog.getNumberByName(ecuName, swDID)) with open('swBOM.json', 'w') as f: json.dump(ecuBom, f, indent=4) self.text.setText("Read sucessfully and swBOM.json is generated!") if __name__ == "__main__": app = QtWidgets.QApplication([]) widget = MyWidget() widget.resize(400,300) widget.show() sys.exit(app.exec_())
def onClicked(self, controller): self.menu = QtWidgets.QMenu() self.menu.addAction("Hello Python", lambda: print("clicked")) self.menu.popup(controller.callPopupPosition(self.menu.sizeHint())) self.menu.aboutToHide.connect(controller.callPopupClosed)
def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(1728, 874) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.startBtn = QtWidgets.QPushButton(self.centralwidget) self.startBtn.setGeometry(QtCore.QRect(1470, 30, 111, 28)) self.startBtn.setObjectName("startBtn") self.updateBtn = QtWidgets.QPushButton(self.centralwidget) self.updateBtn.setGeometry(QtCore.QRect(1590, 30, 111, 28)) self.updateBtn.setObjectName("updateBtn") self.frameTxt = QtWidgets.QLabel(self.centralwidget) self.frameTxt.setGeometry(QtCore.QRect(1300, 100, 111, 16)) self.frameTxt.setObjectName("frameTxt") self.targetTxt_2 = QtWidgets.QLabel(self.centralwidget) self.targetTxt_2.setGeometry(QtCore.QRect(720, 100, 121, 16)) self.targetTxt_2.setObjectName("targetTxt_2") self.label_5 = QtWidgets.QLabel(self.centralwidget) self.label_5.setGeometry(QtCore.QRect(140, 20, 151, 20)) self.label_5.setObjectName("label_5") self.loadBtn = QtWidgets.QPushButton(self.centralwidget) self.loadBtn.setGeometry(QtCore.QRect(1290, 30, 171, 28)) self.loadBtn.setObjectName("loadBtn") self.textOut = QtWidgets.QLabel(self.centralwidget) self.textOut.setGeometry(QtCore.QRect(60, 510, 300, 300)) self.textOut.setText("") self.textOut.setObjectName("textOut") self.graficOut = QtWidgets.QLabel(self.centralwidget) self.graficOut.setGeometry(QtCore.QRect(10, 70, 430, 430)) self.graficOut.setText("") self.graficOut.setObjectName("graficOut") self.label_8 = QtWidgets.QLabel(self.centralwidget) self.label_8.setGeometry(QtCore.QRect(160, 490, 151, 20)) self.label_8.setObjectName("label_8") self.groupBox = QtWidgets.QGroupBox(self.centralwidget) self.groupBox.setGeometry(QtCore.QRect(60, 510, 300, 300)) self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.groupBox_2 = QtWidgets.QGroupBox(self.centralwidget) self.groupBox_2.setGeometry(QtCore.QRect(10, 50, 430, 430)) self.groupBox_2.setTitle("") self.groupBox_2.setObjectName("groupBox_2") self.groupBox_3 = QtWidgets.QGroupBox(self.centralwidget) self.groupBox_3.setGeometry(QtCore.QRect(470, 160, 600, 600)) self.groupBox_3.setTitle("") self.groupBox_3.setObjectName("groupBox_3") self.frame = QtWidgets.QLabel(self.groupBox_3) self.frame.setGeometry(QtCore.QRect(0, 0, 600, 600)) self.frame.setText("") self.frame.setObjectName("frame") self.groupBox_4 = QtWidgets.QGroupBox(self.centralwidget) self.groupBox_4.setGeometry(QtCore.QRect(1100, 160, 600, 600)) self.groupBox_4.setTitle("") self.groupBox_4.setObjectName("groupBox_4") self.target = QtWidgets.QLabel(self.groupBox_4) self.target.setGeometry(QtCore.QRect(0, 0, 600, 600)) self.target.setText("") self.target.setObjectName("target") MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtWidgets.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 1728, 26)) self.menubar.setObjectName("menubar") MainWindow.setMenuBar(self.menubar) self.statusbar = QtWidgets.QStatusBar(MainWindow) self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow)
def _create_select_note(self): self.note = QtWidgets.QLabel("") layout = QtWidgets.QHBoxLayout() layout.addWidget(self.note) return layout
def __init__(self, parent=None): super(StatusTableWidgetItem, self).__init__(parent=parent) self.layout = QtWidgets.QHBoxLayout() self.setLayout(self.layout)
def setup_ui(self, main_window) -> None: main_window.setObjectName('MainWindow') main_window.resize(1124, 567) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( main_window.sizePolicy().hasHeightForWidth()) main_window.setSizePolicy(sizePolicy) self.centralwidget = QtWidgets.QWidget(main_window) self.centralwidget.setObjectName('centralwidget') self.gridLayout = QtWidgets.QGridLayout(self.centralwidget) self.gridLayout.setObjectName('gridLayout') self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setObjectName('horizontalLayout_4') spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem) self.label = QtWidgets.QLabel(self.centralwidget) font = QtGui.QFont() font.setFamily('微软雅黑') font.setPointSize(32) self.label.setFont(font) self.label.setObjectName('label') self.horizontalLayout_4.addWidget(self.label) spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem1) self.gridLayout.addLayout(self.horizontalLayout_4, 0, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName('horizontalLayout') self.pB_ON = QtWidgets.QPushButton(self.centralwidget) self.pB_ON.setObjectName('pB_ON') self.horizontalLayout.addWidget(self.pB_ON) self.pB_OFF = QtWidgets.QPushButton(self.centralwidget) self.pB_OFF.setObjectName('pB_OFF') self.horizontalLayout.addWidget(self.pB_OFF) self.pB_UP_ON = QtWidgets.QPushButton(self.centralwidget) self.pB_UP_ON.setObjectName('pB_UP_ON') self.horizontalLayout.addWidget(self.pB_UP_ON) self.pB_UP_KEEP = QtWidgets.QPushButton(self.centralwidget) self.pB_UP_KEEP.setObjectName('pB_UP_KEEP') self.horizontalLayout.addWidget(self.pB_UP_KEEP) self.pB_UP_OFF = QtWidgets.QPushButton(self.centralwidget) self.pB_UP_OFF.setObjectName('pB_UP_OFF') self.horizontalLayout.addWidget(self.pB_UP_OFF) self.pB_SET_POINT = QtWidgets.QPushButton(self.centralwidget) self.pB_SET_POINT.setObjectName('pB_SET_POINT') self.horizontalLayout.addWidget(self.pB_SET_POINT) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.pB_info = QtWidgets.QPushButton(self.centralwidget) self.pB_info.setObjectName('pB_info') self.horizontalLayout.addWidget(self.pB_info) self.pB_signal = QtWidgets.QPushButton(self.centralwidget) self.pB_signal.setObjectName('pB_signal') self.horizontalLayout.addWidget(self.pB_signal) self.ROOT = QtWidgets.QPushButton(self.centralwidget) self.ROOT.setObjectName('ROOT') self.horizontalLayout.addWidget(self.ROOT) self.gridLayout.addLayout(self.horizontalLayout, 1, 0, 1, 1) self.tableWidget = QtWidgets.QTableWidget(self.centralwidget) self.tableWidget.setObjectName('tableWidget') self.tableWidget.setColumnCount(0) self.tableWidget.setRowCount(0) self.gridLayout.addWidget(self.tableWidget, 2, 0, 1, 1) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName('horizontalLayout_2') self.pB_all = QtWidgets.QPushButton(self.centralwidget) self.pB_all.setObjectName('pB_all') self.horizontalLayout_2.addWidget(self.pB_all) self.pB_inverse = QtWidgets.QPushButton(self.centralwidget) self.pB_inverse.setObjectName('pB_inverse') self.horizontalLayout_2.addWidget(self.pB_inverse) self.pB_cancel = QtWidgets.QPushButton(self.centralwidget) self.pB_cancel.setObjectName('pB_cancel') self.horizontalLayout_2.addWidget(self.pB_cancel) spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_2.addItem(spacerItem3) self.MODIFY_SSID_PASSWORD = QtWidgets.QPushButton(self.centralwidget) self.MODIFY_SSID_PASSWORD.setObjectName('MODIFY_SSID_PASSWORD') self.horizontalLayout_2.addWidget(self.MODIFY_SSID_PASSWORD) self.gridLayout.addLayout(self.horizontalLayout_2, 3, 0, 1, 1) main_window.setCentralWidget(self.centralwidget) self.statusbar = QtWidgets.QStatusBar(main_window) self.statusbar.setObjectName('statusbar') main_window.setStatusBar(self.statusbar) self.retranslate_ui(main_window) QtCore.QMetaObject.connectSlotsByName(main_window)
def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(380, 244) self.verticalLayout = QtWidgets.QVBoxLayout(Dialog) self.verticalLayout.setObjectName("verticalLayout") self.horizontalLayout_5 = QtWidgets.QHBoxLayout() self.horizontalLayout_5.setObjectName("horizontalLayout_5") self.parentLabel = QtWidgets.QLabel(Dialog) self.parentLabel.setObjectName("parentLabel") self.horizontalLayout_5.addWidget(self.parentLabel) spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_5.addItem(spacerItem) self.verticalLayout.addLayout(self.horizontalLayout_5) self.collectionTreeWidget = QtWidgets.QTreeWidget(Dialog) self.collectionTreeWidget.setObjectName("collectionTreeWidget") self.verticalLayout.addWidget(self.collectionTreeWidget) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.label = QtWidgets.QLabel(Dialog) self.label.setObjectName("label") self.horizontalLayout.addWidget(self.label) self.nameLineEdit = QtWidgets.QLineEdit(Dialog) self.nameLineEdit.setObjectName("nameLineEdit") self.horizontalLayout.addWidget(self.nameLineEdit) spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.verticalLayout.addLayout(self.horizontalLayout) self.horizontalLayout_3 = QtWidgets.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.label_2 = QtWidgets.QLabel(Dialog) self.label_2.setObjectName("label_2") self.horizontalLayout_3.addWidget(self.label_2) self.typeLineEdit = QtWidgets.QLineEdit(Dialog) self.typeLineEdit.setObjectName("typeLineEdit") self.horizontalLayout_3.addWidget(self.typeLineEdit) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_3.addItem(spacerItem2) self.verticalLayout.addLayout(self.horizontalLayout_3) self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.label_3 = QtWidgets.QLabel(Dialog) self.label_3.setObjectName("label_3") self.horizontalLayout_4.addWidget(self.label_3) self.ownerLineEdit = QtWidgets.QLineEdit(Dialog) self.ownerLineEdit.setMaximumSize(QtCore.QSize(40, 16777215)) self.ownerLineEdit.setObjectName("ownerLineEdit") self.horizontalLayout_4.addWidget(self.ownerLineEdit) spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem3) self.verticalLayout.addLayout(self.horizontalLayout_4) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_2.addItem(spacerItem4) self.acceptButton = QtWidgets.QPushButton(Dialog) self.acceptButton.setObjectName("acceptButton") self.horizontalLayout_2.addWidget(self.acceptButton) self.rejectButton = QtWidgets.QPushButton(Dialog) self.rejectButton.setObjectName("rejectButton") self.horizontalLayout_2.addWidget(self.rejectButton) self.verticalLayout.addLayout(self.horizontalLayout_2) self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog)
self.retranslateUi(mainWindow) QtCore.QMetaObject.connectSlotsByName(mainWindow) def retranslateUi(self, mainWindow): mainWindow.setWindowTitle( QtWidgets.QApplication.translate("mainWindow", "GridCal", None, -1)) self.plainTextEdit.setDocumentTitle( QtWidgets.QApplication.translate("mainWindow", "Logger", None, -1)) self.plainTextEdit.setPlaceholderText( QtWidgets.QApplication.translate("mainWindow", ">", None, -1)) self.menuSave.setTitle( QtWidgets.QApplication.translate("mainWindow", "File", None, -1)) self.actionSave.setText( QtWidgets.QApplication.translate("mainWindow", "Save", None, -1)) self.actionSave.setShortcut( QtWidgets.QApplication.translate("mainWindow", "Ctrl+S, Ctrl+S", None, -1)) from .icons_rc import * if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) mainWindow = QtWidgets.QMainWindow() ui = Ui_mainWindow() ui.setupUi(mainWindow) mainWindow.show() sys.exit(app.exec_())
extension.setLayout(extensionLayout) topLeftLayout = QtWidgets.QHBoxLayout() topLeftLayout.addWidget(label) topLeftLayout.addWidget(lineEdit) leftLayout = QtWidgets.QVBoxLayout() leftLayout.addLayout(topLeftLayout) leftLayout.addWidget(caseCheckBox) leftLayout.addWidget(fromStartCheckBox) leftLayout.addStretch(1) mainLayout = QtWidgets.QGridLayout() mainLayout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize) mainLayout.addLayout(leftLayout, 0, 0) mainLayout.addWidget(buttonBox, 0, 1) mainLayout.addWidget(extension, 1, 0, 1, 2) self.setLayout(mainLayout) self.setWindowTitle("Extension") extension.hide() if __name__ == '__main__': import sys app = QtWidgets.QApplication(sys.argv) dialog = FindDialog() sys.exit(dialog.exec_())
def setupUi(self, mainWindow): mainWindow.setObjectName("mainWindow") mainWindow.resize(516, 327) mainWindow.setBaseSize(QtCore.QSize(0, 0)) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/Program icon/GridCal_icon.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) mainWindow.setWindowIcon(icon) mainWindow.setIconSize(QtCore.QSize(24, 24)) mainWindow.setDocumentMode(False) mainWindow.setTabShape(QtWidgets.QTabWidget.Rounded) mainWindow.setUnifiedTitleAndToolBarOnMac(False) self.centralwidget = QtWidgets.QWidget(mainWindow) self.centralwidget.setObjectName("centralwidget") self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget) self.verticalLayout.setContentsMargins(0, 0, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.plainTextEdit = QtWidgets.QPlainTextEdit(self.centralwidget) palette = QtGui.QPalette() brush = QtGui.QBrush(QtGui.QColor(255, 255, 255)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Text, brush) brush = QtGui.QBrush(QtGui.QColor(0, 170, 127)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush) brush = QtGui.QBrush(QtGui.QColor(255, 255, 255, 128)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.PlaceholderText, brush) brush = QtGui.QBrush(QtGui.QColor(255, 255, 255)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Text, brush) brush = QtGui.QBrush(QtGui.QColor(0, 170, 127)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush) brush = QtGui.QBrush(QtGui.QColor(255, 255, 255, 128)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.PlaceholderText, brush) brush = QtGui.QBrush(QtGui.QColor(120, 120, 120)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Text, brush) brush = QtGui.QBrush(QtGui.QColor(240, 240, 240)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush) brush = QtGui.QBrush(QtGui.QColor(0, 0, 0, 128)) brush.setStyle(QtCore.Qt.SolidPattern) palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.PlaceholderText, brush) self.plainTextEdit.setPalette(palette) font = QtGui.QFont() font.setFamily("Consolas") self.plainTextEdit.setFont(font) self.plainTextEdit.setFrameShape(QtWidgets.QFrame.NoFrame) self.plainTextEdit.setReadOnly(True) self.plainTextEdit.setPlainText("Console") self.plainTextEdit.setObjectName("plainTextEdit") self.verticalLayout.addWidget(self.plainTextEdit) mainWindow.setCentralWidget(self.centralwidget) self.menuBar = QtWidgets.QMenuBar(mainWindow) self.menuBar.setGeometry(QtCore.QRect(0, 0, 516, 21)) self.menuBar.setObjectName("menuBar") self.menuSave = QtWidgets.QMenu(self.menuBar) self.menuSave.setObjectName("menuSave") mainWindow.setMenuBar(self.menuBar) self.actionSave = QtWidgets.QAction(mainWindow) icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap(":/Icons/icons/savec.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.actionSave.setIcon(icon1) self.actionSave.setObjectName("actionSave") self.menuSave.addAction(self.actionSave) self.menuBar.addAction(self.menuSave.menuAction()) self.retranslateUi(mainWindow) QtCore.QMetaObject.connectSlotsByName(mainWindow)
def __init__(self, parent=None): super(FindDialog, self).__init__(parent) label = QtWidgets.QLabel("Find &what:") lineEdit = QtWidgets.QLineEdit() label.setBuddy(lineEdit) caseCheckBox = QtWidgets.QCheckBox("Match &case") fromStartCheckBox = QtWidgets.QCheckBox("Search from &start") fromStartCheckBox.setChecked(True) findButton = QtWidgets.QPushButton("&Find") findButton.setDefault(True) moreButton = QtWidgets.QPushButton("&More") moreButton.setCheckable(True) moreButton.setAutoDefault(False) buttonBox = QtWidgets.QDialogButtonBox(QtCore.Qt.Vertical) buttonBox.addButton(findButton, QtWidgets.QDialogButtonBox.ActionRole) buttonBox.addButton(moreButton, QtWidgets.QDialogButtonBox.ActionRole) extension = QtWidgets.QWidget() wholeWordsCheckBox = QtWidgets.QCheckBox("&Whole words") backwardCheckBox = QtWidgets.QCheckBox("Search &backward") searchSelectionCheckBox = QtWidgets.QCheckBox("Search se&lection") moreButton.toggled.connect(extension.setVisible) extensionLayout = QtWidgets.QVBoxLayout() extensionLayout.setContentsMargins(0, 0, 0, 0) extensionLayout.addWidget(wholeWordsCheckBox) extensionLayout.addWidget(backwardCheckBox) extensionLayout.addWidget(searchSelectionCheckBox) extension.setLayout(extensionLayout) topLeftLayout = QtWidgets.QHBoxLayout() topLeftLayout.addWidget(label) topLeftLayout.addWidget(lineEdit) leftLayout = QtWidgets.QVBoxLayout() leftLayout.addLayout(topLeftLayout) leftLayout.addWidget(caseCheckBox) leftLayout.addWidget(fromStartCheckBox) leftLayout.addStretch(1) mainLayout = QtWidgets.QGridLayout() mainLayout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize) mainLayout.addLayout(leftLayout, 0, 0) mainLayout.addWidget(buttonBox, 0, 1) mainLayout.addWidget(extension, 1, 0, 1, 2) self.setLayout(mainLayout) self.setWindowTitle("Extension") extension.hide()
def create_widgets(self): self.le_file = QtWidgets.QLineEdit() self.btn_file_browser = QtWidgets.QPushButton("Browse")
def _ui_settings_gqv5(self): vbox = QtWidgets.QVBoxLayout() self.setSettingsGQv5.setLayout(vbox) vbox.addStretch() hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) hbox.addStretch() text_set_tvu_qc = QtWidgets.QLabel("Force TVU QC calculation") hbox.addWidget(text_set_tvu_qc) text_set_tvu_qc.setFixedHeight(GuiSettings.single_line_height()) text_set_tvu_qc.setMinimumWidth(80) self.set_force_tvu_qc_gqv5 = QtWidgets.QCheckBox(self) hbox.addWidget(self.set_force_tvu_qc_gqv5) self.set_force_tvu_qc_gqv5.setChecked(True) hbox.addStretch() vbox.addStretch() hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) # stretch hbox.addStretch() # mode self.set_toggle_mode_gqv5 = QtWidgets.QDial() self.set_toggle_mode_gqv5.setNotchesVisible(True) self.set_toggle_mode_gqv5.setWrapping(False) self.set_toggle_mode_gqv5.setFocusPolicy(QtCore.Qt.StrongFocus) self.set_toggle_mode_gqv5.setRange(0, 1) self.set_toggle_mode_gqv5.setSliderPosition(1) self.set_toggle_mode_gqv5.setFixedSize(QtCore.QSize(40, 40)) self.set_toggle_mode_gqv5.setInvertedAppearance(False) hbox.addWidget(self.set_toggle_mode_gqv5) hbox.addStretch() hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) # stretch hbox.addStretch() # mode text_obj = QtWidgets.QLabel("Object detection") text_obj.setAlignment(QtCore.Qt.AlignCenter) text_obj.setFixedWidth(85) hbox.addWidget(text_obj) text_cov = QtWidgets.QLabel("Full coverage") text_cov.setAlignment(QtCore.Qt.AlignCenter) text_cov.setFixedWidth(85) hbox.addWidget(text_cov) # stretch hbox.addStretch() vbox.addSpacing(9) hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) hbox.addStretch() # histograms text_hist = QtWidgets.QLabel("<i>Histograms</i>") hbox.addWidget(text_hist) hbox.addStretch() hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) hbox.addStretch() # histograms: depth text_hist_depth = QtWidgets.QLabel("depth:") hbox.addWidget(text_hist_depth) text_hist_depth.setFixedHeight(GuiSettings.single_line_height()) self.hist_depth_v5 = QtWidgets.QCheckBox(self) hbox.addWidget(self.hist_depth_v5) self.hist_depth_v5.setChecked(True) # histograms: density text_hist_density = QtWidgets.QLabel(" density:") hbox.addWidget(text_hist_density) text_hist_density.setFixedHeight(GuiSettings.single_line_height()) self.hist_density_v5 = QtWidgets.QCheckBox(self) hbox.addWidget(self.hist_density_v5) self.hist_density_v5.setChecked(True) # histograms: tvu qc text_hist_tvu_qc = QtWidgets.QLabel(" TVU QC:") hbox.addWidget(text_hist_tvu_qc) text_hist_tvu_qc.setFixedHeight(GuiSettings.single_line_height()) self.hist_tvu_qc_v5 = QtWidgets.QCheckBox(self) hbox.addWidget(self.hist_tvu_qc_v5) self.hist_tvu_qc_v5.setChecked(True) # histograms: pct res text_hist_pct_res = QtWidgets.QLabel(" % resolution:") hbox.addWidget(text_hist_pct_res) text_hist_pct_res.setFixedHeight(GuiSettings.single_line_height()) self.hist_pct_res_v5 = QtWidgets.QCheckBox(self) hbox.addWidget(self.hist_pct_res_v5) self.hist_pct_res_v5.setChecked(True) hbox.addStretch() vbox.addSpacing(9) hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) hbox.addStretch() # plot vs text_plot_vs = QtWidgets.QLabel("<i>Plot depth vs.</i>") hbox.addWidget(text_plot_vs) hbox.addStretch() hbox = QtWidgets.QHBoxLayout() vbox.addLayout(hbox) hbox.addStretch() # depth vs density text_depth_vs_density = QtWidgets.QLabel("density:") hbox.addWidget(text_depth_vs_density) text_depth_vs_density.setFixedHeight(GuiSettings.single_line_height()) self.depth_vs_density_v5 = QtWidgets.QCheckBox(self) hbox.addWidget(self.depth_vs_density_v5) self.depth_vs_density_v5.setChecked(False) # depth vs tvu qc text_depth_vs_tvu_qc = QtWidgets.QLabel(" TVU QC:") hbox.addWidget(text_depth_vs_tvu_qc) text_depth_vs_tvu_qc.setFixedHeight(GuiSettings.single_line_height()) self.depth_vs_tvu_qc_v5 = QtWidgets.QCheckBox(self) hbox.addWidget(self.depth_vs_tvu_qc_v5) self.depth_vs_tvu_qc_v5.setChecked(False) hbox.addStretch() vbox.addStretch()
def main(): import sys app = QtWidgets.QApplication(sys.argv) ex = FileBrowser() ex.show() sys.exit(app.exec_())
def run(self): while(1): self.app.emit(QtCore.SIGNAL("UPDATE(int)"),self.iCounter) # WARNING : argument's type is not checked and no error message is generated if wrong !!! # self.app.emit(QtCore.SIGNAL("UPDATE(int)"),str(self.iCounter)) #DOES NOT WORK : argument's type is wrong # self.app.emit(QtCore.SIGNAL("UPDATE(str)"),self.iCounter) #DOES NOT WORK : func's prototype is wrong self.iCounter += 1 time.sleep(self.fDelay) if __name__ == "__main__": app = QApplication(sys.argv) wdFrm = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout() wdFrm.setLayout(layout) #Create two labels that will display a counter wdCounter = QtWidgets.QLineEdit("0") layout.addWidget(wdCounter) #Create a function for widget updating def UpdateCounter(iCounter): wdCounter.setText(str(iCounter)) app.connect(QtCore.SIGNAL("UPDATE(int)"),UpdateCounter)
def __init__( self, mode: Text, labels_filename: Text, labels: Optional[Labels] = None, skeleton: Optional["Skeleton"] = None, *args, **kwargs, ): super(LearningDialog, self).__init__() if labels is None: labels = Labels.load_file(labels_filename) if skeleton is None and labels.skeletons: skeleton = labels.skeletons[0] self.mode = mode self.labels_filename = labels_filename self.labels = labels self.skeleton = skeleton self._frame_selection = None self.current_pipeline = "" self.tabs = dict() self.shown_tab_names = [] self._cfg_getter = configs.TrainingConfigsGetter.make_from_labels_filename( labels_filename=self.labels_filename) # Layout for buttons buttons = QtWidgets.QDialogButtonBox() self.cancel_button = buttons.addButton( QtWidgets.QDialogButtonBox.Cancel) self.save_button = buttons.addButton( "Save configuration files...", QtWidgets.QDialogButtonBox.ApplyRole) self.run_button = buttons.addButton( "Run", QtWidgets.QDialogButtonBox.AcceptRole) buttons_layout = QtWidgets.QHBoxLayout() buttons_layout.addWidget(buttons, alignment=QtCore.Qt.AlignTop) buttons_layout_widget = QtWidgets.QWidget() buttons_layout_widget.setLayout(buttons_layout) self.pipeline_form_widget = TrainingPipelineWidget(mode=mode, skeleton=skeleton) if mode == "training": tab_label = "Training Pipeline" elif mode == "inference": # self.pipeline_form_widget = InferencePipelineWidget() tab_label = "Inference Pipeline" else: raise ValueError(f"Invalid LearningDialog mode: {mode}") self.tab_widget = QtWidgets.QTabWidget() self.tab_widget.addTab(self.pipeline_form_widget, tab_label) self.make_tabs() # Layout for entire dialog layout = QtWidgets.QVBoxLayout() layout.addWidget(self.tab_widget) layout.addWidget(buttons_layout_widget) self.setLayout(layout) # Default to most recently trained pipeline (if there is one) self.set_pipeline_from_most_recent() # Connect functions to update pipeline tabs when pipeline changes self.pipeline_form_widget.updatePipeline.connect(self.set_pipeline) self.pipeline_form_widget.emitPipeline() self.connect_signals() # Connect actions for buttons buttons.accepted.connect(self.run) buttons.rejected.connect(self.reject) buttons.clicked.connect(self.on_button_click) # Connect button for previewing the training data if "_view_datagen" in self.pipeline_form_widget.buttons: self.pipeline_form_widget.buttons["_view_datagen"].clicked.connect( self.view_datagen)
def __init__(self, parent): QtWidgets.QDialog.__init__(self, parent) self.setWindowTitle("Split in chunks") self.gridX = 2 self.gridY = 2 self.gridWidth = 198 self.gridHeight = 198 self.spinX = QtWidgets.QSpinBox() self.spinX.setMinimum(1) self.spinX.setValue(2) self.spinX.setMaximum(20) self.spinX.setFixedSize(75, 25) self.spinY = QtWidgets.QSpinBox() self.spinY.setMinimum(1) self.spinY.setValue(2) self.spinY.setMaximum(20) self.spinY.setFixedSize(75, 25) self.chkMesh = QtWidgets.QCheckBox("Build Mesh") self.chkMesh.setToolTip("Generates mesh for each cell in grid") self.meshBox = QtWidgets.QComboBox() for element in MESH.keys(): self.meshBox.addItem(element) self.chkDense = QtWidgets.QCheckBox("Build Dense Cloud") self.chkDense.setWhatsThis("Builds dense cloud for each cell in grid") self.denseBox = QtWidgets.QComboBox() for element in DENSE.keys(): self.denseBox.addItem(element) self.chkMerge = QtWidgets.QCheckBox("Merge Back") self.chkMerge.setToolTip( "Merges back the processing products formed in the individual cells" ) self.chkSave = QtWidgets.QCheckBox("Autosave") self.chkSave.setToolTip("Autosaves the project after each operation") self.txtOvp = QtWidgets.QLabel() self.txtOvp.setText("Overlap (%):") self.edtOvp = QtWidgets.QLineEdit() self.edtOvp.setPlaceholderText("0") self.edtOvp.setFixedSize(50, 25) self.btnQuit = QtWidgets.QPushButton("Close") self.btnQuit.setFixedSize(90, 50) self.btnP1 = QtWidgets.QPushButton("Split") self.btnP1.setFixedSize(90, 50) self.grid = QtWidgets.QLabel(" ") self.grid.resize(self.gridWidth, self.gridHeight) tempPixmap = QtGui.QPixmap(self.gridWidth, self.gridHeight) tempImage = tempPixmap.toImage() for y in range(self.gridHeight): for x in range(self.gridWidth): if not (x and y) or (x == self.gridWidth - 1) or (y == self.gridHeight - 1): tempImage.setPixel(x, y, QtGui.qRgb(0, 0, 0)) elif (x == self.gridWidth / 2) or (y == self.gridHeight / 2): tempImage.setPixel(x, y, QtGui.qRgb(0, 0, 0)) else: tempImage.setPixel(x, y, QtGui.qRgb(255, 255, 255)) tempPixmap = tempPixmap.fromImage(tempImage) self.grid.setPixmap(tempPixmap) self.grid.show() layout = QtWidgets.QGridLayout() # creating layout layout.addWidget(self.spinX, 1, 0) layout.addWidget(self.spinY, 1, 1, QtCore.Qt.AlignRight) layout.addWidget(self.chkDense, 0, 2) layout.addWidget(self.chkMesh, 0, 3) layout.addWidget(self.chkMerge, 0, 4) layout.addWidget(self.meshBox, 1, 3, QtCore.Qt.AlignTop) layout.addWidget(self.denseBox, 1, 2, QtCore.Qt.AlignTop) layout.addWidget(self.chkSave, 3, 2) layout.addWidget(self.btnP1, 3, 3) layout.addWidget(self.btnQuit, 3, 4) layout.addWidget(self.txtOvp, 0, 0, QtCore.Qt.AlignRight) layout.addWidget(self.edtOvp, 0, 1, QtCore.Qt.AlignLeft) layout.addWidget(self.grid, 2, 0, 2, 2) # layout.setAlignment(QtCore.Qt.AlignTop) self.setLayout(layout) proc_split = lambda: self.splitChunks() self.spinX.valueChanged.connect(self.updateGrid) self.spinY.valueChanged.connect(self.updateGrid) QtCore.QObject.connect(self.btnP1, QtCore.SIGNAL("clicked()"), proc_split) QtCore.QObject.connect(self.btnQuit, QtCore.SIGNAL("clicked()"), self, QtCore.SLOT("reject()")) self.exec()
def _layout_widget(layout): widget = QtWidgets.QWidget() widget.setLayout(layout) return widget
def __init__(self, parent: QtWidgets.QWidget): super(InfoOverlay, self).__init__(parent) # --- These will be replaced from the ui file --- self.overlay_grp = QtWidgets.QWidget() self.top_space_widget = QtWidgets.QWidget() self.left_space_widget = QtWidgets.QWidget() self.btn_box = QtWidgets.QWidget() self.text_label = QtWidgets.QLabel() SetupWidget.from_ui_file(self, Resource.ui_paths['knecht_overlay']) # --- Init Attributes --- self.parent = parent self.queue = list() self.btn_list = list() self.message_active = False # -- Prepare Message Browser -- self.msg_browser = QtWidgets.QTextBrowser() self.anchors = dict() self.msg_tab = QtWidgets.QTabWidget() self.tab_widget_anim = TabBgrAnimation( self) # Animate MainWindow TabWidget Tab background color self.use_msg_browser = False # --- Get header height --- self.header_height = 0 if hasattr(parent, 'header'): self.header_height = parent.header().height() # --- Setup Overlay Attributes --- self.style = 'background: rgba(' + f'{self.bg_color[0]}, {self.bg_color[1]}, {self.bg_color[2]},'\ + '{0}); color: rgba(233, 233, 233, {1});' self.bg_anim = BgrAnimation( self.overlay_grp, self.bg_color, additional_stylesheet= f'color: rgba(233, 233, 233, {self.txt_opacity});') self.restore_visibility() self.overlay_grp.installEventFilter(self) self.animation = QPropertyAnimation(self.overlay_grp, b"geometry") self.text_label.setOpenExternalLinks(True) # --- Init Timers --- self.msg_timer = QTimer() self.msg_timer.setSingleShot(True) self.msg_timer.timeout.connect(self._next_entry) self.mouse_leave_timer = QTimer() self.mouse_leave_timer.setSingleShot(True) self.mouse_leave_timer.setInterval(150) self.mouse_leave_timer.timeout.connect(self.restore_visibility) self.click_timer = QTimer() self.click_timer.setSingleShot(True) # --- Install parent resize wrapper --- self._org_parent_resize_event = self.parent.resizeEvent self.parent.resizeEvent = self._parent_resize_wrapper # --- Install Show Event wrapper --- # On document tab change, parent widget will not trigger resize event # but maybe was resized while hidden. This wrapper will make sure we adapt # size on tab change. self._org_parent_show_event = self.parent.showEvent self.parent.showEvent = self._parent_show_wrapper # Manually trigger an initial resize event QTimer.singleShot(1, self._adapt_size) self.hide_all()
def setupUi(self, DockWidget): DockWidget.setObjectName("DockWidget") DockWidget.resize(578, 515) self.dockWidgetContents = QtWidgets.QWidget() self.dockWidgetContents.setObjectName("dockWidgetContents") self.gridLayout_5 = QtWidgets.QGridLayout(self.dockWidgetContents) self.gridLayout_5.setObjectName("gridLayout_5") self.label_5 = QtWidgets.QLabel(self.dockWidgetContents) font = QtGui.QFont() font.setWeight(75) font.setBold(True) self.label_5.setFont(font) self.label_5.setObjectName("label_5") self.gridLayout_5.addWidget(self.label_5, 0, 0, 1, 1) self.label_6 = QtWidgets.QLabel(self.dockWidgetContents) font = QtGui.QFont() font.setWeight(75) font.setBold(True) self.label_6.setFont(font) self.label_6.setObjectName("label_6") self.gridLayout_5.addWidget(self.label_6, 0, 1, 1, 1) self.tabWidgetNorth = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetNorth.setDocumentMode(False) self.tabWidgetNorth.setTabsClosable(True) self.tabWidgetNorth.setObjectName("tabWidgetNorth") self.tab_7 = QtWidgets.QWidget() self.tab_7.setObjectName("tab_7") self.gridLayout_8 = QtWidgets.QGridLayout(self.tab_7) self.gridLayout_8.setObjectName("gridLayout_8") self.label_52 = QtWidgets.QLabel(self.tab_7) self.label_52.setObjectName("label_52") self.gridLayout_8.addWidget(self.label_52, 0, 0, 1, 1) self.tabWidgetNorth.addTab(self.tab_7, "") self.tab_8 = QtWidgets.QWidget() self.tab_8.setObjectName("tab_8") self.gridLayout_4 = QtWidgets.QGridLayout(self.tab_8) self.gridLayout_4.setObjectName("gridLayout_4") self.label_48 = QtWidgets.QLabel(self.tab_8) self.label_48.setObjectName("label_48") self.gridLayout_4.addWidget(self.label_48, 0, 0, 1, 1) self.tabWidgetNorth.addTab(self.tab_8, "") self.gridLayout_5.addWidget(self.tabWidgetNorth, 1, 0, 1, 1) self.tabWidgetNorth_2 = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetNorth_2.setEnabled(False) self.tabWidgetNorth_2.setDocumentMode(False) self.tabWidgetNorth_2.setTabsClosable(True) self.tabWidgetNorth_2.setObjectName("tabWidgetNorth_2") self.tab_9 = QtWidgets.QWidget() self.tab_9.setObjectName("tab_9") self.gridLayout_10 = QtWidgets.QGridLayout(self.tab_9) self.gridLayout_10.setObjectName("gridLayout_10") self.label_53 = QtWidgets.QLabel(self.tab_9) self.label_53.setObjectName("label_53") self.gridLayout_10.addWidget(self.label_53, 0, 0, 1, 1) self.tabWidgetNorth_2.addTab(self.tab_9, "") self.tab_10 = QtWidgets.QWidget() self.tab_10.setObjectName("tab_10") self.gridLayout_19 = QtWidgets.QGridLayout(self.tab_10) self.gridLayout_19.setObjectName("gridLayout_19") self.label_49 = QtWidgets.QLabel(self.tab_10) self.label_49.setObjectName("label_49") self.gridLayout_19.addWidget(self.label_49, 0, 0, 1, 1) self.tabWidgetNorth_2.addTab(self.tab_10, "") self.gridLayout_5.addWidget(self.tabWidgetNorth_2, 1, 1, 1, 1) self.tabWidgetWest = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetWest.setTabPosition(QtWidgets.QTabWidget.West) self.tabWidgetWest.setObjectName("tabWidgetWest") self.tab_5 = QtWidgets.QWidget() self.tab_5.setObjectName("tab_5") self.gridLayout_3 = QtWidgets.QGridLayout(self.tab_5) self.gridLayout_3.setObjectName("gridLayout_3") self.label_39 = QtWidgets.QLabel(self.tab_5) self.label_39.setObjectName("label_39") self.gridLayout_3.addWidget(self.label_39, 0, 0, 1, 1) self.tabWidgetWest.addTab(self.tab_5, "") self.tab_6 = QtWidgets.QWidget() self.tab_6.setObjectName("tab_6") self.gridLayout_9 = QtWidgets.QGridLayout(self.tab_6) self.gridLayout_9.setObjectName("gridLayout_9") self.label_54 = QtWidgets.QLabel(self.tab_6) self.label_54.setObjectName("label_54") self.gridLayout_9.addWidget(self.label_54, 0, 0, 1, 1) self.tabWidgetWest.addTab(self.tab_6, "") self.gridLayout_5.addWidget(self.tabWidgetWest, 2, 0, 1, 1) self.tabWidgetWest_2 = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetWest_2.setEnabled(False) self.tabWidgetWest_2.setTabPosition(QtWidgets.QTabWidget.West) self.tabWidgetWest_2.setObjectName("tabWidgetWest_2") self.tab_11 = QtWidgets.QWidget() self.tab_11.setObjectName("tab_11") self.gridLayout_20 = QtWidgets.QGridLayout(self.tab_11) self.gridLayout_20.setObjectName("gridLayout_20") self.label_50 = QtWidgets.QLabel(self.tab_11) self.label_50.setObjectName("label_50") self.gridLayout_20.addWidget(self.label_50, 0, 0, 1, 1) self.tabWidgetWest_2.addTab(self.tab_11, "") self.tab_12 = QtWidgets.QWidget() self.tab_12.setObjectName("tab_12") self.gridLayout_21 = QtWidgets.QGridLayout(self.tab_12) self.gridLayout_21.setObjectName("gridLayout_21") self.label_72 = QtWidgets.QLabel(self.tab_12) self.label_72.setObjectName("label_72") self.gridLayout_21.addWidget(self.label_72, 0, 0, 1, 1) self.tabWidgetWest_2.addTab(self.tab_12, "") self.gridLayout_5.addWidget(self.tabWidgetWest_2, 2, 1, 1, 1) self.tabWidgetEast = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetEast.setTabPosition(QtWidgets.QTabWidget.East) self.tabWidgetEast.setObjectName("tabWidgetEast") self.tab_3 = QtWidgets.QWidget() self.tab_3.setObjectName("tab_3") self.gridLayout_2 = QtWidgets.QGridLayout(self.tab_3) self.gridLayout_2.setObjectName("gridLayout_2") self.label_38 = QtWidgets.QLabel(self.tab_3) self.label_38.setObjectName("label_38") self.gridLayout_2.addWidget(self.label_38, 0, 0, 1, 1) self.tabWidgetEast.addTab(self.tab_3, "") self.tab_4 = QtWidgets.QWidget() self.tab_4.setObjectName("tab_4") self.gridLayout_11 = QtWidgets.QGridLayout(self.tab_4) self.gridLayout_11.setObjectName("gridLayout_11") self.label_55 = QtWidgets.QLabel(self.tab_4) self.label_55.setObjectName("label_55") self.gridLayout_11.addWidget(self.label_55, 0, 0, 1, 1) self.tabWidgetEast.addTab(self.tab_4, "") self.gridLayout_5.addWidget(self.tabWidgetEast, 3, 0, 1, 1) self.tabWidgetEast_2 = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetEast_2.setEnabled(False) self.tabWidgetEast_2.setTabPosition(QtWidgets.QTabWidget.East) self.tabWidgetEast_2.setObjectName("tabWidgetEast_2") self.tab_13 = QtWidgets.QWidget() self.tab_13.setObjectName("tab_13") self.gridLayout_22 = QtWidgets.QGridLayout(self.tab_13) self.gridLayout_22.setObjectName("gridLayout_22") self.label_51 = QtWidgets.QLabel(self.tab_13) self.label_51.setObjectName("label_51") self.gridLayout_22.addWidget(self.label_51, 0, 0, 1, 1) self.tabWidgetEast_2.addTab(self.tab_13, "") self.tab_14 = QtWidgets.QWidget() self.tab_14.setObjectName("tab_14") self.gridLayout_30 = QtWidgets.QGridLayout(self.tab_14) self.gridLayout_30.setObjectName("gridLayout_30") self.label_73 = QtWidgets.QLabel(self.tab_14) self.label_73.setObjectName("label_73") self.gridLayout_30.addWidget(self.label_73, 0, 0, 1, 1) self.tabWidgetEast_2.addTab(self.tab_14, "") self.gridLayout_5.addWidget(self.tabWidgetEast_2, 3, 1, 1, 1) self.tabWidgetSouth = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetSouth.setTabPosition(QtWidgets.QTabWidget.South) self.tabWidgetSouth.setTabsClosable(True) self.tabWidgetSouth.setObjectName("tabWidgetSouth") self.tab = QtWidgets.QWidget() self.tab.setObjectName("tab") self.gridLayout = QtWidgets.QGridLayout(self.tab) self.gridLayout.setObjectName("gridLayout") self.label_34 = QtWidgets.QLabel(self.tab) self.label_34.setObjectName("label_34") self.gridLayout.addWidget(self.label_34, 0, 0, 1, 1) self.tabWidgetSouth.addTab(self.tab, "") self.tab_2 = QtWidgets.QWidget() self.tab_2.setObjectName("tab_2") self.gridLayout_18 = QtWidgets.QGridLayout(self.tab_2) self.gridLayout_18.setObjectName("gridLayout_18") self.label_62 = QtWidgets.QLabel(self.tab_2) self.label_62.setObjectName("label_62") self.gridLayout_18.addWidget(self.label_62, 0, 0, 1, 1) self.tabWidgetSouth.addTab(self.tab_2, "") self.gridLayout_5.addWidget(self.tabWidgetSouth, 4, 0, 1, 1) self.tabWidgetSouth_2 = QtWidgets.QTabWidget(self.dockWidgetContents) self.tabWidgetSouth_2.setEnabled(False) self.tabWidgetSouth_2.setTabPosition(QtWidgets.QTabWidget.South) self.tabWidgetSouth_2.setTabsClosable(True) self.tabWidgetSouth_2.setObjectName("tabWidgetSouth_2") self.tab_15 = QtWidgets.QWidget() self.tab_15.setObjectName("tab_15") self.gridLayout_31 = QtWidgets.QGridLayout(self.tab_15) self.gridLayout_31.setObjectName("gridLayout_31") self.label_35 = QtWidgets.QLabel(self.tab_15) self.label_35.setObjectName("label_35") self.gridLayout_31.addWidget(self.label_35, 0, 0, 1, 1) self.tabWidgetSouth_2.addTab(self.tab_15, "") self.tab_16 = QtWidgets.QWidget() self.tab_16.setObjectName("tab_16") self.gridLayout_32 = QtWidgets.QGridLayout(self.tab_16) self.gridLayout_32.setObjectName("gridLayout_32") self.label_74 = QtWidgets.QLabel(self.tab_16) self.label_74.setObjectName("label_74") self.gridLayout_32.addWidget(self.label_74, 0, 0, 1, 1) self.tabWidgetSouth_2.addTab(self.tab_16, "") self.gridLayout_5.addWidget(self.tabWidgetSouth_2, 4, 1, 1, 1) DockWidget.setWidget(self.dockWidgetContents) self.retranslateUi(DockWidget) self.tabWidgetNorth.setCurrentIndex(0) self.tabWidgetNorth_2.setCurrentIndex(1) self.tabWidgetWest.setCurrentIndex(0) self.tabWidgetWest_2.setCurrentIndex(0) self.tabWidgetEast.setCurrentIndex(0) self.tabWidgetEast_2.setCurrentIndex(0) self.tabWidgetSouth.setCurrentIndex(0) self.tabWidgetSouth_2.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(DockWidget)
def import_skin(self, file_path=None, world_space=False, create_missing_infs=True, prompt=True): """ Imports skin weights from a file. Args: file_path(string): An absolute path to save weights to. world_space(bool): False=loads by point order, True=loads by world positions create_missing_infs(bool): Create any missing influences so the skin can still import. prompt(bool): Asks for user confirmation if enabled. """ if not self.is_valid(): raise RuntimeError("Need to pick an object first.") if prompt: msg_box = QtWidgets.QMessageBox( QtWidgets.QMessageBox.Warning, "Undos will be lost", "The tool's undo stack will reset and be lost.\n" "Would you like to continue?") msg_box.addButton(QtWidgets.QMessageBox.Cancel) msg_box.addButton(QtWidgets.QMessageBox.Ok) msg_box.setDefaultButton(QtWidgets.QMessageBox.Cancel) if msg_box.exec_() == QtWidgets.QMessageBox.Cancel: return False if file_path is None: file_path = self._launch_file_picker(1, "Import skin") if not file_path: return False vert_filter = utils.extract_indexes(utils.get_vert_indexes(self.name)) # Must have an existing skin cluster if we're only applying on some vertexes. if vert_filter: if not self.has_valid_skin(): raise RuntimeError( "A skinCluster must already exist when importing weights onto vertexes" ) with open(file_path, "rb") as f: skin_data = cPickle.loads(f.read()) # Keys need to be converted to ints. skin_data["verts"] = { int(key): value for key, value in skin_data["verts"].items() } # Rename influences to match scene. with status_progress_bar.StatusProgressBar( "Matching influences", len(skin_data["verts"])) as pbar: infs = {} for index in skin_data["verts"]: for old_name in list(skin_data["verts"][index]["weights"]): if old_name not in infs: infs[old_name] = self._find_influence_by_name( old_name) or old_name.split("|")[-1] skin_data["verts"][index]["weights"][infs[ old_name]] = skin_data["verts"][index]["weights"].pop( old_name) if pbar.was_cancelled(): raise RuntimeError("User cancelled") pbar.next() if world_space: closest_vertexes = self._map_to_closest_vertexes( skin_data["verts"], vert_filter) weights_data = { source_index: skin_data["verts"][file_index] for source_index, file_index in closest_vertexes.items() } else: # Bail if vert count with file and object don't match (import via point order only) file_vert_count = skin_data["skin_cluster"]["vert_count"] obj_vert_count = cmds.polyEvaluate(self.name, vertex=True) if file_vert_count != obj_vert_count: raise RuntimeError( "Vert count doesn't match. (Object: {}, File: {})".format( obj_vert_count, file_vert_count)) weights_data = skin_data["verts"] # Get influences from file skin_jnts = [] for inf_id, inf_data in skin_data["influences"].items(): inf_name = inf_data["name"] inf_short_name = inf_name.split("|")[-1] inf = self._find_influence_by_name(inf_name) if inf is None: if not create_missing_infs: raise RuntimeError( "Missing influence '{}'".format(inf_short_name)) # Create new joint if influence is missing inf = cmds.createNode("joint", name=inf_short_name, skipSelect=True) cmds.xform(inf, ws=True, m=inf_data["world_matrix"]) OpenMaya.MGlobal.displayWarning( "Created '{}' because it was missing.".format( inf_short_name)) skin_jnts.append(inf) if vert_filter: # Add any missing influences onto existing skin so that we can maintain weights. infs = self.get_all_infs() for inf in skin_jnts: if inf not in infs: cmds.skinCluster(self.skin_cluster, e=True, lockWeights=True, weight=0, addInfluence=inf) cmds.setAttr("{}.lockInfluenceWeights".format(inf), False) else: # Create new skin cluster with influences. if self.skin_cluster and cmds.objExists(self.skin_cluster): cmds.delete(self.skin_cluster) self.skin_cluster = utils.build_skin_cluster( self.name, skin_jnts, max_infs=skin_data["skin_cluster"]["max_influences"], skin_method=skin_data["skin_cluster"]["skinning_method"], dqs_support_non_rigid=skin_data["skin_cluster"] ["dqs_support_non_rigid"], name=skin_data["skin_cluster"]["name"]) # Define all verts to apply weights to. vert_indexes = [ vert_index for vert_index in weights_data if not vert_filter or vert_index in vert_filter ] self.skin_data.data = weights_data self.collect_influence_colors() self.infs = self.get_all_infs() self.apply_current_skin_weights(vert_indexes, display_progress=True) return True
def openValkka(self): self.mvision_process.go() if self.mvision_master_process: self.mvision_master_process.go() self.livethread = LiveThread( # starts live stream services (using live555) name="live_thread", verbose=False) self.filethread = FileThread(name="file_thread", verbose=False) self.openglthread = OpenGLThread( # starts frame presenting services name="mythread", n_720p=10, n_1080p=10, n_1440p=10, n_4K=10, verbose=False, msbuftime=100, affinity=-1) # this filterchain creates a shared memory server self.chain = ShmemFilterchain1( # decoding and branching the stream happens here openglthread=self.openglthread, slot=1, shmem_name=self.shmem_name, shmem_image_dimensions=self.shmem_image_dimensions, shmem_image_interval=self.shmem_image_interval, shmem_ringbuffer_size=self.shmem_ringbuffer_size) shmem_name, n_buffer, shmem_image_dimensions = self.chain.getShmemPars( ) self.video = QtWidgets.QWidget(self.video_area) if hasattr(self.mvision_process, "analyzer_video_widget_class"): # the machine vision class may declare what video widget it wants to use to define the machine vision parameters (line crossing, zone intrusion, etc.) self.analyzer_widget = AnalyzerWidget( parent=self.video_area, analyzer_video_widget_class=self.mvision_process. analyzer_video_widget_class) else: self.analyzer_widget = AnalyzerWidget(parent=self.video_area) self.mvision_process.connectAnalyzerWidget(self.analyzer_widget) self.analyzer_widget.activate() self.win_id = int(self.video.winId()) self.video_lay.addWidget(self.video, 0, 0) self.video_lay.addWidget(self.analyzer_widget, 0, 1) self.token = self.openglthread.connect(slot=1, window_id=self.win_id) self.chain.decodingOn() # tell the decoding thread to start its job self.mvision_process.activate( n_buffer=self.shmem_ringbuffer_size, image_dimensions=self.shmem_image_dimensions, shmem_name=self.shmem_name) if self.mvision_master_process: self.mvision_process.setMasterProcess(self.mvision_master_process)
def Activated(self): baseWidget = QtWidgets.QWidget() baseWidget.setWindowTitle("Filter Holder options") panel = FilterStage_TaskPanel(baseWidget) FreeCADGui.Control.showDialog(panel)