def setupUi(self, AttachmentGroupWidget): AttachmentGroupWidget.setObjectName("AttachmentGroupWidget") AttachmentGroupWidget.resize(577, 182) self.verticalLayout = QtGui.QVBoxLayout(AttachmentGroupWidget) self.verticalLayout.setSpacing(4) self.verticalLayout.setContentsMargins(36, 6, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.attachments_label = QtGui.QLabel(AttachmentGroupWidget) self.attachments_label.setMinimumSize(QtCore.QSize(100, 16)) self.attachments_label.setMaximumSize(QtCore.QSize(100, 16)) self.attachments_label.setText("") self.attachments_label.setPixmap( QtGui.QPixmap( ":/tk_framework_qtwidgets.activity_stream/attachments.png")) self.attachments_label.setScaledContents(True) self.attachments_label.setObjectName("attachments_label") self.verticalLayout.addWidget(self.attachments_label) self.preview_frame = QtGui.QFrame(AttachmentGroupWidget) self.preview_frame.setFrameShape(QtGui.QFrame.NoFrame) self.preview_frame.setFrameShadow(QtGui.QFrame.Raised) self.preview_frame.setObjectName("preview_frame") self.preview_layout = QtGui.QGridLayout(self.preview_frame) self.preview_layout.setContentsMargins(0, 0, 0, 0) self.preview_layout.setSpacing(2) self.preview_layout.setObjectName("preview_layout") self.verticalLayout.addWidget(self.preview_frame) self.attachment_frame = QtGui.QFrame(AttachmentGroupWidget) self.attachment_frame.setFrameShape(QtGui.QFrame.NoFrame) self.attachment_frame.setFrameShadow(QtGui.QFrame.Raised) self.attachment_frame.setObjectName("attachment_frame") self.attachment_layout = QtGui.QVBoxLayout(self.attachment_frame) self.attachment_layout.setContentsMargins(2, 2, 2, 2) self.attachment_layout.setObjectName("attachment_layout") self.verticalLayout.addWidget(self.attachment_frame) self.retranslateUi(AttachmentGroupWidget) QtCore.QMetaObject.connectSlotsByName(AttachmentGroupWidget)
def setupUi(self, OutputItem): OutputItem.setObjectName("OutputItem") OutputItem.resize(396, 56) OutputItem.setMinimumSize(QtCore.QSize(0, 56)) OutputItem.setMaximumSize(QtCore.QSize(16777215, 56)) self.horizontalLayout = QtGui.QHBoxLayout(OutputItem) self.horizontalLayout.setSpacing(6) self.horizontalLayout.setContentsMargins(12, 2, 2, 2) self.horizontalLayout.setObjectName("horizontalLayout") self.verticalLayout = QtGui.QVBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.select_cb = QtGui.QCheckBox(OutputItem) self.select_cb.setMinimumSize(QtCore.QSize(0, 0)) self.select_cb.setMaximumSize(QtCore.QSize(16777215, 16777215)) self.select_cb.setText("") self.select_cb.setObjectName("select_cb") self.verticalLayout.addWidget(self.select_cb) self.horizontalLayout.addLayout(self.verticalLayout) self.icon_label = QtGui.QLabel(OutputItem) self.icon_label.setMinimumSize(QtCore.QSize(40, 40)) self.icon_label.setMaximumSize(QtCore.QSize(40, 40)) self.icon_label.setBaseSize(QtCore.QSize(32, 32)) self.icon_label.setText("") self.icon_label.setPixmap(QtGui.QPixmap(":/res/default_output.png")) self.icon_label.setScaledContents(False) self.icon_label.setAlignment(QtCore.Qt.AlignCenter) self.icon_label.setIndent(0) self.icon_label.setObjectName("icon_label") self.horizontalLayout.addWidget(self.icon_label) self.details_label = QtGui.QLabel(OutputItem) self.details_label.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter) self.details_label.setMargin(0) self.details_label.setIndent(0) self.details_label.setObjectName("details_label") self.horizontalLayout.addWidget(self.details_label) self.horizontalLayout.setStretch(2, 1) self.retranslateUi(OutputItem) QtCore.QMetaObject.connectSlotsByName(OutputItem)
def setupUi(self, SummaryWidget): SummaryWidget.setObjectName("SummaryWidget") SummaryWidget.resize(300, 45) SummaryWidget.setMinimumSize(QtCore.QSize(0, 45)) self.verticalLayout = QtGui.QVBoxLayout(SummaryWidget) self.verticalLayout.setSpacing(0) self.verticalLayout.setContentsMargins(2, 2, 2, 2) self.verticalLayout.setObjectName("verticalLayout") self.frame = QtGui.QFrame(SummaryWidget) self.frame.setFrameShape(QtGui.QFrame.StyledPanel) self.frame.setFrameShadow(QtGui.QFrame.Raised) self.frame.setObjectName("frame") self.horizontalLayout = QtGui.QHBoxLayout(self.frame) self.horizontalLayout.setSpacing(4) self.horizontalLayout.setContentsMargins(2, 2, 2, 2) self.horizontalLayout.setObjectName("horizontalLayout") self.icon = QtGui.QLabel(self.frame) self.icon.setMinimumSize(QtCore.QSize(32, 32)) self.icon.setMaximumSize(QtCore.QSize(30, 30)) self.icon.setText("") self.icon.setPixmap(QtGui.QPixmap(":/tk_multi_publish2/icon_256.png")) self.icon.setScaledContents(True) self.icon.setObjectName("icon") self.horizontalLayout.addWidget(self.icon) self.header = QtGui.QLabel(self.frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.header.sizePolicy().hasHeightForWidth()) self.header.setSizePolicy(sizePolicy) self.header.setObjectName("header") self.horizontalLayout.addWidget(self.header) self.verticalLayout.addWidget(self.frame) self.retranslateUi(SummaryWidget) QtCore.QMetaObject.connectSlotsByName(SummaryWidget)
def setupUi(self, TrayWidget): TrayWidget.setObjectName("TrayWidget") #TrayWidget.resize(114, 34) self.horizontalLayout_3 = QtGui.QHBoxLayout(TrayWidget) self.horizontalLayout_3.setSpacing(1) self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.box = QtGui.QFrame(TrayWidget) self.box.setObjectName("tray_box") sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) sizePolicy.setHorizontalStretch(1) sizePolicy.setVerticalStretch(0) # self.box.setSizePolicy(sizePolicy) self.horizontalLayout_2 = QtGui.QHBoxLayout(self.box) self.horizontalLayout_2.setSpacing(1) self.horizontalLayout_2.setContentsMargins(2, 0, 2, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.thumbnail = QtGui.QLabel(self.box) self.thumbnail.setText("") self.thumbnail.setScaledContents(True) self.thumbnail.setAlignment(QtCore.Qt.AlignCenter) self.thumbnail.setObjectName("thumbnail") self.horizontalLayout_2.addWidget(self.thumbnail) self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.horizontalLayout_2.addLayout(self.horizontalLayout) self.horizontalLayout_3.addWidget(self.box) QtCore.QMetaObject.connectSlotsByName(TrayWidget)
def setupUi(self, MyTasksForm): MyTasksForm.setObjectName("MyTasksForm") MyTasksForm.resize(359, 541) self.verticalLayout = QtGui.QVBoxLayout(MyTasksForm) self.verticalLayout.setSpacing(4) self.verticalLayout.setContentsMargins(2, 6, 2, 2) self.verticalLayout.setObjectName("verticalLayout") self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setContentsMargins(2, -1, 2, 1) self.horizontalLayout.setObjectName("horizontalLayout") self.filter_btn = QtGui.QToolButton(MyTasksForm) self.filter_btn.setStyleSheet("") self.filter_btn.setPopupMode(QtGui.QToolButton.MenuButtonPopup) self.filter_btn.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon) self.filter_btn.setAutoRaise(False) self.filter_btn.setObjectName("filter_btn") self.horizontalLayout.addWidget(self.filter_btn) spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.new_task_btn = QtGui.QPushButton(MyTasksForm) self.new_task_btn.setObjectName("new_task_btn") self.horizontalLayout.addWidget(self.new_task_btn) self.verticalLayout.addLayout(self.horizontalLayout) self.horizontalLayout_2 = QtGui.QHBoxLayout() self.horizontalLayout_2.setContentsMargins(1, -1, 1, -1) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.search_ctrl = SearchWidget(MyTasksForm) self.search_ctrl.setMinimumSize(QtCore.QSize(0, 20)) self.search_ctrl.setStyleSheet("#search_ctrl {\n" "background-color: rgb(255, 128, 0);\n" "}") self.search_ctrl.setObjectName("search_ctrl") self.horizontalLayout_2.addWidget(self.search_ctrl) self.verticalLayout.addLayout(self.horizontalLayout_2) self.retranslateUi(MyTasksForm) QtCore.QMetaObject.connectSlotsByName(MyTasksForm)
def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(809, 460) self.verticalLayout = QtGui.QVBoxLayout(Dialog) self.verticalLayout.setObjectName("verticalLayout") self.show_folder = QtGui.QPushButton(Dialog) self.show_folder.setObjectName("show_folder") self.verticalLayout.addWidget(self.show_folder) self.create_folder = QtGui.QPushButton(Dialog) self.create_folder.setObjectName("create_folder") self.verticalLayout.addWidget(self.create_folder) self.launch_maya = QtGui.QPushButton(Dialog) self.launch_maya.setObjectName("launch_maya") self.verticalLayout.addWidget(self.launch_maya) self.launch_ps = QtGui.QPushButton(Dialog) self.launch_ps.setObjectName("launch_ps") self.verticalLayout.addWidget(self.launch_ps) spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem) self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog)
def setupUi(self, PasswordForm): PasswordForm.setObjectName("PasswordForm") PasswordForm.resize(345, 162) self.verticalLayout = QtGui.QVBoxLayout(PasswordForm) self.verticalLayout.setSpacing(4) self.verticalLayout.setContentsMargins(0, 0, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.verticalLayout_2 = QtGui.QVBoxLayout() self.verticalLayout_2.setSpacing(10) self.verticalLayout_2.setContentsMargins(12, 12, 12, -1) self.verticalLayout_2.setObjectName("verticalLayout_2") self.details_label = QtGui.QLabel(PasswordForm) self.details_label.setMinimumSize(QtCore.QSize(0, 32)) self.details_label.setWordWrap(True) self.details_label.setObjectName("details_label") self.verticalLayout_2.addWidget(self.details_label) self.password_edit = QtGui.QLineEdit(PasswordForm) self.password_edit.setMinimumSize(QtCore.QSize(0, 22)) self.password_edit.setEchoMode(QtGui.QLineEdit.Password) self.password_edit.setObjectName("password_edit") self.verticalLayout_2.addWidget(self.password_edit) self.invalid_label = QtGui.QLabel(PasswordForm) self.invalid_label.setStyleSheet("#invalid_label {\n" "color: rgb(232,0,0);\n" "}") self.invalid_label.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.invalid_label.setObjectName("invalid_label") self.verticalLayout_2.addWidget(self.invalid_label) spacerItem = QtGui.QSpacerItem(20, 0, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout_2.addItem(spacerItem) self.verticalLayout_2.setStretch(3, 1) self.verticalLayout.addLayout(self.verticalLayout_2) self.break_line = QtGui.QFrame(PasswordForm) self.break_line.setFrameShape(QtGui.QFrame.HLine) self.break_line.setFrameShadow(QtGui.QFrame.Sunken) self.break_line.setObjectName("break_line") self.verticalLayout.addWidget(self.break_line) self.horizontalLayout_3 = QtGui.QHBoxLayout() self.horizontalLayout_3.setContentsMargins(12, 8, 12, 12) self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.details_btn = QtGui.QPushButton(PasswordForm) self.details_btn.setObjectName("details_btn") self.horizontalLayout_3.addWidget(self.details_btn) spacerItem1 = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_3.addItem(spacerItem1) self.cancel_btn = QtGui.QPushButton(PasswordForm) self.cancel_btn.setMinimumSize(QtCore.QSize(90, 0)) self.cancel_btn.setObjectName("cancel_btn") self.horizontalLayout_3.addWidget(self.cancel_btn) self.ok_btn = QtGui.QPushButton(PasswordForm) self.ok_btn.setMinimumSize(QtCore.QSize(90, 0)) self.ok_btn.setDefault(True) self.ok_btn.setObjectName("ok_btn") self.horizontalLayout_3.addWidget(self.ok_btn) self.verticalLayout.addLayout(self.horizontalLayout_3) self.retranslateUi(PasswordForm) QtCore.QMetaObject.connectSlotsByName(PasswordForm)
def setupUi(self, TaskWidget): TaskWidget.setObjectName("TaskWidget") TaskWidget.resize(338, 36) self.verticalLayout = QtGui.QVBoxLayout(TaskWidget) self.verticalLayout.setSpacing(0) self.verticalLayout.setContentsMargins(2, 2, 2, 2) self.verticalLayout.setObjectName("verticalLayout") self.frame = QtGui.QFrame(TaskWidget) self.frame.setMinimumSize(QtCore.QSize(0, 32)) self.frame.setFrameShape(QtGui.QFrame.StyledPanel) self.frame.setFrameShadow(QtGui.QFrame.Raised) self.frame.setObjectName("frame") self.horizontalLayout = QtGui.QHBoxLayout(self.frame) self.horizontalLayout.setSpacing(8) self.horizontalLayout.setContentsMargins(2, 2, 2, 2) self.horizontalLayout.setObjectName("horizontalLayout") self.icon = QtGui.QLabel(self.frame) self.icon.setMinimumSize(QtCore.QSize(18, 18)) self.icon.setMaximumSize(QtCore.QSize(18, 18)) self.icon.setPixmap(QtGui.QPixmap(":/tk_multi_publish2/shotgun.png")) self.icon.setScaledContents(True) self.icon.setAlignment(QtCore.Qt.AlignCenter) self.icon.setObjectName("icon") self.horizontalLayout.addWidget(self.icon) self.header = QtGui.QLabel(self.frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.header.sizePolicy().hasHeightForWidth()) self.header.setSizePolicy(sizePolicy) self.header.setObjectName("header") self.horizontalLayout.addWidget(self.header) self.status = QtGui.QToolButton(self.frame) self.status.setMinimumSize(QtCore.QSize(30, 22)) self.status.setMaximumSize(QtCore.QSize(30, 22)) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/status_publish.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.status.setIcon(icon) self.status.setIconSize(QtCore.QSize(16, 16)) self.status.setObjectName("status") self.horizontalLayout.addWidget(self.status) self.checkbox = QtGui.QCheckBox(self.frame) self.checkbox.setObjectName("checkbox") self.horizontalLayout.addWidget(self.checkbox) self.verticalLayout.addWidget(self.frame) self.retranslateUi(TaskWidget) QtCore.QMetaObject.connectSlotsByName(TaskWidget)
def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(412, 648) self.verticalLayout_23 = QtGui.QVBoxLayout(Dialog) self.verticalLayout_23.setSpacing(0) self.verticalLayout_23.setContentsMargins(0, 0, 0, 0) self.verticalLayout_23.setObjectName("verticalLayout_23") self.main_stack = QtGui.QStackedWidget(Dialog) self.main_stack.setObjectName("main_stack") self.main_page = QtGui.QWidget() self.main_page.setObjectName("main_page") self.verticalLayout_17 = QtGui.QVBoxLayout(self.main_page) self.verticalLayout_17.setSpacing(4) self.verticalLayout_17.setContentsMargins(4, 4, 4, 4) self.verticalLayout_17.setObjectName("verticalLayout_17") self.top_group = QtGui.QFrame(self.main_page) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.top_group.sizePolicy().hasHeightForWidth()) self.top_group.setSizePolicy(sizePolicy) self.top_group.setFrameShape(QtGui.QFrame.StyledPanel) self.top_group.setFrameShadow(QtGui.QFrame.Raised) self.top_group.setObjectName("top_group") self.verticalLayout_18 = QtGui.QVBoxLayout(self.top_group) self.verticalLayout_18.setSpacing(4) self.verticalLayout_18.setContentsMargins(6, 6, 6, 6) self.verticalLayout_18.setObjectName("verticalLayout_18") self.header_stack = QtGui.QStackedWidget(self.top_group) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.header_stack.sizePolicy().hasHeightForWidth()) self.header_stack.setSizePolicy(sizePolicy) self.header_stack.setMinimumSize(QtCore.QSize(0, 42)) self.header_stack.setMaximumSize(QtCore.QSize(16777215, 42)) self.header_stack.setObjectName("header_stack") self.page = QtGui.QWidget() self.page.setObjectName("page") self.verticalLayout_24 = QtGui.QVBoxLayout(self.page) self.verticalLayout_24.setSpacing(2) self.verticalLayout_24.setContentsMargins(2, 0, 2, 0) self.verticalLayout_24.setObjectName("verticalLayout_24") self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setSpacing(0) self.horizontalLayout.setContentsMargins(-1, -1, 4, -1) self.horizontalLayout.setObjectName("horizontalLayout") self.navigation_home = QtGui.QToolButton(self.page) self.navigation_home.setMinimumSize(QtCore.QSize(30, 30)) self.navigation_home.setMaximumSize(QtCore.QSize(30, 30)) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/tk_multi_infopanel/home.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.navigation_home.setIcon(icon) self.navigation_home.setIconSize(QtCore.QSize(30, 30)) self.navigation_home.setObjectName("navigation_home") self.horizontalLayout.addWidget(self.navigation_home) self.navigation_prev = QtGui.QToolButton(self.page) self.navigation_prev.setMinimumSize(QtCore.QSize(30, 30)) self.navigation_prev.setMaximumSize(QtCore.QSize(30, 30)) icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap(":/tk_multi_infopanel/left_arrow.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.navigation_prev.setIcon(icon1) self.navigation_prev.setIconSize(QtCore.QSize(30, 30)) self.navigation_prev.setObjectName("navigation_prev") self.horizontalLayout.addWidget(self.navigation_prev) self.navigation_next = QtGui.QToolButton(self.page) self.navigation_next.setMinimumSize(QtCore.QSize(30, 30)) self.navigation_next.setMaximumSize(QtCore.QSize(30, 30)) icon2 = QtGui.QIcon() icon2.addPixmap(QtGui.QPixmap(":/tk_multi_infopanel/right_arrow.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.navigation_next.setIcon(icon2) self.navigation_next.setIconSize(QtCore.QSize(30, 30)) self.navigation_next.setObjectName("navigation_next") self.horizontalLayout.addWidget(self.navigation_next) self.details_text_header = QtGui.QLabel(self.page) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Ignored, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.details_text_header.sizePolicy().hasHeightForWidth()) self.details_text_header.setSizePolicy(sizePolicy) self.details_text_header.setMinimumSize(QtCore.QSize(0, 30)) self.details_text_header.setMaximumSize(QtCore.QSize(16777215, 30)) self.details_text_header.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.details_text_header.setWordWrap(False) self.details_text_header.setObjectName("details_text_header") self.horizontalLayout.addWidget(self.details_text_header) self.set_context = WorkAreaButton(self.page) self.set_context.setMinimumSize(QtCore.QSize(30, 30)) self.set_context.setMaximumSize(QtCore.QSize(30, 30)) icon3 = QtGui.QIcon() icon3.addPixmap(QtGui.QPixmap(":/tk_multi_infopanel/pin.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) icon3.addPixmap(QtGui.QPixmap(":/tk_multi_infopanel/pin_white.png"), QtGui.QIcon.Disabled, QtGui.QIcon.Off) self.set_context.setIcon(icon3) self.set_context.setIconSize(QtCore.QSize(30, 30)) self.set_context.setObjectName("set_context") self.horizontalLayout.addWidget(self.set_context) self.search = QtGui.QToolButton(self.page) self.search.setMinimumSize(QtCore.QSize(30, 30)) self.search.setMaximumSize(QtCore.QSize(30, 30)) icon4 = QtGui.QIcon() icon4.addPixmap(QtGui.QPixmap(":/tk_multi_infopanel/search.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.search.setIcon(icon4) self.search.setIconSize(QtCore.QSize(30, 30)) self.search.setObjectName("search") self.horizontalLayout.addWidget(self.search) self.label_3 = QtGui.QLabel(self.page) self.label_3.setMinimumSize(QtCore.QSize(10, 0)) self.label_3.setMaximumSize(QtCore.QSize(10, 16777215)) self.label_3.setText("") self.label_3.setObjectName("label_3") self.horizontalLayout.addWidget(self.label_3) self.current_user = QtGui.QToolButton(self.page) self.current_user.setMinimumSize(QtCore.QSize(30, 30)) self.current_user.setMaximumSize(QtCore.QSize(30, 30)) self.current_user.setFocusPolicy(QtCore.Qt.NoFocus) icon5 = QtGui.QIcon() icon5.addPixmap(QtGui.QPixmap(":/tk_multi_infopanel/default_user_thumb.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.current_user.setIcon(icon5) self.current_user.setIconSize(QtCore.QSize(30, 30)) self.current_user.setObjectName("current_user") self.horizontalLayout.addWidget(self.current_user) self.verticalLayout_24.addLayout(self.horizontalLayout) self.header_stack.addWidget(self.page) self.page_2 = QtGui.QWidget() self.page_2.setObjectName("page_2") self.horizontalLayout_2 = QtGui.QHBoxLayout(self.page_2) self.horizontalLayout_2.setSpacing(2) self.horizontalLayout_2.setContentsMargins(2, 0, 2, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.label = QtGui.QLabel(self.page_2) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth()) self.label.setSizePolicy(sizePolicy) self.label.setMinimumSize(QtCore.QSize(30, 30)) self.label.setMaximumSize(QtCore.QSize(30, 30)) self.label.setText("") self.label.setPixmap(QtGui.QPixmap(":/tk_multi_infopanel/search.png")) self.label.setScaledContents(True) self.label.setObjectName("label") self.horizontalLayout_2.addWidget(self.label) self.search_input = GlobalSearchWidget(self.page_2) self.search_input.setObjectName("search_input") self.horizontalLayout_2.addWidget(self.search_input) self.cancel_search = QtGui.QPushButton(self.page_2) self.cancel_search.setObjectName("cancel_search") self.horizontalLayout_2.addWidget(self.cancel_search) self.header_stack.addWidget(self.page_2) self.verticalLayout_18.addWidget(self.header_stack) self.line = QtGui.QFrame(self.top_group) self.line.setFrameShape(QtGui.QFrame.HLine) self.line.setFrameShadow(QtGui.QFrame.Sunken) self.line.setObjectName("line") self.verticalLayout_18.addWidget(self.line) self.horizontalLayout_4 = QtGui.QHBoxLayout() self.horizontalLayout_4.setSpacing(0) self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.verticalLayout_7 = QtGui.QVBoxLayout() self.verticalLayout_7.setSpacing(0) self.verticalLayout_7.setContentsMargins(-1, 4, -1, -1) self.verticalLayout_7.setObjectName("verticalLayout_7") self.details_thumb = ShotgunPlaybackLabel(self.top_group) self.details_thumb.setMinimumSize(QtCore.QSize(96, 75)) self.details_thumb.setMaximumSize(QtCore.QSize(96, 75)) self.details_thumb.setText("") self.details_thumb.setPixmap(QtGui.QPixmap(":/tk_multi_infopanel/rect_512x400.png")) self.details_thumb.setScaledContents(True) self.details_thumb.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.details_thumb.setObjectName("details_thumb") self.verticalLayout_7.addWidget(self.details_thumb) spacerItem = QtGui.QSpacerItem(0, 0, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Ignored) self.verticalLayout_7.addItem(spacerItem) self.verticalLayout_7.setStretch(1, 1) self.horizontalLayout_4.addLayout(self.verticalLayout_7) self.details_text_middle = QtGui.QLabel(self.top_group) self.details_text_middle.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.details_text_middle.setWordWrap(True) self.details_text_middle.setObjectName("details_text_middle") self.horizontalLayout_4.addWidget(self.details_text_middle) self.verticalLayout_22 = QtGui.QVBoxLayout() self.verticalLayout_22.setSpacing(0) self.verticalLayout_22.setContentsMargins(-1, -1, 6, -1) self.verticalLayout_22.setObjectName("verticalLayout_22") self.action_button = QtGui.QPushButton(self.top_group) self.action_button.setMaximumSize(QtCore.QSize(16, 16)) self.action_button.setFocusPolicy(QtCore.Qt.NoFocus) self.action_button.setObjectName("action_button") self.verticalLayout_22.addWidget(self.action_button) self.label_2 = QtGui.QLabel(self.top_group) self.label_2.setText("") self.label_2.setObjectName("label_2") self.verticalLayout_22.addWidget(self.label_2) self.verticalLayout_22.setStretch(1, 1) self.horizontalLayout_4.addLayout(self.verticalLayout_22) self.horizontalLayout_4.setStretch(1, 1) self.verticalLayout_18.addLayout(self.horizontalLayout_4) self.verticalLayout_17.addWidget(self.top_group) self.page_stack = QtGui.QStackedWidget(self.main_page) self.page_stack.setObjectName("page_stack") self.entity_page = QtGui.QWidget() self.entity_page.setObjectName("entity_page") self.verticalLayout = QtGui.QVBoxLayout(self.entity_page) self.verticalLayout.setSpacing(0) self.verticalLayout.setContentsMargins(0, 0, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.entity_tab_widget = QtGui.QTabWidget(self.entity_page) self.entity_tab_widget.setFocusPolicy(QtCore.Qt.NoFocus) self.entity_tab_widget.setObjectName("entity_tab_widget") self.verticalLayout.addWidget(self.entity_tab_widget) self.page_stack.addWidget(self.entity_page) self.note_page = QtGui.QWidget() self.note_page.setObjectName("note_page") self.verticalLayout_5 = QtGui.QVBoxLayout(self.note_page) self.verticalLayout_5.setSpacing(0) self.verticalLayout_5.setContentsMargins(0, 0, 0, 0) self.verticalLayout_5.setObjectName("verticalLayout_5") self.note_reply_widget = ReplyListWidget(self.note_page) self.note_reply_widget.setObjectName("note_reply_widget") self.verticalLayout_5.addWidget(self.note_reply_widget) self.page_stack.addWidget(self.note_page) self.verticalLayout_17.addWidget(self.page_stack) self.main_stack.addWidget(self.main_page) self.verticalLayout_23.addWidget(self.main_stack) self.retranslateUi(Dialog) self.main_stack.setCurrentIndex(0) self.header_stack.setCurrentIndex(0) self.page_stack.setCurrentIndex(0) self.entity_tab_widget.setCurrentIndex(-1) QtCore.QMetaObject.connectSlotsByName(Dialog)
def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(784, 483) Dialog.setStyleSheet( "#Dialog {\n" "background-image: url(:/tk_framework_qtwidgets.help_screen/bg.png); \n" "}\n" "\n" "") self.horizontalLayout_2 = QtGui.QHBoxLayout(Dialog) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.verticalLayout_3 = QtGui.QVBoxLayout() self.verticalLayout_3.setObjectName("verticalLayout_3") self.label = QtGui.QLabel(Dialog) self.label.setMinimumSize(QtCore.QSize(34, 0)) self.label.setMaximumSize(QtCore.QSize(34, 16777215)) self.label.setText("") self.label.setObjectName("label") self.verticalLayout_3.addWidget(self.label) self.left_arrow = QtGui.QToolButton(Dialog) self.left_arrow.setMinimumSize(QtCore.QSize(34, 34)) self.left_arrow.setFocusPolicy(QtCore.Qt.ClickFocus) self.left_arrow.setStyleSheet( "QToolButton{\n" "background-image: url(:/tk_framework_qtwidgets.help_screen/left_arrow.png);\n" "border: none;\n" "background-color: none;\n" "}\n" "\n" "\n" "QToolButton:hover{\n" "background-image: url(:/tk_framework_qtwidgets.help_screen/left_arrow_hover.png);\n" "}\n" "\n" "QToolButton:Pressed {\n" "background-image: url(:/tk_framework_qtwidgets.help_screen/left_arrow_pressed.png);\n" "}\n" "") self.left_arrow.setText("") self.left_arrow.setAutoRaise(True) self.left_arrow.setObjectName("left_arrow") self.verticalLayout_3.addWidget(self.left_arrow) self.label_2 = QtGui.QLabel(Dialog) self.label_2.setMinimumSize(QtCore.QSize(34, 0)) self.label_2.setMaximumSize(QtCore.QSize(34, 16777215)) self.label_2.setText("") self.label_2.setObjectName("label_2") self.verticalLayout_3.addWidget(self.label_2) self.horizontalLayout_2.addLayout(self.verticalLayout_3) self.verticalLayout_2 = QtGui.QVBoxLayout() self.verticalLayout_2.setObjectName("verticalLayout_2") self.groupBox = QtGui.QGroupBox(Dialog) self.groupBox.setStyleSheet("#groupBox {\n" "background-color: rgba(0,0,0,50);\n" "\n" "}") self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.verticalLayout = QtGui.QVBoxLayout(self.groupBox) self.verticalLayout.setContentsMargins(2, 2, 2, 2) self.verticalLayout.setObjectName("verticalLayout") self.stackedWidget = QtGui.QStackedWidget(self.groupBox) self.stackedWidget.setObjectName("stackedWidget") self.verticalLayout.addWidget(self.stackedWidget) self.verticalLayout_2.addWidget(self.groupBox) self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem = QtGui.QSpacerItem(248, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.view_documentation = QtGui.QToolButton(Dialog) self.view_documentation.setObjectName("view_documentation") self.horizontalLayout.addWidget(self.view_documentation) self.close = QtGui.QToolButton(Dialog) self.close.setObjectName("close") self.horizontalLayout.addWidget(self.close) self.verticalLayout_2.addLayout(self.horizontalLayout) self.horizontalLayout_2.addLayout(self.verticalLayout_2) self.verticalLayout_4 = QtGui.QVBoxLayout() self.verticalLayout_4.setObjectName("verticalLayout_4") self.label_3 = QtGui.QLabel(Dialog) self.label_3.setMinimumSize(QtCore.QSize(34, 0)) self.label_3.setMaximumSize(QtCore.QSize(34, 16777215)) self.label_3.setText("") self.label_3.setObjectName("label_3") self.verticalLayout_4.addWidget(self.label_3) self.right_arrow = QtGui.QToolButton(Dialog) self.right_arrow.setMinimumSize(QtCore.QSize(34, 34)) self.right_arrow.setFocusPolicy(QtCore.Qt.ClickFocus) self.right_arrow.setStyleSheet( "QToolButton{\n" "background-image: url(:/tk_framework_qtwidgets.help_screen/right_arrow.png);\n" "border: none;\n" "background-color: none;\n" "}\n" "\n" "\n" "QToolButton:hover{\n" "background-image: url(:/tk_framework_qtwidgets.help_screen/right_arrow_hover.png);\n" "}\n" "\n" "QToolButton:Pressed {\n" "background-image: url(:/tk_framework_qtwidgets.help_screen/right_arrow_pressed.png);\n" "}\n" "") self.right_arrow.setText("") self.right_arrow.setAutoRaise(True) self.right_arrow.setObjectName("right_arrow") self.verticalLayout_4.addWidget(self.right_arrow) self.label_4 = QtGui.QLabel(Dialog) self.label_4.setMinimumSize(QtCore.QSize(34, 0)) self.label_4.setMaximumSize(QtCore.QSize(34, 16777215)) self.label_4.setText("") self.label_4.setObjectName("label_4") self.verticalLayout_4.addWidget(self.label_4) self.horizontalLayout_2.addLayout(self.verticalLayout_4) self.retranslateUi(Dialog) self.stackedWidget.setCurrentIndex(-1) QtCore.QMetaObject.connectSlotsByName(Dialog)
def setupUi(self, SummaryDialog): SummaryDialog.setObjectName("SummaryDialog") SummaryDialog.resize(501, 175) self.verticalLayout = QtGui.QVBoxLayout(SummaryDialog) self.verticalLayout.setContentsMargins(20, -1, 20, -1) self.verticalLayout.setObjectName("verticalLayout") self.stackedWidget = QtGui.QStackedWidget(SummaryDialog) self.stackedWidget.setObjectName("stackedWidget") self.page = QtGui.QWidget() self.page.setObjectName("page") self.verticalLayout_2 = QtGui.QVBoxLayout(self.page) self.verticalLayout_2.setObjectName("verticalLayout_2") self.label = QtGui.QLabel(self.page) self.label.setText("") self.label.setPixmap( QtGui.QPixmap(":/tk-flame-review/submission_complete.png")) self.label.setObjectName("label") self.verticalLayout_2.addWidget(self.label) self.stackedWidget.addWidget(self.page) self.page_2 = QtGui.QWidget() self.page_2.setObjectName("page_2") self.verticalLayout_3 = QtGui.QVBoxLayout(self.page_2) self.verticalLayout_3.setObjectName("verticalLayout_3") self.label_2 = QtGui.QLabel(self.page_2) self.label_2.setText("") self.label_2.setPixmap( QtGui.QPixmap(":/tk-flame-review/submission_failed.png")) self.label_2.setObjectName("label_2") self.verticalLayout_3.addWidget(self.label_2) self.stackedWidget.addWidget(self.page_2) self.verticalLayout.addWidget(self.stackedWidget) self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem = QtGui.QSpacerItem(368, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.submit = QtGui.QPushButton(SummaryDialog) self.submit.setObjectName("submit") self.horizontalLayout.addWidget(self.submit) self.verticalLayout.addLayout(self.horizontalLayout) self.retranslateUi(SummaryDialog) self.stackedWidget.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(SummaryDialog)
def __init__(self, parent, bundle, pixmaps): """ Constructor. :param parent: Parent window. The help screen will be centered on top of this window. :param bundle: Bundle object to associate with (app, engine, framework) :param pixmaps: List of QPixmap objects, all 650x400 px """ # it seems some versions of linux are having issues with the splash screen mode, # so disable this if "linux" in sys.platform: QtGui.QDialog.__init__(self, parent, QtCore.Qt.WindowStaysOnTopHint) else: QtGui.QDialog.__init__( self, parent, QtCore.Qt.SplashScreen | QtCore.Qt.WindowStaysOnTopHint) self._bundle = bundle self.__page_anim_grp = None # set up the UI self.ui = Ui_Dialog() self.ui.setupUi(self) if self._bundle.documentation_url is None: self.ui.view_documentation.setEnabled(False) self.ui.view_documentation.clicked.connect(self._on_doc) self.ui.close.clicked.connect(self.close) self.ui.left_arrow.clicked.connect(self._on_left_arrow_click) self.ui.right_arrow.clicked.connect(self._on_right_arrow_click) # we start at index zero so disable the left arrow self.ui.left_arrow.setVisible(False) if len(pixmaps) == 1: # only one image. So disable the right arrow aswell self.ui.right_arrow.setVisible(False) # make GC happy self._widgets = [] self._pages = [] for p in pixmaps: if p.width() != 650 or p.height() != 400: raise tank.TankError( "Image not found or image resolution not 650x400px!") page = QtGui.QWidget() self._pages.append(page) layout = QtGui.QVBoxLayout(page) layout.setContentsMargins(2, 2, 2, 2) label = QtGui.QLabel(page) label.setMinimumSize(QtCore.QSize(650, 400)) label.setMaximumSize(QtCore.QSize(650, 400)) label.setPixmap(p) label.setAlignment(QtCore.Qt.AlignCenter) layout.addWidget(label) self.ui.stackedWidget.addWidget(page) self._widgets.extend([p, page, layout, label]) # set first page self.ui.stackedWidget.setCurrentIndex(0) self._num_images = len(pixmaps)
def __init__(self, app): QtGui.QWidget.__init__(self) self.app = app debug(app = self.app, method = 'MainUI', message = 'MainUI initialized...', verbose = False) #self.tk = sgtk.sgtk_from_path("T:/software/bubblebathbay") self.mainLayout = QtGui.QVBoxLayout(self) debug(app = self.app, method = 'MainUI', message = 'mainLayout built...', verbose = False) ## Time of Day self.todGroupBox = QtGui.QGroupBox(self) self.todGroupBox.setTitle('Time of Day:') debug(app = self.app, method = 'MainUI', message = 'self.todGroupBox built...', verbose = False) self.todLayout = QtGui.QHBoxLayout(self.todGroupBox) debug(app = self.app, method = 'MainUI', message = 'self.todLayout built...', verbose = False) ## Now do the checkBoxes self.afternoonLayout = QtGui.QVBoxLayout(self) self.afternoonCBox = QtGui.QRadioButton('Afternoon') self.afternoonCBox.setChecked(True) self.afternoonCBox.setAutoExclusive(True) self.afternoonButton = QtGui.QPushButton('Set Now') self.afternoonButton.released.connect(partial(self.setTOD, self.afternoonCBox, 'afternoon')) self.afternoonLayout.addWidget(self.afternoonCBox) self.afternoonLayout.addWidget(self.afternoonButton) self.dawnLayout = QtGui.QVBoxLayout(self) self.dawnCBox = QtGui.QRadioButton('Dawn') self.dawnCBox.setAutoExclusive(True) self.dawnButton = QtGui.QPushButton('Set Now') self.dawnButton.released.connect(partial(self.setTOD, self.dawnCBox, 'dawn')) self.dawnLayout.addWidget(self.dawnCBox) self.dawnLayout.addWidget(self.dawnButton) self.duskLayout = QtGui.QVBoxLayout(self) self.duskCBox = QtGui.QRadioButton('Dusk') self.duskCBox.setAutoExclusive(True) self.duskButton = QtGui.QPushButton('Set Now') self.duskButton.released.connect(partial(self.setTOD, self.duskCBox, 'dusk')) self.duskLayout.addWidget(self.duskCBox) self.duskLayout.addWidget(self.duskButton) self.middayLayout = QtGui.QVBoxLayout(self) self.middayCBox = QtGui.QRadioButton('Midday') self.middayCBox.setAutoExclusive(True) self.middayButton = QtGui.QPushButton('Set Now') self.middayButton.released.connect(partial(self.setTOD, self.middayCBox, 'midday')) self.middayLayout.addWidget(self.middayCBox) self.middayLayout.addWidget(self.middayButton) self.morningLayout = QtGui.QVBoxLayout(self) self.morningCBox = QtGui.QRadioButton('Morning') self.morningCBox.setAutoExclusive(True) self.morningButton = QtGui.QPushButton('Set Now') self.morningButton.released.connect(partial(self.setTOD, self.morningCBox, 'morning')) self.morningLayout.addWidget(self.morningCBox) self.morningLayout.addWidget(self.morningButton) self.nightLayout = QtGui.QVBoxLayout(self) self.nightCBox = QtGui.QRadioButton('Night') self.nightCBox.setAutoExclusive(True) self.nightButton = QtGui.QPushButton('Set Now') self.nightButton.released.connect(partial(self.setTOD, self.nightCBox, 'night')) self.nightLayout.addWidget(self.nightCBox) self.nightLayout.addWidget(self.nightButton) self.sunriseLayout = QtGui.QVBoxLayout(self) self.sunriseCBox = QtGui.QRadioButton('Sunrise') self.sunriseCBox.setAutoExclusive(True) self.sunriseButton = QtGui.QPushButton('Set Now') self.sunriseButton.released.connect(partial(self.setTOD, self.sunriseCBox, 'sunrise')) self.sunriseLayout.addWidget(self.sunriseCBox) self.sunriseLayout.addWidget(self.sunriseButton) self.sunsetLayout = QtGui.QVBoxLayout(self) self.sunsetCBox = QtGui.QRadioButton('SunSet') self.sunsetCBox.setAutoExclusive(True) self.sunsetButton = QtGui.QPushButton('Set Now') self.sunsetButton.released.connect(partial(self.setTOD, self.sunsetCBox, 'sunset')) self.sunsetLayout.addWidget(self.sunsetCBox) self.sunsetLayout.addWidget(self.sunsetButton) self.todLayout.addLayout(self.dawnLayout) self.splitter01 = BB_Widget_vr() self.todLayout.addWidget(self.splitter01) self.todLayout.addLayout(self.sunriseLayout) self.splitter02 = BB_Widget_vr() self.todLayout.addWidget(self.splitter02) self.todLayout.addLayout(self.morningLayout) self.splitter03 = BB_Widget_vr() self.todLayout.addWidget(self.splitter03) self.todLayout.addLayout(self.middayLayout) self.splitter04 = BB_Widget_vr() self.todLayout.addWidget(self.splitter04) self.todLayout.addLayout(self.afternoonLayout) self.splitter05 = BB_Widget_vr() self.todLayout.addWidget(self.splitter05) self.todLayout.addLayout(self.sunsetLayout) self.splitter06 = BB_Widget_vr() self.todLayout.addWidget(self.splitter06) self.todLayout.addLayout(self.duskLayout) self.splitter07 = BB_Widget_vr() self.todLayout.addWidget(self.splitter07) self.todLayout.addLayout(self.nightLayout) self.fixBBBLightDirectionButton = QtGui.QPushButton('FIX LIGHT WORLD ROTATION! (USE WITH CAUTION)') self.fixBBBLightDirectionButton.released.connect(self.fixLightWorldRotation) self.buildTODButton = QtGui.QPushButton('SETUP NOW...') self.buildTODButton.released.connect(self.doTODLoad) self.redoSmoothAttrAttachButton = QtGui.QPushButton('Rebuild subDiv connections...') self.redoSmoothAttrAttachButton.released.connect(partial(settings.attachMentalRaySubDiv)) self.deleteSetupButton = QtGui.QPushButton('Delete Setup!') self.deleteSetupButton.setStyleSheet("QPushButton {background: dark red}") self.deleteSetupButton.released.connect(self.deleteSetup) debug(app = self.app, method = 'MainUI', message = 'Widgets built...', verbose = False) self.mainLayout.addWidget(self.todGroupBox) self.mainLayout.addWidget(self.fixBBBLightDirectionButton) self.mainLayout.addWidget(self.buildTODButton) self.mainLayout.addWidget(self.redoSmoothAttrAttachButton) self.mainLayout.addWidget(self.deleteSetupButton) self.mainLayout.addStretch(1) ## Set the renderglobals on app load settings._setRenderGlobals() ## Check for the base nodes if they exist turn the buttons on... self.setButtonStates()
def _set_thumbnail(self, value): self._ui.thumbnail.setPixmap(value if value else QtGui.QPixmap()) self._update_ui() self.thumbnail_changed.emit()
def __init__(self, app): """ main UI for DuplicateShotAssets """ QtGui.QWidget.__init__(self) self.app = app self.charMaxChars = 0 self.propMaxChars = 0 ## To get the step context = self.app.context debug(self.app, method='MainUI', message='Context Step: %s' % context.step['name'], verbose=False) self.chars = [] self.props = [] ## Now build the UI self.mainLayout = QtGui.QHBoxLayout(self) debug(self.app, method='MainUI', message='self.mainLayout built...', verbose=False) ############### ## CHARS LAYOUT self.charParent = QtGui.QGroupBox(self) self.charParent.setTitle('CHARS:') #self.charParent.setMinimumWidth(600) self.charParentLayout = QtGui.QVBoxLayout(self.charParent) self.charScrollLayout = QtGui.QScrollArea(self) debug(self.app, method='MainUI', message='self.charScrollLayout built...', verbose=False) self.charGroupBox = QtGui.QGroupBox(self.charScrollLayout) self.charGroupBox.setFlat(True) self.charScrollLayout.setWidget(self.charGroupBox) self.charScrollLayout.setWidgetResizable(True) debug(self.app, method='MainUI', message='self.charGroupBox built...', verbose=False) self.charLayout = QtGui.QVBoxLayout(self.charGroupBox) debug(self.app, method='MainUI', message='self.charLayout built...', verbose=False) ############### ## PROPS LAYOUT self.propParent = QtGui.QGroupBox(self) self.propParent.setTitle('PROPS:') #self.propParent.setMinimumWidth(600) self.propParentLayout = QtGui.QVBoxLayout(self.propParent) self.propScrollLayout = QtGui.QScrollArea(self) debug(self.app, method='MainUI', message='self.propScrollLayout built...', verbose=False) self.propsGroupBox = QtGui.QGroupBox(self.propScrollLayout) self.propsGroupBox.setFlat(True) self.propScrollLayout.setWidget(self.propsGroupBox) self.propScrollLayout.setWidgetResizable(True) debug(self.app, method='MainUI', message='self.propsGroupBox built...', verbose=False) self.propsLayout = QtGui.QVBoxLayout(self.propsGroupBox) debug(self.app, method='MainUI', message='self.propsLayout built...', verbose=False) #################### ## The Button layout self.buttonLayout = QtGui.QVBoxLayout(self) ## The buttons ## The duplicate button self.duplicateButton = QtGui.QPushButton(Icon('plus.png'), 'Duplicate Assets', self) self.duplicateButton.clicked.connect(self._duplicateAssets) ## Add buttons to layout self.buttonLayout.addWidget(self.duplicateButton) self.buttonLayout.addStretch(1) self.charParentLayout.addWidget(self.charScrollLayout) self.propParentLayout.addWidget(self.propScrollLayout) ## Now do the final layout bits self.mainLayout.addWidget(self.charParent) self.mainLayout.addWidget(self.propParent) self.mainLayout.addLayout(self.buttonLayout) debug(self.app, method='MainUI', message='self.mainLayout addWidgets success...', verbose=False) self._popChars() debug(self.app, method='MainUI', message='self._popChars()...', verbose=False) self._popProps() debug(self.app, method='MainUI', message='self._popProps()...', verbose=False) if not self.props: self.propScrollLayout.hide() if not self.chars: self.charScrollLayout.hide() self.charGroupBox.resize(self.charGroupBox.sizeHint()) self.propsGroupBox.resize(self.propsGroupBox.sizeHint()) debug(self.app, method='MainUI', message='self.charMaxChars: %s' % self.charMaxChars, verbose=False) self.charParent.setMinimumWidth(self.charMaxChars + 500) self.propParent.setMinimumWidth(self.propMaxChars + 500) self.resize(self.sizeHint())
def setupUi(self, NoteInputWidget): NoteInputWidget.setObjectName("NoteInputWidget") NoteInputWidget.resize(363, 203) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( NoteInputWidget.sizePolicy().hasHeightForWidth()) NoteInputWidget.setSizePolicy(sizePolicy) self.verticalLayout_5 = QtGui.QVBoxLayout(NoteInputWidget) self.verticalLayout_5.setSpacing(0) self.verticalLayout_5.setContentsMargins(0, 0, 0, 0) self.verticalLayout_5.setObjectName("verticalLayout_5") self.stacked_widget = QtGui.QStackedWidget(NoteInputWidget) self.stacked_widget.setObjectName("stacked_widget") self.note_editor_page = QtGui.QWidget() self.note_editor_page.setObjectName("note_editor_page") self.verticalLayout_2 = QtGui.QVBoxLayout(self.note_editor_page) self.verticalLayout_2.setSpacing(0) self.verticalLayout_2.setContentsMargins(0, 0, 0, 0) self.verticalLayout_2.setObjectName("verticalLayout_2") self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.text_entry = NoteEditor(self.note_editor_page) self.text_entry.setFocusPolicy(QtCore.Qt.ClickFocus) self.text_entry.setObjectName("text_entry") self.horizontalLayout.addWidget(self.text_entry) self.thumbnail = QtGui.QLabel(self.note_editor_page) self.thumbnail.setEnabled(True) self.thumbnail.setMinimumSize(QtCore.QSize(96, 75)) self.thumbnail.setMaximumSize(QtCore.QSize(96, 75)) self.thumbnail.setText("") self.thumbnail.setPixmap( QtGui.QPixmap(":/tk_framework_qtwidgets/rect_512x400.png")) self.thumbnail.setScaledContents(True) self.thumbnail.setAlignment(QtCore.Qt.AlignBottom | QtCore.Qt.AlignHCenter) self.thumbnail.setObjectName("thumbnail") self.horizontalLayout.addWidget(self.thumbnail) self.button_layout_right = QtGui.QVBoxLayout() self.button_layout_right.setSpacing(3) self.button_layout_right.setContentsMargins(5, -1, -1, -1) self.button_layout_right.setObjectName("button_layout_right") self.close = QtGui.QToolButton(self.note_editor_page) icon = QtGui.QIcon() icon.addPixmap( QtGui.QPixmap( ":/tk_framework_qtwidgets.note_input_widget/close.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.close.setIcon(icon) self.close.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly) self.close.setAutoRaise(True) self.close.setObjectName("close") self.button_layout_right.addWidget(self.close) spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.button_layout_right.addItem(spacerItem) self.attach = QtGui.QToolButton(self.note_editor_page) icon1 = QtGui.QIcon() icon1.addPixmap( QtGui.QPixmap( ":/tk_framework_qtwidgets.note_input_widget/paper_clip.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.attach.setIcon(icon1) self.attach.setAutoRaise(True) self.attach.setObjectName("attach") self.button_layout_right.addWidget(self.attach) self.screenshot = QtGui.QToolButton(self.note_editor_page) icon2 = QtGui.QIcon() icon2.addPixmap( QtGui.QPixmap( ":/tk_framework_qtwidgets.note_input_widget/camera_hl.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.screenshot.setIcon(icon2) self.screenshot.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly) self.screenshot.setAutoRaise(True) self.screenshot.setObjectName("screenshot") self.button_layout_right.addWidget(self.screenshot) self.submit = QtGui.QToolButton(self.note_editor_page) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.submit.sizePolicy().hasHeightForWidth()) self.submit.setSizePolicy(sizePolicy) self.submit.setText("") icon3 = QtGui.QIcon() icon3.addPixmap( QtGui.QPixmap( ":/tk_framework_qtwidgets.note_input_widget/tick.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.submit.setIcon(icon3) self.submit.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly) self.submit.setAutoRaise(True) self.submit.setObjectName("submit") self.button_layout_right.addWidget(self.submit) self.horizontalLayout.addLayout(self.button_layout_right) self.verticalLayout_2.addLayout(self.horizontalLayout) self.hint_label = QtGui.QLabel(self.note_editor_page) self.hint_label.setObjectName("hint_label") self.verticalLayout_2.addWidget(self.hint_label) self.stacked_widget.addWidget(self.note_editor_page) self.preview_page = QtGui.QWidget() self.preview_page.setObjectName("preview_page") self.verticalLayout_3 = QtGui.QVBoxLayout(self.preview_page) self.verticalLayout_3.setSpacing(0) self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) self.verticalLayout_3.setObjectName("verticalLayout_3") self.new_note_frame = QtGui.QFrame(self.preview_page) self.new_note_frame.setStyleSheet("") self.new_note_frame.setFrameShape(QtGui.QFrame.StyledPanel) self.new_note_frame.setFrameShadow(QtGui.QFrame.Raised) self.new_note_frame.setObjectName("new_note_frame") self.verticalLayout_4 = QtGui.QVBoxLayout(self.new_note_frame) self.verticalLayout_4.setObjectName("verticalLayout_4") self.new_note_placeholder = QtGui.QLabel(self.new_note_frame) self.new_note_placeholder.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) self.new_note_placeholder.setObjectName("new_note_placeholder") self.verticalLayout_4.addWidget(self.new_note_placeholder) self.verticalLayout_3.addWidget(self.new_note_frame) self.stacked_widget.addWidget(self.preview_page) self.attachments_page = QtGui.QWidget() self.attachments_page.setObjectName("attachments_page") self.horizontalLayout_2 = QtGui.QHBoxLayout(self.attachments_page) self.horizontalLayout_2.setSpacing(0) self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.horizontalLayout_3 = QtGui.QHBoxLayout() self.horizontalLayout_3.setSpacing(3) self.horizontalLayout_3.setContentsMargins(0, -1, -1, -1) self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.attachment_list = QtGui.QWidget(self.attachments_page) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(1) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.attachment_list.sizePolicy().hasHeightForWidth()) self.attachment_list.setSizePolicy(sizePolicy) self.attachment_list.setObjectName("attachment_list") self.attachments_list_layout = QtGui.QVBoxLayout(self.attachment_list) self.attachments_list_layout.setSpacing(0) self.attachments_list_layout.setContentsMargins(0, 0, 0, 0) self.attachments_list_layout.setContentsMargins(0, 0, 0, 0) self.attachments_list_layout.setObjectName("attachments_list_layout") self.attachment_list_tree = QtGui.QTreeWidget(self.attachment_list) self.attachment_list_tree.setSelectionMode( QtGui.QAbstractItemView.ExtendedSelection) self.attachment_list_tree.setRootIsDecorated(False) self.attachment_list_tree.setItemsExpandable(False) self.attachment_list_tree.setHeaderHidden(True) self.attachment_list_tree.setExpandsOnDoubleClick(False) self.attachment_list_tree.setObjectName("attachment_list_tree") self.attachment_list_tree.headerItem().setText(0, "1") self.attachments_list_layout.addWidget(self.attachment_list_tree) self.horizontalLayout_4 = QtGui.QHBoxLayout() self.horizontalLayout_4.setSpacing(3) self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.add_button = QtGui.QToolButton(self.attachment_list) icon4 = QtGui.QIcon() icon4.addPixmap( QtGui.QPixmap( ":/tk_framework_qtwidgets.note_input_widget/plus.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.add_button.setIcon(icon4) self.add_button.setAutoRaise(True) self.add_button.setObjectName("add_button") self.horizontalLayout_4.addWidget(self.add_button) self.remove_button = QtGui.QToolButton(self.attachment_list) icon5 = QtGui.QIcon() icon5.addPixmap( QtGui.QPixmap( ":/tk_framework_qtwidgets.note_input_widget/minus.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.remove_button.setIcon(icon5) self.remove_button.setAutoRaise(True) self.remove_button.setObjectName("remove_button") self.horizontalLayout_4.addWidget(self.remove_button) spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem1) self.attachments_list_layout.addLayout(self.horizontalLayout_4) self.horizontalLayout_3.addWidget(self.attachment_list) self.attachment_buttons = QtGui.QVBoxLayout() self.attachment_buttons.setSpacing(3) self.attachment_buttons.setContentsMargins(5, -1, -1, -1) self.attachment_buttons.setObjectName("attachment_buttons") self.close_attachments = QtGui.QToolButton(self.attachments_page) self.close_attachments.setIcon(icon) self.close_attachments.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly) self.close_attachments.setAutoRaise(True) self.close_attachments.setObjectName("close_attachments") self.attachment_buttons.addWidget(self.close_attachments) spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.attachment_buttons.addItem(spacerItem2) self.add_attachments = QtGui.QToolButton(self.attachments_page) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.add_attachments.sizePolicy().hasHeightForWidth()) self.add_attachments.setSizePolicy(sizePolicy) self.add_attachments.setText("") self.add_attachments.setIcon(icon3) self.add_attachments.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly) self.add_attachments.setAutoRaise(True) self.add_attachments.setObjectName("add_attachments") self.attachment_buttons.addWidget(self.add_attachments) self.horizontalLayout_3.addLayout(self.attachment_buttons) self.horizontalLayout_2.addLayout(self.horizontalLayout_3) self.stacked_widget.addWidget(self.attachments_page) self.verticalLayout_5.addWidget(self.stacked_widget) self.retranslateUi(NoteInputWidget) self.stacked_widget.setCurrentIndex(1) QtCore.QMetaObject.connectSlotsByName(NoteInputWidget)
def process_result(self, result): entity_data = result["associated_entity"] tasks = result["tasks"] can_create_tasks = result["can_create_tasks"] entity_str = "%s %s" % (entity_data.get("type", "Unknown"), entity_data.get("code", "Unknown")) if len(tasks) == 0: msg = "" if can_create_tasks: msg = "No Tasks found!\nClick the 'New Task' button below to create a Task." else: msg = ("No Tasks found!\nYou can create tasks by navigating to '%s' " "inside of Shotgun, selecting the tasks tab and then clicking " "the + button." % entity_str) self.set_message(msg) else: current_task = result.get("current_task") item_to_select = None for d in tasks: i = self.add_item(browser_widget.ListItem) details = [] details.append("<b>Task: %s</b>" % d.get("content", "")) # now try to look up the proper status name status_short_name = d.get("sg_status_list") # get the long name, fall back on short name if not found status_name = self._status_name_lookup.get(status_short_name, status_short_name) details.append("Status: %s" % status_name) names = [ x.get("name", "Unknown") for x in d.get("task_assignees", []) ] names_str = ", ".join(names) details.append("Assigned to: %s" % names_str) i.set_details("<br>".join(details)) i.sg_data = d i.setToolTip("Double click to set context.") # add a grab task action if self._current_user: # not None if d.get("task_assignees"): assigned_user_ids = [ x["id"] for x in d.get("task_assignees") ] else: assigned_user_ids = [] if self._current_user["id"] not in assigned_user_ids: # are are not assigned to this task. add ability to grab it i.grab_action = QtGui.QAction("Add %s as an assignee to this task." % self._current_user["name"], i) i.grab_action.triggered.connect(self.grab_task) i.addAction(i.grab_action) i.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu) # finally look up the thumbnail for the first user assigned to the task task_assignees = d.get("task_assignees", []) if len(task_assignees) > 0: user_id = task_assignees[0]["id"] # is this user id in our users dict? In that case we have their thumb! for u in result["users"]: if u["id"] == user_id: # if they have a thumb, assign! if u.get("image"): i.set_thumbnail(u.get("image")) break if d and current_task and d["id"] == current_task.get("id"): item_to_select = i if item_to_select: self.select(item_to_select)
def run(self, splash, version, **kwargs): """ Run the engine. This method is called from the GUI bootstrap to setup the application and to run the Qt event loop. :param splash: Splash screen widget we can display messages on. :param version: Version of the Shotgun Desktop installer code. :param startup_version: Version of the Desktop Startup code. """ self.app_version = version # Startup version will not be set if we have an old installer invoking # this engine. self.startup_version = kwargs.get("startup_version") if self.uses_legacy_authentication(): self._migrate_credentials() # We need to initialize current login # We know for sure there is a default user, since either the migration was done # or we logged in as an actual user with the new installer. human_user = ShotgunAuthenticator( # We don't want to get the script user, but the human user, so tell the # CoreDefaultsManager manager that we are not interested in the script user. Do not use # the regular shotgun_authentication.DefaultsManager to get this user because it will # not know about proxy information. sgtk.util.CoreDefaultsManager(mask_script_user=True) ).get_default_user() # Cache the user so we can refresh the credentials before launching a background process self._user = human_user # Retrieve the current logged in user information. This will be used when creating # event log entries. self._current_login = self._engine.sgtk.shotgun.find_one( "HumanUser", [["login", "is", human_user.login]], ["id", "login"] ) # Initialize Qt app from tank.platform.qt import QtGui app = QtGui.QApplication.instance() if app is None: app = QtGui.QApplication(sys.argv) # update the app icon icon = QtGui.QIcon(":tk-desktop/default_systray_icon") app.setWindowIcon(icon) splash.set_message("Building UI") # setup the global look and feel self._engine._initialize_dark_look_and_feel() # load custom font QtGui.QFontDatabase.addApplicationFont(":/tk-desktop/fonts/OpenSans-Bold.ttf") QtGui.QFontDatabase.addApplicationFont(":/tk-desktop/fonts/OpenSans-Regular.ttf") QtGui.QFontDatabase.addApplicationFont(":/tk-desktop/fonts/OpenSans-CondLight.ttf") QtGui.QFontDatabase.addApplicationFont(":/tk-desktop/fonts/OpenSans-Light.ttf") # merge in app specific look and feel css_file = os.path.join(self._engine.disk_location, "resources", "desktop_dark.css") f = open(css_file) css = app.styleSheet() + "\n\n" + f.read() f.close() app.setStyleSheet(css) # desktop_window needs to import shotgun_authentication globally. However, doing so # can cause a crash when running Shotgun Desktop installer 1.02 code. We used to # not restart Desktop when upgrading the core, which caused the older version of core # to be kept in memory and the newer core to not be used until the app was reloaded. # # Since pre 0.16 cores didn't have a shotgun_authentication module, we # would have crashed if this had been imported at init time. Note that earlier # in this method we forcefully restarted the application if we noticed # that the core was upgraded without restarting. Which means that if we # end up here, it's now because we're in a good state. from . import desktop_window # initialize System Tray self.desktop_window = desktop_window.DesktopWindow() # make sure we close down our rpc threads app.aboutToQuit.connect(self._engine.destroy_engine) # hide the splash if it exists if splash is not None: splash.hide() # and run the app result = app.exec_() return result
def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(737, 615) self.verticalLayout_7 = QtGui.QVBoxLayout(Dialog) self.verticalLayout_7.setSpacing(0) self.verticalLayout_7.setContentsMargins(0, 0, 0, 0) self.verticalLayout_7.setObjectName("verticalLayout_7") self.main_stack = QtGui.QStackedWidget(Dialog) self.main_stack.setObjectName("main_stack") self.large_drop_area_frame = QtGui.QWidget() self.large_drop_area_frame.setObjectName("large_drop_area_frame") self.verticalLayout_3 = QtGui.QVBoxLayout(self.large_drop_area_frame) self.verticalLayout_3.setObjectName("verticalLayout_3") self.large_drop_area = DropAreaFrame(self.large_drop_area_frame) self.large_drop_area.setFrameShape(QtGui.QFrame.StyledPanel) self.large_drop_area.setFrameShadow(QtGui.QFrame.Raised) self.large_drop_area.setObjectName("large_drop_area") self.gridLayout_2 = QtGui.QGridLayout(self.large_drop_area) self.gridLayout_2.setObjectName("gridLayout_2") spacerItem = QtGui.QSpacerItem(20, 98, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.gridLayout_2.addItem(spacerItem, 0, 1, 1, 1) spacerItem1 = QtGui.QSpacerItem(166, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.gridLayout_2.addItem(spacerItem1, 1, 0, 1, 1) self.horizontalLayout_6 = QtGui.QHBoxLayout() self.horizontalLayout_6.setObjectName("horizontalLayout_6") self.label_5 = QtGui.QLabel(self.large_drop_area) self.label_5.setMinimumSize(QtCore.QSize(150, 150)) self.label_5.setMaximumSize(QtCore.QSize(150, 150)) self.label_5.setText("") self.label_5.setPixmap( QtGui.QPixmap(":/tk_multi_publish2/icon_256.png")) self.label_5.setScaledContents(True) self.label_5.setAlignment(QtCore.Qt.AlignCenter) self.label_5.setObjectName("label_5") self.horizontalLayout_6.addWidget(self.label_5) self.verticalLayout = QtGui.QVBoxLayout() self.verticalLayout.setSpacing(8) self.verticalLayout.setObjectName("verticalLayout") spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem2) self.large_drop_area_label = QtGui.QLabel(self.large_drop_area) self.large_drop_area_label.setStyleSheet("QLabel {\n" " font-size: 24px;\n" "}") self.large_drop_area_label.setAlignment(QtCore.Qt.AlignCenter) self.large_drop_area_label.setObjectName("large_drop_area_label") self.verticalLayout.addWidget(self.large_drop_area_label) self.label = QtGui.QLabel(self.large_drop_area) self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setObjectName("label") self.verticalLayout.addWidget(self.label) self.horizontalLayout_3 = QtGui.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_3.addItem(spacerItem3) self.drop_area_browse = QtGui.QPushButton(self.large_drop_area) self.drop_area_browse.setMinimumSize(QtCore.QSize(0, 0)) self.drop_area_browse.setFocusPolicy(QtCore.Qt.NoFocus) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/browse_white.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.drop_area_browse.setIcon(icon) self.drop_area_browse.setIconSize(QtCore.QSize(32, 32)) self.drop_area_browse.setObjectName("drop_area_browse") self.horizontalLayout_3.addWidget(self.drop_area_browse) spacerItem4 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_3.addItem(spacerItem4) self.verticalLayout.addLayout(self.horizontalLayout_3) spacerItem5 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem5) self.verticalLayout.setStretch(0, 3) self.verticalLayout.setStretch(2, 1) self.verticalLayout.setStretch(4, 3) self.horizontalLayout_6.addLayout(self.verticalLayout) self.gridLayout_2.addLayout(self.horizontalLayout_6, 1, 1, 1, 1) spacerItem6 = QtGui.QSpacerItem(179, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.gridLayout_2.addItem(spacerItem6, 1, 2, 1, 1) spacerItem7 = QtGui.QSpacerItem(20, 213, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.gridLayout_2.addItem(spacerItem7, 2, 1, 1, 1) self.verticalLayout_3.addWidget(self.large_drop_area) self.main_stack.addWidget(self.large_drop_area_frame) self.main_ui_frame = QtGui.QWidget() self.main_ui_frame.setObjectName("main_ui_frame") self.verticalLayout_4 = QtGui.QVBoxLayout(self.main_ui_frame) self.verticalLayout_4.setSpacing(2) self.verticalLayout_4.setObjectName("verticalLayout_4") self.main_frame = QtGui.QWidget(self.main_ui_frame) self.main_frame.setObjectName("main_frame") self.verticalLayout_9 = QtGui.QVBoxLayout(self.main_frame) self.verticalLayout_9.setSpacing(0) self.verticalLayout_9.setContentsMargins(0, 0, 0, 0) self.verticalLayout_9.setContentsMargins(0, 0, 0, 0) self.verticalLayout_9.setObjectName("verticalLayout_9") self.splitter = QtGui.QSplitter(self.main_frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.splitter.sizePolicy().hasHeightForWidth()) self.splitter.setSizePolicy(sizePolicy) self.splitter.setOrientation(QtCore.Qt.Horizontal) self.splitter.setObjectName("splitter") self.frame = DropAreaFrame(self.splitter) self.frame.setFrameShape(QtGui.QFrame.StyledPanel) self.frame.setFrameShadow(QtGui.QFrame.Raised) self.frame.setObjectName("frame") self.verticalLayout_2 = QtGui.QVBoxLayout(self.frame) self.verticalLayout_2.setSpacing(0) self.verticalLayout_2.setContentsMargins(2, 2, 2, 2) self.verticalLayout_2.setObjectName("verticalLayout_2") self.items_tree = PublishTreeWidget(self.frame) self.items_tree.setAcceptDrops(True) self.items_tree.setDragEnabled(True) self.items_tree.setDragDropMode(QtGui.QAbstractItemView.InternalMove) self.items_tree.setSelectionMode( QtGui.QAbstractItemView.ExtendedSelection) self.items_tree.setObjectName("items_tree") self.items_tree.headerItem().setText(0, "1") self.items_tree.header().setVisible(False) self.verticalLayout_2.addWidget(self.items_tree) self.text_below_item_tree = QtGui.QLabel(self.frame) self.text_below_item_tree.setAlignment(QtCore.Qt.AlignCenter) self.text_below_item_tree.setObjectName("text_below_item_tree") self.verticalLayout_2.addWidget(self.text_below_item_tree) self.details_frame = QtGui.QFrame(self.splitter) self.details_frame.setObjectName("details_frame") self.verticalLayout_5 = QtGui.QVBoxLayout(self.details_frame) self.verticalLayout_5.setSpacing(0) self.verticalLayout_5.setContentsMargins(0, 0, 0, 0) self.verticalLayout_5.setObjectName("verticalLayout_5") self.details_stack = QtGui.QStackedWidget(self.details_frame) self.details_stack.setObjectName("details_stack") self.details_item = QtGui.QWidget() self.details_item.setObjectName("details_item") self.verticalLayout_6 = QtGui.QVBoxLayout(self.details_item) self.verticalLayout_6.setObjectName("verticalLayout_6") self.horizontalLayout_2 = QtGui.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.item_icon = QtGui.QLabel(self.details_item) self.item_icon.setMinimumSize(QtCore.QSize(60, 60)) self.item_icon.setMaximumSize(QtCore.QSize(60, 60)) self.item_icon.setText("") self.item_icon.setScaledContents(True) self.item_icon.setAlignment(QtCore.Qt.AlignHCenter | QtCore.Qt.AlignTop) self.item_icon.setObjectName("item_icon") self.horizontalLayout_2.addWidget(self.item_icon) self.verticalLayout_12 = QtGui.QVBoxLayout() self.verticalLayout_12.setSpacing(0) self.verticalLayout_12.setObjectName("verticalLayout_12") self.item_name = ElidedLabel(self.details_item) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.item_name.sizePolicy().hasHeightForWidth()) self.item_name.setSizePolicy(sizePolicy) self.item_name.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter) self.item_name.setObjectName("item_name") self.verticalLayout_12.addWidget(self.item_name) self.item_type = QtGui.QLabel(self.details_item) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.item_type.sizePolicy().hasHeightForWidth()) self.item_type.setSizePolicy(sizePolicy) self.item_type.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter) self.item_type.setObjectName("item_type") self.verticalLayout_12.addWidget(self.item_type) self.verticalLayout_12.setStretch(0, 1) self.verticalLayout_12.setStretch(1, 2) self.horizontalLayout_2.addLayout(self.verticalLayout_12) self.horizontalLayout_2.setStretch(1, 10) self.verticalLayout_6.addLayout(self.horizontalLayout_2) self.item_divider_1 = QtGui.QFrame(self.details_item) self.item_divider_1.setFrameShape(QtGui.QFrame.HLine) self.item_divider_1.setFrameShadow(QtGui.QFrame.Sunken) self.item_divider_1.setObjectName("item_divider_1") self.verticalLayout_6.addWidget(self.item_divider_1) self.context_widget = ContextWidget(self.details_item) self.context_widget.setObjectName("context_widget") self.verticalLayout_6.addWidget(self.context_widget) self.gridLayout_3 = QtGui.QGridLayout() self.gridLayout_3.setObjectName("gridLayout_3") self.item_description_label = QtGui.QLabel(self.details_item) self.item_description_label.setObjectName("item_description_label") self.gridLayout_3.addWidget(self.item_description_label, 0, 1, 1, 1) self.item_thumbnail_label = QtGui.QLabel(self.details_item) self.item_thumbnail_label.setObjectName("item_thumbnail_label") self.gridLayout_3.addWidget(self.item_thumbnail_label, 0, 0, 1, 1) self.item_comments = QtGui.QPlainTextEdit(self.details_item) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.item_comments.sizePolicy().hasHeightForWidth()) self.item_comments.setSizePolicy(sizePolicy) self.item_comments.setMinimumSize(QtCore.QSize(0, 90)) self.item_comments.setMaximumSize(QtCore.QSize(16777215, 90)) self.item_comments.setObjectName("item_comments") self.gridLayout_3.addWidget(self.item_comments, 1, 1, 1, 1) self.item_thumbnail = Thumbnail(self.details_item) self.item_thumbnail.setMinimumSize(QtCore.QSize(160, 90)) self.item_thumbnail.setMaximumSize(QtCore.QSize(160, 90)) self.item_thumbnail.setText("") self.item_thumbnail.setScaledContents(False) self.item_thumbnail.setAlignment(QtCore.Qt.AlignCenter) self.item_thumbnail.setObjectName("item_thumbnail") self.gridLayout_3.addWidget(self.item_thumbnail, 1, 0, 1, 1) self.verticalLayout_6.addLayout(self.gridLayout_3) self.item_summary_label = QtGui.QLabel(self.details_item) self.item_summary_label.setAlignment(QtCore.Qt.AlignBottom | QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft) self.item_summary_label.setObjectName("item_summary_label") self.verticalLayout_6.addWidget(self.item_summary_label) self.scrollArea = QtGui.QScrollArea(self.details_item) self.scrollArea.setWidgetResizable(True) self.scrollArea.setObjectName("scrollArea") self.scrollAreaWidgetContents = QtGui.QWidget() self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 420, 100)) self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents") self.verticalLayout_10 = QtGui.QVBoxLayout( self.scrollAreaWidgetContents) self.verticalLayout_10.setSpacing(0) self.verticalLayout_10.setContentsMargins(0, 0, 0, 0) self.verticalLayout_10.setObjectName("verticalLayout_10") self.item_summary = QtGui.QLabel(self.scrollAreaWidgetContents) self.item_summary.setText("") self.item_summary.setWordWrap(True) self.item_summary.setObjectName("item_summary") self.verticalLayout_10.addWidget(self.item_summary) self.expander_label = QtGui.QLabel(self.scrollAreaWidgetContents) self.expander_label.setText("") self.expander_label.setObjectName("expander_label") self.verticalLayout_10.addWidget(self.expander_label) self.verticalLayout_10.setStretch(1, 1) self.scrollArea.setWidget(self.scrollAreaWidgetContents) self.verticalLayout_6.addWidget(self.scrollArea) self.item_settings_label = QtGui.QLabel(self.details_item) self.item_settings_label.setAlignment(QtCore.Qt.AlignBottom | QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft) self.item_settings_label.setObjectName("item_settings_label") self.verticalLayout_6.addWidget(self.item_settings_label) self.item_settings = SettingsWidget(self.details_item) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.item_settings.sizePolicy().hasHeightForWidth()) self.item_settings.setSizePolicy(sizePolicy) self.item_settings.setObjectName("item_settings") self.verticalLayout_6.addWidget(self.item_settings) self.verticalLayout_6.setStretch(0, 1) self.verticalLayout_6.setStretch(1, 1) self.verticalLayout_6.setStretch(2, 1) self.verticalLayout_6.setStretch(3, 1) self.verticalLayout_6.setStretch(4, 1) self.verticalLayout_6.setStretch(5, 5) self.verticalLayout_6.setStretch(6, 1) self.verticalLayout_6.setStretch(7, 5) self.details_stack.addWidget(self.details_item) self.details_task = QtGui.QWidget() self.details_task.setObjectName("details_task") self.verticalLayout_11 = QtGui.QVBoxLayout(self.details_task) self.verticalLayout_11.setObjectName("verticalLayout_11") self.horizontalLayout_4 = QtGui.QHBoxLayout() self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.task_icon = QtGui.QLabel(self.details_task) self.task_icon.setMinimumSize(QtCore.QSize(60, 60)) self.task_icon.setMaximumSize(QtCore.QSize(60, 60)) self.task_icon.setText("") self.task_icon.setScaledContents(True) self.task_icon.setObjectName("task_icon") self.horizontalLayout_4.addWidget(self.task_icon) self.task_name = QtGui.QLabel(self.details_task) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Ignored, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.task_name.sizePolicy().hasHeightForWidth()) self.task_name.setSizePolicy(sizePolicy) self.task_name.setObjectName("task_name") self.horizontalLayout_4.addWidget(self.task_name) self.verticalLayout_11.addLayout(self.horizontalLayout_4) self.scrollArea_2 = QtGui.QScrollArea(self.details_task) self.scrollArea_2.setWidgetResizable(True) self.scrollArea_2.setObjectName("scrollArea_2") self.scrollAreaWidgetContents_2 = QtGui.QWidget() self.scrollAreaWidgetContents_2.setGeometry( QtCore.QRect(0, 0, 420, 202)) self.scrollAreaWidgetContents_2.setObjectName( "scrollAreaWidgetContents_2") self.verticalLayout_13 = QtGui.QVBoxLayout( self.scrollAreaWidgetContents_2) self.verticalLayout_13.setSpacing(0) self.verticalLayout_13.setContentsMargins(0, 0, 0, 0) self.verticalLayout_13.setObjectName("verticalLayout_13") self.task_description = QtGui.QLabel(self.scrollAreaWidgetContents_2) self.task_description.setText("") self.task_description.setWordWrap(True) self.task_description.setOpenExternalLinks(True) self.task_description.setObjectName("task_description") self.verticalLayout_13.addWidget(self.task_description) self.expander_label_2 = QtGui.QLabel(self.scrollAreaWidgetContents_2) self.expander_label_2.setText("") self.expander_label_2.setObjectName("expander_label_2") self.verticalLayout_13.addWidget(self.expander_label_2) self.verticalLayout_13.setStretch(1, 1) self.scrollArea_2.setWidget(self.scrollAreaWidgetContents_2) self.verticalLayout_11.addWidget(self.scrollArea_2) self.task_settings_label = QtGui.QLabel(self.details_task) self.task_settings_label.setObjectName("task_settings_label") self.verticalLayout_11.addWidget(self.task_settings_label) self.task_settings = SettingsWidget(self.details_task) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.task_settings.sizePolicy().hasHeightForWidth()) self.task_settings.setSizePolicy(sizePolicy) self.task_settings.setObjectName("task_settings") self.verticalLayout_11.addWidget(self.task_settings) self.details_stack.addWidget(self.details_task) self.details_please_select = QtGui.QWidget() self.details_please_select.setObjectName("details_please_select") self.verticalLayout_8 = QtGui.QVBoxLayout(self.details_please_select) self.verticalLayout_8.setObjectName("verticalLayout_8") self.please_select_an_item = QtGui.QLabel(self.details_please_select) self.please_select_an_item.setAlignment(QtCore.Qt.AlignCenter) self.please_select_an_item.setObjectName("please_select_an_item") self.verticalLayout_8.addWidget(self.please_select_an_item) self.details_stack.addWidget(self.details_please_select) self.verticalLayout_5.addWidget(self.details_stack) self.verticalLayout_9.addWidget(self.splitter) self.verticalLayout_4.addWidget(self.main_frame) self.progress_bar = QtGui.QProgressBar(self.main_ui_frame) self.progress_bar.setMaximumSize(QtCore.QSize(16777215, 10)) self.progress_bar.setProperty("value", 0) self.progress_bar.setTextVisible(False) self.progress_bar.setObjectName("progress_bar") self.verticalLayout_4.addWidget(self.progress_bar) self.bottom_frame = QtGui.QFrame(self.main_ui_frame) self.bottom_frame.setMaximumSize(QtCore.QSize(16777215, 50)) self.bottom_frame.setFrameShape(QtGui.QFrame.StyledPanel) self.bottom_frame.setFrameShadow(QtGui.QFrame.Raised) self.bottom_frame.setObjectName("bottom_frame") self.horizontalLayout = QtGui.QHBoxLayout(self.bottom_frame) self.horizontalLayout.setSpacing(2) self.horizontalLayout.setContentsMargins(2, 0, 2, 2) self.horizontalLayout.setObjectName("horizontalLayout") self.browse = QtGui.QToolButton(self.bottom_frame) self.browse.setMaximumSize(QtCore.QSize(32, 32)) icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/browse.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.browse.setIcon(icon1) self.browse.setIconSize(QtCore.QSize(32, 32)) self.browse.setObjectName("browse") self.horizontalLayout.addWidget(self.browse) self.refresh = QtGui.QToolButton(self.bottom_frame) self.refresh.setMaximumSize(QtCore.QSize(32, 32)) icon2 = QtGui.QIcon() icon2.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/refresh.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.refresh.setIcon(icon2) self.refresh.setIconSize(QtCore.QSize(32, 32)) self.refresh.setObjectName("refresh") self.horizontalLayout.addWidget(self.refresh) self.delete_items = QtGui.QToolButton(self.bottom_frame) self.delete_items.setMaximumSize(QtCore.QSize(32, 32)) icon3 = QtGui.QIcon() icon3.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/trash.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.delete_items.setIcon(icon3) self.delete_items.setIconSize(QtCore.QSize(32, 32)) self.delete_items.setObjectName("delete_items") self.horizontalLayout.addWidget(self.delete_items) self.expand_all = QtGui.QToolButton(self.bottom_frame) self.expand_all.setMaximumSize(QtCore.QSize(32, 32)) icon4 = QtGui.QIcon() icon4.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/expand.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.expand_all.setIcon(icon4) self.expand_all.setIconSize(QtCore.QSize(32, 32)) self.expand_all.setObjectName("expand_all") self.horizontalLayout.addWidget(self.expand_all) self.collapse_all = QtGui.QToolButton(self.bottom_frame) self.collapse_all.setMaximumSize(QtCore.QSize(32, 32)) icon5 = QtGui.QIcon() icon5.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/contract.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.collapse_all.setIcon(icon5) self.collapse_all.setIconSize(QtCore.QSize(32, 32)) self.collapse_all.setObjectName("collapse_all") self.horizontalLayout.addWidget(self.collapse_all) self.help = QtGui.QToolButton(self.bottom_frame) self.help.setMinimumSize(QtCore.QSize(32, 32)) self.help.setMaximumSize(QtCore.QSize(32, 32)) icon6 = QtGui.QIcon() icon6.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/help.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.help.setIcon(icon6) self.help.setIconSize(QtCore.QSize(32, 32)) self.help.setObjectName("help") self.horizontalLayout.addWidget(self.help) spacerItem8 = QtGui.QSpacerItem(10, 10, QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem8) self.progress_status_icon = QtGui.QLabel(self.bottom_frame) self.progress_status_icon.setMinimumSize(QtCore.QSize(20, 20)) self.progress_status_icon.setMaximumSize(QtCore.QSize(20, 20)) self.progress_status_icon.setText("") self.progress_status_icon.setPixmap( QtGui.QPixmap(":/tk_multi_publish2/status_success.png")) self.progress_status_icon.setScaledContents(True) self.progress_status_icon.setObjectName("progress_status_icon") self.horizontalLayout.addWidget(self.progress_status_icon) self.progress_message = ProgressStatusLabel(self.bottom_frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.progress_message.sizePolicy().hasHeightForWidth()) self.progress_message.setSizePolicy(sizePolicy) self.progress_message.setObjectName("progress_message") self.horizontalLayout.addWidget(self.progress_message) self.stop_processing = QtGui.QToolButton(self.bottom_frame) icon7 = QtGui.QIcon() icon7.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/cross.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.stop_processing.setIcon(icon7) self.stop_processing.setIconSize(QtCore.QSize(20, 20)) self.stop_processing.setObjectName("stop_processing") self.horizontalLayout.addWidget(self.stop_processing) self.validate = QtGui.QPushButton(self.bottom_frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.validate.sizePolicy().hasHeightForWidth()) self.validate.setSizePolicy(sizePolicy) self.validate.setObjectName("validate") self.horizontalLayout.addWidget(self.validate) self.publish = QtGui.QPushButton(self.bottom_frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.publish.sizePolicy().hasHeightForWidth()) self.publish.setSizePolicy(sizePolicy) self.publish.setObjectName("publish") self.horizontalLayout.addWidget(self.publish) self.close = QtGui.QPushButton(self.bottom_frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.close.sizePolicy().hasHeightForWidth()) self.close.setSizePolicy(sizePolicy) self.close.setObjectName("close") self.horizontalLayout.addWidget(self.close) self.verticalLayout_4.addWidget(self.bottom_frame) self.main_stack.addWidget(self.main_ui_frame) self.verticalLayout_7.addWidget(self.main_stack) self.retranslateUi(Dialog) self.main_stack.setCurrentIndex(1) self.details_stack.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(Dialog) Dialog.setTabOrder(self.item_comments, self.validate) Dialog.setTabOrder(self.validate, self.publish) Dialog.setTabOrder(self.publish, self.items_tree) Dialog.setTabOrder(self.items_tree, self.refresh) Dialog.setTabOrder(self.refresh, self.delete_items) Dialog.setTabOrder(self.delete_items, self.expand_all) Dialog.setTabOrder(self.expand_all, self.collapse_all) Dialog.setTabOrder(self.collapse_all, self.help) Dialog.setTabOrder(self.help, self.close) Dialog.setTabOrder(self.close, self.stop_processing) Dialog.setTabOrder(self.stop_processing, self.scrollArea) Dialog.setTabOrder(self.scrollArea, self.scrollArea_2)
def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(836, 487) self.horizontalLayout = QtGui.QHBoxLayout(Dialog) self.horizontalLayout.setObjectName("horizontalLayout") self.context_overview_tab_widget = QtGui.QTabWidget(Dialog) self.context_overview_tab_widget.setTabPosition(QtGui.QTabWidget.South) self.context_overview_tab_widget.setObjectName( "context_overview_tab_widget") self.tab = QtGui.QWidget() self.tab.setObjectName("tab") self.verticalLayout_4 = QtGui.QVBoxLayout(self.tab) self.verticalLayout_4.setObjectName("verticalLayout_4") self.context_browser = ContextBrowserWidget(self.tab) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.context_browser.sizePolicy().hasHeightForWidth()) self.context_browser.setSizePolicy(sizePolicy) self.context_browser.setMinimumSize(QtCore.QSize(380, 0)) self.context_browser.setObjectName("context_browser") self.verticalLayout_4.addWidget(self.context_browser) self.label_4 = QtGui.QLabel(self.tab) self.label_4.setWordWrap(True) self.label_4.setObjectName("label_4") self.verticalLayout_4.addWidget(self.label_4) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/res/icon_task.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.context_overview_tab_widget.addTab(self.tab, icon, "") self.tab_2 = QtGui.QWidget() self.tab_2.setObjectName("tab_2") self.verticalLayout_2 = QtGui.QVBoxLayout(self.tab_2) self.verticalLayout_2.setObjectName("verticalLayout_2") self.app_browser = AppBrowserWidget(self.tab_2) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.app_browser.sizePolicy().hasHeightForWidth()) self.app_browser.setSizePolicy(sizePolicy) self.app_browser.setMinimumSize(QtCore.QSize(380, 0)) self.app_browser.setObjectName("app_browser") self.verticalLayout_2.addWidget(self.app_browser) self.label_2 = QtGui.QLabel(self.tab_2) self.label_2.setWordWrap(True) self.label_2.setObjectName("label_2") self.verticalLayout_2.addWidget(self.label_2) icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap(":/res/logo_color_16.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.context_overview_tab_widget.addTab(self.tab_2, icon1, "") self.tab_3 = QtGui.QWidget() self.tab_3.setObjectName("tab_3") self.verticalLayout_3 = QtGui.QVBoxLayout(self.tab_3) self.verticalLayout_3.setObjectName("verticalLayout_3") self.environment_browser = EnvironmentBrowserWidget(self.tab_3) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.environment_browser.sizePolicy().hasHeightForWidth()) self.environment_browser.setSizePolicy(sizePolicy) self.environment_browser.setMinimumSize(QtCore.QSize(380, 0)) self.environment_browser.setObjectName("environment_browser") self.verticalLayout_3.addWidget(self.environment_browser) self.label_3 = QtGui.QLabel(self.tab_3) self.label_3.setWordWrap(True) self.label_3.setObjectName("label_3") self.verticalLayout_3.addWidget(self.label_3) icon2 = QtGui.QIcon() icon2.addPixmap(QtGui.QPixmap(":/res/cog_white.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.context_overview_tab_widget.addTab(self.tab_3, icon2, "") self.horizontalLayout.addWidget(self.context_overview_tab_widget) self.verticalLayout = QtGui.QVBoxLayout() self.verticalLayout.setSpacing(5) self.verticalLayout.setObjectName("verticalLayout") self.label = QtGui.QLabel(Dialog) self.label.setText("") self.label.setPixmap(QtGui.QPixmap(":/res/tank_logo.png")) self.label.setObjectName("label") self.verticalLayout.addWidget(self.label) self.jump_to_fs = QtGui.QPushButton(Dialog) self.jump_to_fs.setObjectName("jump_to_fs") self.verticalLayout.addWidget(self.jump_to_fs) self.reload_apps = QtGui.QPushButton(Dialog) self.reload_apps.setObjectName("reload_apps") self.verticalLayout.addWidget(self.reload_apps) self.support = QtGui.QPushButton(Dialog) self.support.setObjectName("support") self.verticalLayout.addWidget(self.support) spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout.addItem(spacerItem) self.close = QtGui.QPushButton(Dialog) self.close.setObjectName("close") self.verticalLayout.addWidget(self.close) self.horizontalLayout.addLayout(self.verticalLayout) self.retranslateUi(Dialog) self.context_overview_tab_widget.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(Dialog)
def paintEvent(self, event): """ Render the UI. """ if self._mode == self.MODE_OFF: return painter = QtGui.QPainter() painter.begin(self) try: # set up semi transparent backdrop painter.setRenderHint(QtGui.QPainter.Antialiasing) overlay_color = QtGui.QColor("#1B1B1B") painter.setBrush(QtGui.QBrush(overlay_color)) painter.setPen(QtGui.QPen(overlay_color)) painter.drawRect(0, 0, painter.device().width(), painter.device().height()) # now draw different things depending on mode if self._mode == self.MODE_SPIN: # show the spinner painter.translate((painter.device().width() / 2) - 40, (painter.device().height() / 2) - 40) pen = QtGui.QPen(QtGui.QColor("#424141")) pen.setWidth(3) painter.setPen(pen) painter.drawPixmap(QtCore.QPoint(8, 24), self._sg_icon) r = QtCore.QRectF(0.0, 0.0, 80.0, 80.0) start_angle = (0 + self._spin_angle) * 4 * 16 span_angle = 340 * 16 painter.drawArc(r, start_angle, span_angle) elif self._mode == self.MODE_INFO_TEXT: # show text in the middle pen = QtGui.QPen(QtGui.QColor("#888888")) painter.setPen(pen) text_rect = QtCore.QRect(0, 0, painter.device().width(), painter.device().height()) text_flags = QtCore.Qt.AlignCenter | QtCore.Qt.AlignVCenter | QtCore.Qt.TextWordWrap painter.drawText(text_rect, text_flags, self._message) elif self._mode == self.MODE_ERROR: # show error text in the center pen = QtGui.QPen(QtGui.QColor("#C8534A")) painter.setPen(pen) text_rect = QtCore.QRect(0, 0, painter.device().width(), painter.device().height()) text_flags = QtCore.Qt.AlignCenter | QtCore.Qt.AlignVCenter | QtCore.Qt.TextWordWrap painter.drawText(text_rect, text_flags, self._message) elif self._mode == self.MODE_INFO_PIXMAP: # draw image painter.translate((painter.device().width() / 2) - (self._message_pixmap.width() / 2), (painter.device().height() / 2) - (self._message_pixmap.height() / 2)) painter.drawPixmap(QtCore.QPoint(0, 0), self._message_pixmap) finally: painter.end()
def __init__(self, app): """ """ QtGui.QWidget.__init__(self) self.app = app debug(self.app, method='MainUI.__init__', message='Running app...', verbose=False) self.context = self.app.context debug(self.app, method='MainUI.__init__', message='Context Step: %s' % self.context.step['name'], verbose=False) if self.context.step['name'] != 'FX': tank.TankError("Cannot load, not a valid FX step.") else: debug(app=self.app, method='MainUI.__init__', message='Valid FX step...', verbose=False) ### PROCESS ALL THE SCENE STUFF ## Load the API self.tk = sgtk.sgtk_from_path("T:/software/bubblebathbay") debug(app=self.app, method='MainUI.__init__', message='tk: %s' % self.tk, verbose=False) ## Working scene path scene_path = cmds.file(query=True, sn=True) debug(app=self.app, method='MainUI.__init__', message='scene_path: %s' % scene_path, verbose=False) if not scene_path: cmds.warning("Not a valid scene file...") else: ## Build an entity type to get some values from. self.entity = self.context.entity ## returns {'type': 'Shot', 'name': 'ep100_sh010', 'id': 1166} debug(app=self.app, method='MainUI.__init__', message='self.entity: %s' % self.entity, verbose=False) ## Filter for the matching ID for the shot sg_filters = [["id", "is", self.entity["id"]]] debug(app=self.app, method='MainUI.__init__', message='sg_filters: %s' % sg_filters, verbose=False) ## Build an entity type to get some values from. sg_entity_type = self.entity["type"] ## returns Shot debug(app=self.app, method='MainUI.__init__', message='sg_entity_type: %s' % sg_entity_type, verbose=False) ## Get template path ## primary_publish_template: maya_shot_publish ## maya_shot_publish = '@shot_root/publish/maya/{name}.v{version}.mb' self.templateFile = self.tk.templates[self.app.get_setting( 'primary_publish_template' )] ## returns <Sgtk TemplatePath maya_shot_publish: episodes/{Sequence}/{Shot}/{Step}/publish/maya/{name}.v{version}.mb> debug(app=self.app, method='MainUI.__init__', message='template_path: %s' % self.templateFile, verbose=False) ## Shot name self.shotNum = self.entity["name"] debug(app=self.app, method='MainUI.__init__', message='shotName: %s' % self.shotNum, verbose=False) ## Shot ID self.id = self.entity["id"] debug(app=self.app, method='MainUI.__init__', message='shotId: %s' % self.id, verbose=False) ## Published animation version files getAnimVersionFolders = self.tk.paths_from_template( self.templateFile, { 'Step': 'Anm', 'id': self.id, 'Shot': self.shotNum } ) # returns ['I:\\bubblebathbay\\episodes\\ep101\\ep101_sh019\\Anm\\publish\\maya\\ep101sh019.v003.mb', 'I:\\bubblebathbay\\episodes\\ep101\\ep101_sh019\\Anm\\publish\\maya\\ep101sh019.v001.mb', 'I:\\bubblebathbay\\episodes\\ep101\\ep101_sh019\\Anm\\publish\\maya\\ep101sh019.v002.mb'] if getAnimVersionFolders: debug(app=self.app, method='MainUI.__init__', message='latestPublishedAnimVerFile: %s' % max(getAnimVersionFolders), verbose=False) ####################################### ################### UI LOAD / BUILD NOW ####################################### ## Now build the UI self.mainLayout = QtGui.QVBoxLayout(self) ## Setup the layout and buttons self.fetchingGroupBox = QtGui.QGroupBox(self) self.fetchingGroupBox.setTitle(self.shotNum) self.buttonLayout = QtGui.QHBoxLayout(self.fetchingGroupBox) self.versionCheckerButton = QtGui.QPushButton( 'WORK FILE ----------------------------------- %s | %s ----------------------------------- PUBLISHED FILE' % (self._getSceneVersion(), self._getPublishedLatestVersion())) self.versionCheckerButton.clicked.connect( self._compareAnimVersion) self._compareAnimVersion() ## Add the buttons to their layout widget self.buttonLayout.addWidget(self.versionCheckerButton) self.mainLayout.addWidget(self.fetchingGroupBox) self.mainLayout.addStretch(1) self.resize(300, 20)
def setupUi(self, ItemWidget): ItemWidget.setObjectName("ItemWidget") ItemWidget.resize(290, 45) ItemWidget.setMinimumSize(QtCore.QSize(0, 45)) self.verticalLayout = QtGui.QVBoxLayout(ItemWidget) self.verticalLayout.setSpacing(0) self.verticalLayout.setContentsMargins(2, 2, 2, 2) self.verticalLayout.setObjectName("verticalLayout") self.frame = QtGui.QFrame(ItemWidget) self.frame.setFrameShape(QtGui.QFrame.StyledPanel) self.frame.setFrameShadow(QtGui.QFrame.Raised) self.frame.setObjectName("frame") self.horizontalLayout = QtGui.QHBoxLayout(self.frame) self.horizontalLayout.setSpacing(8) self.horizontalLayout.setContentsMargins(4, 2, 2, 2) self.horizontalLayout.setObjectName("horizontalLayout") self.expand_placeholder = QtGui.QWidget(self.frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.expand_placeholder.sizePolicy().hasHeightForWidth()) self.expand_placeholder.setSizePolicy(sizePolicy) self.expand_placeholder.setMinimumSize(QtCore.QSize(16, 16)) self.expand_placeholder.setMaximumSize(QtCore.QSize(16, 16)) self.expand_placeholder.setObjectName("expand_placeholder") self.horizontalLayout.addWidget(self.expand_placeholder) self.expand_indicator = QtGui.QToolButton(self.frame) self.expand_indicator.setMinimumSize(QtCore.QSize(16, 16)) self.expand_indicator.setMaximumSize(QtCore.QSize(16, 16)) self.expand_indicator.setText("") icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/tk_multi_publish2/down_arrow.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.expand_indicator.setIcon(icon) self.expand_indicator.setObjectName("expand_indicator") self.horizontalLayout.addWidget(self.expand_indicator) self.icon = QtGui.QLabel(self.frame) self.icon.setMinimumSize(QtCore.QSize(32, 32)) self.icon.setMaximumSize(QtCore.QSize(30, 30)) self.icon.setText("") self.icon.setScaledContents(True) self.icon.setObjectName("icon") self.horizontalLayout.addWidget(self.icon) self.header = QtGui.QLabel(self.frame) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.header.sizePolicy().hasHeightForWidth()) self.header.setSizePolicy(sizePolicy) self.header.setTextInteractionFlags(QtCore.Qt.NoTextInteraction) self.header.setObjectName("header") self.horizontalLayout.addWidget(self.header) self.handle_stack = QtGui.QStackedWidget(self.frame) self.handle_stack.setMinimumSize(QtCore.QSize(22, 22)) self.handle_stack.setMaximumSize(QtCore.QSize(22, 22)) self.handle_stack.setObjectName("handle_stack") self.drag = QtGui.QWidget() self.drag.setObjectName("drag") self.horizontalLayout_2 = QtGui.QHBoxLayout(self.drag) self.horizontalLayout_2.setSpacing(0) self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.drag_handle = QtGui.QLabel(self.drag) self.drag_handle.setMinimumSize(QtCore.QSize(16, 16)) self.drag_handle.setMaximumSize(QtCore.QSize(16, 16)) self.drag_handle.setCursor(QtCore.Qt.OpenHandCursor) self.drag_handle.setText("") self.drag_handle.setPixmap( QtGui.QPixmap(":/tk_multi_publish2/drag_handle.png")) self.drag_handle.setScaledContents(True) self.drag_handle.setObjectName("drag_handle") self.horizontalLayout_2.addWidget(self.drag_handle) self.handle_stack.addWidget(self.drag) self.lock = QtGui.QWidget() self.lock.setObjectName("lock") self.horizontalLayout_3 = QtGui.QHBoxLayout(self.lock) self.horizontalLayout_3.setSpacing(0) self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.locked_handle = QtGui.QLabel(self.lock) self.locked_handle.setMinimumSize(QtCore.QSize(16, 16)) self.locked_handle.setMaximumSize(QtCore.QSize(16, 16)) self.locked_handle.setText("") self.locked_handle.setScaledContents(True) self.locked_handle.setObjectName("locked_handle") self.horizontalLayout_3.addWidget(self.locked_handle) self.handle_stack.addWidget(self.lock) self.horizontalLayout.addWidget(self.handle_stack) self.status = QtGui.QToolButton(self.frame) self.status.setMinimumSize(QtCore.QSize(30, 30)) self.status.setMaximumSize(QtCore.QSize(30, 30)) icon1 = QtGui.QIcon() icon1.addPixmap( QtGui.QPixmap(":/tk_multi_publish2/status_validate.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.status.setIcon(icon1) self.status.setIconSize(QtCore.QSize(24, 24)) self.status.setObjectName("status") self.horizontalLayout.addWidget(self.status) self.checkbox = QtGui.QCheckBox(self.frame) self.checkbox.setText("") self.checkbox.setObjectName("checkbox") self.horizontalLayout.addWidget(self.checkbox) self.horizontalLayout.setStretch(3, 10) self.verticalLayout.addWidget(self.frame) self.retranslateUi(ItemWidget) self.handle_stack.setCurrentIndex(1) QtCore.QMetaObject.connectSlotsByName(ItemWidget)
def get_initial_thumbnail(self): """ Get the initial thumbnail to use for the publish """ return QtGui.QPixmap(self._app.execute_hook("hook_thumbnail"))
def setupUi(self, PublishDetailsForm): PublishDetailsForm.setObjectName("PublishDetailsForm") PublishDetailsForm.resize(771, 592) self.verticalLayout = QtGui.QVBoxLayout(PublishDetailsForm) self.verticalLayout.setContentsMargins(0, 0, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.verticalLayout_7 = QtGui.QVBoxLayout() self.verticalLayout_7.setSpacing(4) self.verticalLayout_7.setObjectName("verticalLayout_7") self.items_title_label = QtGui.QLabel(PublishDetailsForm) self.items_title_label.setStyleSheet("#items_title_label {\n" "font-size: 14px\n" "}") self.items_title_label.setIndent(4) self.items_title_label.setObjectName("items_title_label") self.verticalLayout_7.addWidget(self.items_title_label) self.publishes_stacked_widget = QtGui.QStackedWidget( PublishDetailsForm) self.publishes_stacked_widget.setStyleSheet("") self.publishes_stacked_widget.setObjectName("publishes_stacked_widget") self.publishes_page = QtGui.QWidget() self.publishes_page.setObjectName("publishes_page") self.horizontalLayout_7 = QtGui.QHBoxLayout(self.publishes_page) self.horizontalLayout_7.setSpacing(0) self.horizontalLayout_7.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_7.setObjectName("horizontalLayout_7") self.task_scroll = QtGui.QScrollArea(self.publishes_page) self.task_scroll.setStyleSheet("#task_scroll {\n" "border-style: solid;\n" "border-width: 1px;\n" "border-radius: 2px;\n" "border-color: rgb(32,32,32);\n" "}") self.task_scroll.setWidgetResizable(True) self.task_scroll.setObjectName("task_scroll") self.contents = QtGui.QWidget() self.contents.setGeometry(QtCore.QRect(0, 0, 98, 28)) self.contents.setObjectName("contents") self.task_scroll.setWidget(self.contents) self.horizontalLayout_7.addWidget(self.task_scroll) self.publishes_stacked_widget.addWidget(self.publishes_page) self.no_publishes_page = QtGui.QWidget() self.no_publishes_page.setStyleSheet("") self.no_publishes_page.setObjectName("no_publishes_page") self.verticalLayout_2 = QtGui.QVBoxLayout(self.no_publishes_page) self.verticalLayout_2.setSpacing(0) self.verticalLayout_2.setContentsMargins(0, 0, 0, 0) self.verticalLayout_2.setObjectName("verticalLayout_2") self.no_publishes_frame = QtGui.QFrame(self.no_publishes_page) self.no_publishes_frame.setStyleSheet("#no_publishes_frame {\n" "border-style: solid;\n" "border-width: 1px;\n" "border-radius: 2px;\n" "border-color: rgb(32,32,32);\n" "}") self.no_publishes_frame.setFrameShape(QtGui.QFrame.StyledPanel) self.no_publishes_frame.setFrameShadow(QtGui.QFrame.Raised) self.no_publishes_frame.setObjectName("no_publishes_frame") self.verticalLayout_3 = QtGui.QVBoxLayout(self.no_publishes_frame) self.verticalLayout_3.setSpacing(0) self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) self.verticalLayout_3.setObjectName("verticalLayout_3") spacerItem = QtGui.QSpacerItem(0, 88, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout_3.addItem(spacerItem) self.horizontalLayout_9 = QtGui.QHBoxLayout() self.horizontalLayout_9.setObjectName("horizontalLayout_9") spacerItem1 = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_9.addItem(spacerItem1) self.label_3 = QtGui.QLabel(self.no_publishes_frame) self.label_3.setAlignment(QtCore.Qt.AlignCenter) self.label_3.setWordWrap(True) self.label_3.setObjectName("label_3") self.horizontalLayout_9.addWidget(self.label_3) spacerItem2 = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_9.addItem(spacerItem2) self.verticalLayout_3.addLayout(self.horizontalLayout_9) spacerItem3 = QtGui.QSpacerItem(0, 88, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.verticalLayout_3.addItem(spacerItem3) self.verticalLayout_2.addWidget(self.no_publishes_frame) self.publishes_stacked_widget.addWidget(self.no_publishes_page) self.verticalLayout_7.addWidget(self.publishes_stacked_widget) self.horizontalLayout.addLayout(self.verticalLayout_7) self.verticalLayout_5 = QtGui.QVBoxLayout() self.verticalLayout_5.setSpacing(4) self.verticalLayout_5.setObjectName("verticalLayout_5") self.info_title_label = QtGui.QLabel(PublishDetailsForm) self.info_title_label.setStyleSheet("#info_title_label {\n" "font-size: 14px\n" "}") self.info_title_label.setIndent(4) self.info_title_label.setObjectName("info_title_label") self.verticalLayout_5.addWidget(self.info_title_label) self.info_frame = QtGui.QFrame(PublishDetailsForm) self.info_frame.setStyleSheet("#info_frame {\n" "border-style: solid;\n" "border-width: 1px;\n" "border-radius: 2px;\n" "border-color: rgb(32,32,32);\n" "}") self.info_frame.setFrameShape(QtGui.QFrame.StyledPanel) self.info_frame.setFrameShadow(QtGui.QFrame.Raised) self.info_frame.setObjectName("info_frame") self.verticalLayout_6 = QtGui.QVBoxLayout(self.info_frame) self.verticalLayout_6.setObjectName("verticalLayout_6") self.task_header_label = QtGui.QLabel(self.info_frame) self.task_header_label.setStyleSheet("QLabel {\n" "font-size: 12px;\n" "}") self.task_header_label.setObjectName("task_header_label") self.verticalLayout_6.addWidget(self.task_header_label) self.sg_task_stacked_widget = QtGui.QStackedWidget(self.info_frame) self.sg_task_stacked_widget.setObjectName("sg_task_stacked_widget") self.sg_task_menu_page = QtGui.QWidget() self.sg_task_menu_page.setObjectName("sg_task_menu_page") self.horizontalLayout_4 = QtGui.QHBoxLayout(self.sg_task_menu_page) self.horizontalLayout_4.setSpacing(0) self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.sg_task_combo = QtGui.QComboBox(self.sg_task_menu_page) self.sg_task_combo.setObjectName("sg_task_combo") self.horizontalLayout_4.addWidget(self.sg_task_combo) self.sg_task_stacked_widget.addWidget(self.sg_task_menu_page) self.sg_task_label_page = QtGui.QWidget() self.sg_task_label_page.setObjectName("sg_task_label_page") self.horizontalLayout_5 = QtGui.QHBoxLayout(self.sg_task_label_page) self.horizontalLayout_5.setSpacing(0) self.horizontalLayout_5.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_5.setObjectName("horizontalLayout_5") self.sg_task_label = QtGui.QLabel(self.sg_task_label_page) self.sg_task_label.setIndent(12) self.sg_task_label.setObjectName("sg_task_label") self.horizontalLayout_5.addWidget(self.sg_task_label) self.sg_task_stacked_widget.addWidget(self.sg_task_label_page) self.verticalLayout_6.addWidget(self.sg_task_stacked_widget) spacerItem4 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed) self.verticalLayout_6.addItem(spacerItem4) self.label_7 = QtGui.QLabel(self.info_frame) self.label_7.setStyleSheet("QLabel {\n" "font-size: 12px;\n" "}") self.label_7.setObjectName("label_7") self.verticalLayout_6.addWidget(self.label_7) self.horizontalLayout_6 = QtGui.QHBoxLayout() self.horizontalLayout_6.setSpacing(0) self.horizontalLayout_6.setObjectName("horizontalLayout_6") self.thumbnail_frame = QtGui.QFrame(self.info_frame) self.thumbnail_frame.setStyleSheet("#thumbnail_frame {\n" "border-style: solid;\n" "border-color: rgb(32,32,32);\n" "border-width: 1px;\n" "border-radius: 3px;\n" "background: rgb(117,117,117);\n" "}") self.thumbnail_frame.setFrameShape(QtGui.QFrame.StyledPanel) self.thumbnail_frame.setFrameShadow(QtGui.QFrame.Raised) self.thumbnail_frame.setObjectName("thumbnail_frame") self.horizontalLayout_3 = QtGui.QHBoxLayout(self.thumbnail_frame) self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.thumbnail_widget = ThumbnailWidget(self.thumbnail_frame) self.thumbnail_widget.setMinimumSize(QtCore.QSize(200, 130)) self.thumbnail_widget.setMaximumSize(QtCore.QSize(200, 130)) self.thumbnail_widget.setStyleSheet("") self.thumbnail_widget.setObjectName("thumbnail_widget") self.horizontalLayout_3.addWidget(self.thumbnail_widget) self.horizontalLayout_6.addWidget(self.thumbnail_frame) spacerItem5 = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_6.addItem(spacerItem5) self.verticalLayout_6.addLayout(self.horizontalLayout_6) spacerItem6 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed) self.verticalLayout_6.addItem(spacerItem6) self.label_8 = QtGui.QLabel(self.info_frame) self.label_8.setStyleSheet("QLabel {\n" "font-size: 12px;\n" "}") self.label_8.setObjectName("label_8") self.verticalLayout_6.addWidget(self.label_8) self.comments_edit = QtGui.QTextEdit(self.info_frame) self.comments_edit.setMinimumSize(QtCore.QSize(300, 0)) self.comments_edit.setObjectName("comments_edit") self.verticalLayout_6.addWidget(self.comments_edit) self.verticalLayout_6.setStretch(7, 1) self.verticalLayout_5.addWidget(self.info_frame) self.verticalLayout_5.setStretch(1, 1) self.horizontalLayout.addLayout(self.verticalLayout_5) self.horizontalLayout.setStretch(0, 1) self.verticalLayout.addLayout(self.horizontalLayout) self.horizontalLayout_2 = QtGui.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") spacerItem7 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout_2.addItem(spacerItem7) self.cancel_btn = QtGui.QPushButton(PublishDetailsForm) self.cancel_btn.setMinimumSize(QtCore.QSize(80, 0)) self.cancel_btn.setObjectName("cancel_btn") self.horizontalLayout_2.addWidget(self.cancel_btn) self.publish_btn = QtGui.QPushButton(PublishDetailsForm) self.publish_btn.setMinimumSize(QtCore.QSize(80, 0)) self.publish_btn.setObjectName("publish_btn") self.horizontalLayout_2.addWidget(self.publish_btn) self.verticalLayout.addLayout(self.horizontalLayout_2) self.verticalLayout.setStretch(0, 1) self.retranslateUi(PublishDetailsForm) self.publishes_stacked_widget.setCurrentIndex(1) self.sg_task_stacked_widget.setCurrentIndex(1) QtCore.QMetaObject.connectSlotsByName(PublishDetailsForm)
def setupUi(self, SubmissionCompleteDialog): SubmissionCompleteDialog.setObjectName("SubmissionCompleteDialog") SubmissionCompleteDialog.resize(569, 237) self.verticalLayout = QtGui.QVBoxLayout(SubmissionCompleteDialog) self.verticalLayout.setContentsMargins(20, -1, 20, -1) self.verticalLayout.setObjectName("verticalLayout") self.horizontalLayout_3 = QtGui.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.label = QtGui.QLabel(SubmissionCompleteDialog) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum, QtGui.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.label.sizePolicy().hasHeightForWidth()) self.label.setSizePolicy(sizePolicy) self.label.setText("") self.label.setPixmap(QtGui.QPixmap(":/tk-flame-export/success.png")) self.label.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) self.label.setObjectName("label") self.horizontalLayout_3.addWidget(self.label) self.verticalLayout_2 = QtGui.QVBoxLayout() self.verticalLayout_2.setObjectName("verticalLayout_2") self.label_3 = QtGui.QLabel(SubmissionCompleteDialog) self.label_3.setStyleSheet("QLabel { font-size: 18px; }") self.label_3.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) self.label_3.setObjectName("label_3") self.verticalLayout_2.addWidget(self.label_3) self.status = QtGui.QLabel(SubmissionCompleteDialog) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.MinimumExpanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.status.sizePolicy().hasHeightForWidth()) self.status.setSizePolicy(sizePolicy) self.status.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop) self.status.setWordWrap(True) self.status.setObjectName("status") self.verticalLayout_2.addWidget(self.status) self.horizontalLayout_3.addLayout(self.verticalLayout_2) self.verticalLayout.addLayout(self.horizontalLayout_3) self.horizontalLayout = QtGui.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem = QtGui.QSpacerItem(368, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.submit = QtGui.QPushButton(SubmissionCompleteDialog) self.submit.setObjectName("submit") self.horizontalLayout.addWidget(self.submit) self.verticalLayout.addLayout(self.horizontalLayout) self.retranslateUi(SubmissionCompleteDialog) QtCore.QMetaObject.connectSlotsByName(SubmissionCompleteDialog)
QtGui.QMessageBox.information(None, "Unable To Snapshot!", msg) # try to launch "Shotgun Save As" command if we have it: save_as_cmd = tank.platform.current_engine().commands.get( "Shotgun Save As...") if not save_as_cmd: # try old name, just in case save_as_cmd = tank.platform.current_engine().commands.get( "Tank Save As...") if save_as_cmd: save_as_cmd["callback"]() return False # get initial thumbnail if there is one: thumbnail = QtGui.QPixmap(self._app.execute_hook("hook_thumbnail")) # show snapshot dialog as modal dialog: self._last_snapshot_result = None from .snapshot_form import SnapshotForm (res, snapshot_widget) = self._app.engine.show_modal( "Snapshot", self._app, SnapshotForm, work_file_path, thumbnail, self._setup_snapshot_ui) snapshot_success = (self._last_snapshot_result != None) # special case return code to show history dialog: if res == SnapshotForm.SHOW_HISTORY_RETURN_CODE: # snapshot history dialog is modeless so this won't block! self.show_snapshot_history_dlg()
def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(588, 285) self.verticalLayout = QtGui.QVBoxLayout(Dialog) self.verticalLayout.setObjectName("verticalLayout") self.horizontalLayout_3 = QtGui.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.label_6 = QtGui.QLabel(Dialog) self.label_6.setObjectName("label_6") self.horizontalLayout_3.addWidget(self.label_6) self.sel_node = QtGui.QLineEdit(Dialog) self.sel_node.setObjectName("sel_node") self.horizontalLayout_3.addWidget(self.sel_node) self.verticalLayout.addLayout(self.horizontalLayout_3) self.groupBox_3 = QtGui.QGroupBox(Dialog) self.groupBox_3.setObjectName("groupBox_3") self.horizontalLayout = QtGui.QHBoxLayout(self.groupBox_3) self.horizontalLayout.setObjectName("horizontalLayout") self.verticalLayout_8 = QtGui.QVBoxLayout() self.verticalLayout_8.setObjectName("verticalLayout_8") self.label_5 = QtGui.QLabel(self.groupBox_3) self.label_5.setObjectName("label_5") self.verticalLayout_8.addWidget(self.label_5) self.start_frame = QtGui.QLineEdit(self.groupBox_3) self.start_frame.setText("") self.start_frame.setObjectName("start_frame") self.verticalLayout_8.addWidget(self.start_frame) self.horizontalLayout.addLayout(self.verticalLayout_8) self.verticalLayout_9 = QtGui.QVBoxLayout() self.verticalLayout_9.setObjectName("verticalLayout_9") self.label_7 = QtGui.QLabel(self.groupBox_3) self.label_7.setObjectName("label_7") self.verticalLayout_9.addWidget(self.label_7) self.end_frame = QtGui.QLineEdit(self.groupBox_3) self.end_frame.setObjectName("end_frame") self.verticalLayout_9.addWidget(self.end_frame) self.horizontalLayout.addLayout(self.verticalLayout_9) self.verticalLayout.addWidget(self.groupBox_3) self.sg_check = QtGui.QCheckBox(Dialog) self.sg_check.setChecked(True) self.sg_check.setObjectName("sg_check") self.verticalLayout.addWidget(self.sg_check) self.output_btn = QtGui.QPushButton(Dialog) self.output_btn.setObjectName("output_btn") self.verticalLayout.addWidget(self.output_btn) self.farm_btn = QtGui.QPushButton(Dialog) self.farm_btn.setObjectName("farm_btn") self.verticalLayout.addWidget(self.farm_btn) self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog)
def execute_command(self, cmd_key, args): """ Executes a given command. """ cb = self.commands[cmd_key]["callback"] # make sure the number of parameters to the command are correct cb_arg_spec = inspect.getargspec(cb) cb_arg_list = cb_arg_spec[0] cb_var_args = cb_arg_spec[1] if hasattr(cb, "__self__"): # first argument to cb will be class instance: cb_arg_list = cb_arg_list[1:] # ensure the correct/minimum number of arguments have been passed: have_expected_args = False if cb_var_args: have_expected_args = (len(args) >= len(cb_arg_list)) else: have_expected_args = (len(args) == len(cb_arg_list)) if not have_expected_args: expected_args = list(cb_arg_list) if cb_var_args: expected_args.append("*%s" % cb_var_args) raise TankError( "Cannot run command! Expected command arguments (%s)" % ", ".join(expected_args)) if not self._has_qt: # QT not available - just run the command straight return cb(*args) else: from tank.platform.qt import QtCore, QtGui # we got QT capabilities. Start a QT app and fire the command into the app tk_shell = self.import_module("tk_shell") t = tk_shell.Task(self, cb, args) # start up our QApp now, if none is already running qt_application = None if not QtGui.qApp: # We need to clear Qt library paths on Linux if KDE is the active environment. # This resolves issues with mismatched Qt libraries between the OS and the # application being launched if it is a DCC that comes with a bundled Qt. if sys.platform == "linux2" and os.environ.get( "KDE_FULL_SESSION") is not None: QtGui.QApplication.setLibraryPaths([]) qt_application = QtGui.QApplication([]) qt_application.setWindowIcon(QtGui.QIcon(self.icon_256)) self._initialize_dark_look_and_feel() # if we didn't start the QApplication here, let the responsability # to run the exec loop and quit to the initial creator of the QApplication if qt_application: # when the QApp starts, initialize our task code QtCore.QTimer.singleShot(0, t.run_command) # and ask the main app to exit when the task emits its finished signal t.finished.connect(qt_application.quit) # start the application loop. This will block the process until the task # has completed - this is either triggered by a main window closing or # byt the finished signal being called from the task class above. qt_application.exec_() else: # we can run the command now, as the QApp is already started t.run_command()
def show_snapshot_dlg(self): """ Perform a snapshot of the current work file with the help of the UI """ # get current work file path: try: work_file_path = self.get_current_file_path() except Exception as e: msg = ("Failed to get the current file path:\n\n" "%s\n\n" "Unable to continue!" % e) QtGui.QMessageBox.critical(None, "Snapshot Error!", msg) return False # current scene path must match work template and contain version: if not work_file_path or not self._work_template.validate( work_file_path): msg = "Unable to snapshot!\n\nPlease save the scene as a valid work file before continuing" QtGui.QMessageBox.information(None, "Unable To Snapshot!", msg) # try to launch "Shotgun Save As" command if we have it: save_as_cmd = tank.platform.current_engine().commands.get( "Shotgun Save As...") if not save_as_cmd: # try old name, just in case save_as_cmd = tank.platform.current_engine().commands.get( "Tank Save As...") if save_as_cmd: save_as_cmd["callback"]() return False # get initial thumbnail if there is one: thumbnail = QtGui.QPixmap(self._app.execute_hook("hook_thumbnail")) # show snapshot dialog as modal dialog: self._last_snapshot_result = None from .snapshot_form import SnapshotForm (res, snapshot_widget) = self._app.engine.show_modal( "Snapshot", self._app, SnapshotForm, work_file_path, thumbnail, self._setup_snapshot_ui, ) snapshot_success = self._last_snapshot_result != None # special case return code to show history dialog: if res == SnapshotForm.SHOW_HISTORY_RETURN_CODE: # snapshot history dialog is modeless so this won't block! self.show_snapshot_history_dlg() # disconnect from the widget to allow the widget to be cleaned up: snapshot_widget.snapshot.disconnect(self._do_snapshot_from_ui) # return if snapshot was actually done return snapshot_success