Ejemplo n.º 1
0
    def __init__(self, parent=None):
        super(ProgressDialog, self).__init__(parent)

        # Window options
        self.setWindowTitle('tk-cpenv')
        self.setWindowIcon(QtGui.QIcon(res.get_path('module_dark_256.png')))
        self.setWindowFlags(self.windowFlags()
                            | QtCore.Qt.WindowStaysOnTopHint)
        self.hide_timer = None

        # Layout widgets
        self.label = QtGui.QLabel('Starting...')
        self.progress = QtGui.QProgressBar()
        self.progress.setRange(0, 100)
        self.progress.setTextVisible(True)
        self.progress.setAlignment(QtCore.Qt.AlignCenter)
        self.progress.setFormat('starting')
        self.frame = QtGui.QLabel()
        self.button = QtGui.QPushButton('Cancel')
        self.button.setSizePolicy(
            QtGui.QSizePolicy.Maximum,
            QtGui.QSizePolicy.Maximum,
        )
        self.button.clicked.connect(self.cancel)

        self.layout = QtGui.QVBoxLayout()
        self.layout.addWidget(self.label)
        self.layout.addWidget(self.progress)
        self.layout.addWidget(self.frame)
        self.layout.addWidget(self.button)
        self.layout.setAlignment(self.button, QtCore.Qt.AlignRight)
        self.setLayout(self.layout)
Ejemplo n.º 2
0
    def __init__(self):
        """
        Constructor
        """

        # first, call the base class and let it do its thing.
        QtGui.QWidget.__init__(self)
        styleButton = " QPushButton { border: none;margin: 0px;padding: 0px;    }"
        styleButton += " QPushButton:hover{border: 1px solid #00BFFF;}"

        # most of the useful accessors are available through the Application class instance
        # it is often handy to keep a reference to this. You can get it via the following method:
        self._app = sgtk.platform.current_bundle()

        self.addFilterButton = QtGui.QPushButton()
        self.addFilterButton.setIcon(
            QtGui.QIcon(QtGui.QPixmap(getIconPath("add.png"))))
        self.addFilterButton.setStyleSheet(styleButton)
        self.addFilterButton.setIconSize(QtCore.QSize(15, 15))

        # logLabel Layout
        self.resultLabel = QtGui.QTextEdit(
            "<font color='#000000'>Results : </font><br><br><br>")

        # main process Button Layout.
        self.processButton = QtGui.QPushButton("Start parsing")

        self.processProgressBar = QtGui.QProgressBar()
        self.processProgressBar.setFormat("waiting somethign to do")
        self.processProgressBar.setTextVisible(True)
        self.processProgressBar.setValue(50)

        processButtonLayout = QtGui.QHBoxLayout()
        processButtonLayout.addWidget(self.processButton)
        processButtonLayout.addWidget(self.processProgressBar)
        #processButtonLayout.addStretch()

        # main layout
        layout = QtGui.QVBoxLayout()

        # receive parserWidget
        self.filterlayout = QtGui.QVBoxLayout()
        layout.addWidget(self.addFilterButton)
        layout.addLayout(self.filterlayout)

        layout.addStretch()
        layout.addWidget(self.resultLabel)
        layout.addLayout(processButtonLayout)
        self.setLayout(layout)

        self.connect_widget()

        self.finishConstruct_set_ProjectTaskNameList()

        self.addFilterWidget(QTimeFrom=QtCore.QTime(12, 30, 0),
                             QTimeTo=QtCore.QTime(14, 30, 0),
                             QTimeRem=QtCore.QTime(0, 30, 0),
                             QTimeEvery=QtCore.QTime(0, 50, 0))
        self.addFilterWidget(QTimeFrom=QtCore.QTime(0, 0, 0),
                             QTimeTo=QtCore.QTime(23, 59, 59),
                             QTimeRem=QtCore.QTime(1, 30, 0),
                             QTimeEvery=QtCore.QTime(0, 45, 0))
Ejemplo n.º 3
0
    def setupUi(self, Wizard):
        Wizard.setObjectName("Wizard")
        Wizard.resize(701, 528)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/res/shotgun_logo.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        Wizard.setWindowIcon(icon)
        Wizard.setModal(True)
        Wizard.setWizardStyle(QtGui.QWizard.ModernStyle)
        Wizard.setOptions(QtGui.QWizard.CancelButtonOnLeft|QtGui.QWizard.HaveHelpButton|QtGui.QWizard.NoBackButtonOnLastPage)
        Wizard.setTitleFormat(QtCore.Qt.RichText)
        Wizard.setSubTitleFormat(QtCore.Qt.RichText)
        self.setup_type_page = SetupTypePage()
        self.setup_type_page.setObjectName("setup_type_page")
        self.verticalLayout = QtGui.QVBoxLayout(self.setup_type_page)
        self.verticalLayout.setContentsMargins(25, 20, 25, 20)
        self.verticalLayout.setObjectName("verticalLayout")
        self.setup_type_subheader = QtGui.QLabel(self.setup_type_page)
        self.setup_type_subheader.setStyleSheet("font-size: 14px;")
        self.setup_type_subheader.setWordWrap(True)
        self.setup_type_subheader.setObjectName("setup_type_subheader")
        self.verticalLayout.addWidget(self.setup_type_subheader)
        spacerItem = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.verticalLayout.addItem(spacerItem)
        self.select_standard = QtGui.QRadioButton(self.setup_type_page)
        self.select_standard.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_standard.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}\n"
"")
        self.select_standard.setChecked(True)
        self.select_standard.setObjectName("select_standard")
        self.verticalLayout.addWidget(self.select_standard)
        self.label_standard = QtGui.QLabel(self.setup_type_page)
        self.label_standard.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_standard.setIndent(20)
        self.label_standard.setObjectName("label_standard")
        self.verticalLayout.addWidget(self.label_standard)
        spacerItem1 = QtGui.QSpacerItem(20, 10, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.verticalLayout.addItem(spacerItem1)
        self.select_project = QtGui.QRadioButton(self.setup_type_page)
        self.select_project.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_project.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}\n"
"")
        self.select_project.setObjectName("select_project")
        self.verticalLayout.addWidget(self.select_project)
        self.label_project = QtGui.QLabel(self.setup_type_page)
        self.label_project.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_project.setIndent(20)
        self.label_project.setObjectName("label_project")
        self.verticalLayout.addWidget(self.label_project)
        spacerItem2 = QtGui.QSpacerItem(20, 10, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.verticalLayout.addItem(spacerItem2)
        self.select_github = QtGui.QRadioButton(self.setup_type_page)
        self.select_github.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_github.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}\n"
"")
        self.select_github.setObjectName("select_github")
        self.verticalLayout.addWidget(self.select_github)
        self.label_github = QtGui.QLabel(self.setup_type_page)
        self.label_github.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_github.setIndent(20)
        self.label_github.setObjectName("label_github")
        self.verticalLayout.addWidget(self.label_github)
        spacerItem3 = QtGui.QSpacerItem(20, 10, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.verticalLayout.addItem(spacerItem3)
        self.select_disk = QtGui.QRadioButton(self.setup_type_page)
        self.select_disk.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_disk.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}\n"
"")
        self.select_disk.setObjectName("select_disk")
        self.verticalLayout.addWidget(self.select_disk)
        self.label_disk = QtGui.QLabel(self.setup_type_page)
        self.label_disk.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_disk.setIndent(20)
        self.label_disk.setObjectName("label_disk")
        self.verticalLayout.addWidget(self.label_disk)
        spacerItem4 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem4)
        self.verticalLayout.setStretch(13, 1)
        Wizard.addPage(self.setup_type_page)
        self.default_configs_page = DefaultConfigPage()
        self.default_configs_page.setObjectName("default_configs_page")
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.default_configs_page)
        self.verticalLayout_3.setContentsMargins(25, 20, 25, 20)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.default_configs_subheader = QtGui.QLabel(self.default_configs_page)
        self.default_configs_subheader.setStyleSheet("font-size: 14px;")
        self.default_configs_subheader.setWordWrap(True)
        self.default_configs_subheader.setObjectName("default_configs_subheader")
        self.verticalLayout_3.addWidget(self.default_configs_subheader)
        self.scrollArea = QtGui.QScrollArea(self.default_configs_page)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName("scrollArea")
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 629, 312))
        self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
        self.verticalLayout_11 = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.verticalLayout_11.setObjectName("verticalLayout_11")
        self.select_default_config = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.select_default_config.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_default_config.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}")
        self.select_default_config.setChecked(True)
        self.select_default_config.setObjectName("select_default_config")
        self.verticalLayout_11.addWidget(self.select_default_config)
        self.label_default_config = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_default_config.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_default_config.setWordWrap(True)
        self.label_default_config.setIndent(20)
        self.label_default_config.setObjectName("label_default_config")
        self.verticalLayout_11.addWidget(self.label_default_config)
        self.select_multiroot_config = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.select_multiroot_config.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_multiroot_config.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}")
        self.select_multiroot_config.setObjectName("select_multiroot_config")
        self.verticalLayout_11.addWidget(self.select_multiroot_config)
        self.label_multiroot_config = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_multiroot_config.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_multiroot_config.setWordWrap(True)
        self.label_multiroot_config.setIndent(20)
        self.label_multiroot_config.setObjectName("label_multiroot_config")
        self.verticalLayout_11.addWidget(self.label_multiroot_config)
        self.select_flame_config = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.select_flame_config.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_flame_config.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}")
        self.select_flame_config.setObjectName("select_flame_config")
        self.verticalLayout_11.addWidget(self.select_flame_config)
        self.label_multiroot_config_2 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_multiroot_config_2.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_multiroot_config_2.setWordWrap(True)
        self.label_multiroot_config_2.setIndent(20)
        self.label_multiroot_config_2.setObjectName("label_multiroot_config_2")
        self.verticalLayout_11.addWidget(self.label_multiroot_config_2)
        self.select_games_config = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.select_games_config.setFocusPolicy(QtCore.Qt.NoFocus)
        self.select_games_config.setStyleSheet("QRadioButton {\n"
"    font-size: 16px;\n"
"}")
        self.select_games_config.setObjectName("select_games_config")
        self.verticalLayout_11.addWidget(self.select_games_config)
        self.label_games_config = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_games_config.setStyleSheet("font-size: 12px;\n"
"color: rgb(160, 160, 160);")
        self.label_games_config.setWordWrap(True)
        self.label_games_config.setIndent(20)
        self.label_games_config.setObjectName("label_games_config")
        self.verticalLayout_11.addWidget(self.label_games_config)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout_3.addWidget(self.scrollArea)
        self.default_configs_errors = QtGui.QLabel(self.default_configs_page)
        self.default_configs_errors.setStyleSheet("color: rgb(252, 98, 70);")
        self.default_configs_errors.setText("")
        self.default_configs_errors.setAlignment(QtCore.Qt.AlignCenter)
        self.default_configs_errors.setWordWrap(True)
        self.default_configs_errors.setObjectName("default_configs_errors")
        self.verticalLayout_3.addWidget(self.default_configs_errors)
        Wizard.addPage(self.default_configs_page)
        self.project_config_page = ProjectConfigPage()
        self.project_config_page.setObjectName("project_config_page")
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.project_config_page)
        self.verticalLayout_2.setContentsMargins(25, 20, 25, 20)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.project_config_subheader = QtGui.QLabel(self.project_config_page)
        self.project_config_subheader.setStyleSheet("font-size: 14px;")
        self.project_config_subheader.setWordWrap(True)
        self.project_config_subheader.setObjectName("project_config_subheader")
        self.verticalLayout_2.addWidget(self.project_config_subheader)
        spacerItem5 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.verticalLayout_2.addItem(spacerItem5)
        self.project_list = QtGui.QListView(self.project_config_page)
        self.project_list.setFrameShape(QtGui.QFrame.NoFrame)
        self.project_list.setFrameShadow(QtGui.QFrame.Plain)
        self.project_list.setAutoScroll(False)
        self.project_list.setEditTriggers(QtGui.QAbstractItemView.NoEditTriggers)
        self.project_list.setProperty("showDropIndicator", False)
        self.project_list.setSelectionMode(QtGui.QAbstractItemView.SingleSelection)
        self.project_list.setTextElideMode(QtCore.Qt.ElideNone)
        self.project_list.setMovement(QtGui.QListView.Static)
        self.project_list.setFlow(QtGui.QListView.LeftToRight)
        self.project_list.setProperty("isWrapping", True)
        self.project_list.setResizeMode(QtGui.QListView.Adjust)
        self.project_list.setLayoutMode(QtGui.QListView.Batched)
        self.project_list.setSpacing(10)
        self.project_list.setViewMode(QtGui.QListView.IconMode)
        self.project_list.setUniformItemSizes(True)
        self.project_list.setWordWrap(True)
        self.project_list.setSelectionRectVisible(False)
        self.project_list.setObjectName("project_list")
        self.verticalLayout_2.addWidget(self.project_list)
        self.project_errors = QtGui.QLabel(self.project_config_page)
        self.project_errors.setStyleSheet("color: rgb(252, 98, 70);")
        self.project_errors.setText("")
        self.project_errors.setAlignment(QtCore.Qt.AlignCenter)
        self.project_errors.setWordWrap(True)
        self.project_errors.setObjectName("project_errors")
        self.verticalLayout_2.addWidget(self.project_errors)
        Wizard.addPage(self.project_config_page)
        self.github_config_page = GithubConfigPage()
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.github_config_page.sizePolicy().hasHeightForWidth())
        self.github_config_page.setSizePolicy(sizePolicy)
        self.github_config_page.setObjectName("github_config_page")
        self.verticalLayout_6 = QtGui.QVBoxLayout(self.github_config_page)
        self.verticalLayout_6.setSpacing(0)
        self.verticalLayout_6.setContentsMargins(25, 20, 25, 20)
        self.verticalLayout_6.setObjectName("verticalLayout_6")
        self.github_config_subheader = QtGui.QLabel(self.github_config_page)
        self.github_config_subheader.setStyleSheet("font-size: 14px;")
        self.github_config_subheader.setWordWrap(True)
        self.github_config_subheader.setObjectName("github_config_subheader")
        self.verticalLayout_6.addWidget(self.github_config_subheader)
        spacerItem6 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.verticalLayout_6.addItem(spacerItem6)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setSpacing(20)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.octocat = QtGui.QLabel(self.github_config_page)
        self.octocat.setMaximumSize(QtCore.QSize(200, 200))
        self.octocat.setText("")
        self.octocat.setPixmap(QtGui.QPixmap(":/tk-framework-adminui/setup_project/octocats/original.png"))
        self.octocat.setScaledContents(True)
        self.octocat.setObjectName("octocat")
        self.horizontalLayout.addWidget(self.octocat)
        self.verticalLayout_4 = QtGui.QVBoxLayout()
        self.verticalLayout_4.setSpacing(20)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        spacerItem7 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_4.addItem(spacerItem7)
        self.github_url = QtGui.QLineEdit(self.github_config_page)
        self.github_url.setText("")
        self.github_url.setObjectName("github_url")
        self.verticalLayout_4.addWidget(self.github_url)
        self.label = QtGui.QLabel(self.github_config_page)
        self.label.setObjectName("label")
        self.verticalLayout_4.addWidget(self.label)
        spacerItem8 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_4.addItem(spacerItem8)
        self.horizontalLayout.addLayout(self.verticalLayout_4)
        self.horizontalLayout.setStretch(1, 1)
        self.verticalLayout_6.addLayout(self.horizontalLayout)
        self.github_errors = QtGui.QLabel(self.github_config_page)
        self.github_errors.setStyleSheet("color: rgb(252, 98, 70);")
        self.github_errors.setText("")
        self.github_errors.setAlignment(QtCore.Qt.AlignCenter)
        self.github_errors.setWordWrap(True)
        self.github_errors.setObjectName("github_errors")
        self.verticalLayout_6.addWidget(self.github_errors)
        Wizard.addPage(self.github_config_page)
        self.disk_config_page = DiskConfigPage()
        self.disk_config_page.setObjectName("disk_config_page")
        self.verticalLayout_8 = QtGui.QVBoxLayout(self.disk_config_page)
        self.verticalLayout_8.setContentsMargins(25, 20, 25, 20)
        self.verticalLayout_8.setObjectName("verticalLayout_8")
        self.disk_config_subheader = QtGui.QLabel(self.disk_config_page)
        self.disk_config_subheader.setStyleSheet("font-size: 14px;")
        self.disk_config_subheader.setWordWrap(True)
        self.disk_config_subheader.setObjectName("disk_config_subheader")
        self.verticalLayout_8.addWidget(self.disk_config_subheader)
        spacerItem9 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.verticalLayout_8.addItem(spacerItem9)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setSpacing(20)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.folder_icon = QtGui.QLabel(self.disk_config_page)
        self.folder_icon.setMaximumSize(QtCore.QSize(200, 200))
        self.folder_icon.setText("")
        self.folder_icon.setPixmap(QtGui.QPixmap(":/tk-framework-adminui/setup_project/shotgun_folder.png"))
        self.folder_icon.setScaledContents(True)
        self.folder_icon.setObjectName("folder_icon")
        self.horizontalLayout_2.addWidget(self.folder_icon)
        self.verticalLayout_7 = QtGui.QVBoxLayout()
        self.verticalLayout_7.setSpacing(20)
        self.verticalLayout_7.setObjectName("verticalLayout_7")
        spacerItem10 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_7.addItem(spacerItem10)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setSpacing(20)
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.path = QtGui.QLineEdit(self.disk_config_page)
        self.path.setObjectName("path")
        self.horizontalLayout_4.addWidget(self.path)
        self.disk_browse_button = QtGui.QPushButton(self.disk_config_page)
        self.disk_browse_button.setObjectName("disk_browse_button")
        self.horizontalLayout_4.addWidget(self.disk_browse_button)
        self.verticalLayout_7.addLayout(self.horizontalLayout_4)
        self.label_2 = QtGui.QLabel(self.disk_config_page)
        self.label_2.setObjectName("label_2")
        self.verticalLayout_7.addWidget(self.label_2)
        spacerItem11 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_7.addItem(spacerItem11)
        self.horizontalLayout_2.addLayout(self.verticalLayout_7)
        self.horizontalLayout_2.setStretch(1, 1)
        self.verticalLayout_8.addLayout(self.horizontalLayout_2)
        self.disk_errors = QtGui.QLabel(self.disk_config_page)
        self.disk_errors.setStyleSheet("color: rgb(252, 98, 70);")
        self.disk_errors.setText("")
        self.disk_errors.setAlignment(QtCore.Qt.AlignCenter)
        self.disk_errors.setWordWrap(True)
        self.disk_errors.setObjectName("disk_errors")
        self.verticalLayout_8.addWidget(self.disk_errors)
        Wizard.addPage(self.disk_config_page)
        self.project_name_page = ProjectNamePage()
        self.project_name_page.setObjectName("project_name_page")
        self.verticalLayout_9 = QtGui.QVBoxLayout(self.project_name_page)
        self.verticalLayout_9.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_9.setObjectName("verticalLayout_9")
        self.project_name_scroll_area = QtGui.QScrollArea(self.project_name_page)
        self.project_name_scroll_area.setFocusPolicy(QtCore.Qt.NoFocus)
        self.project_name_scroll_area.setFrameShape(QtGui.QFrame.NoFrame)
        self.project_name_scroll_area.setFrameShadow(QtGui.QFrame.Plain)
        self.project_name_scroll_area.setWidgetResizable(True)
        self.project_name_scroll_area.setObjectName("project_name_scroll_area")
        self.project_name_scroll_area_contents = QtGui.QWidget()
        self.project_name_scroll_area_contents.setGeometry(QtCore.QRect(0, 0, 332, 200))
        self.project_name_scroll_area_contents.setObjectName("project_name_scroll_area_contents")
        self.project_contents_layout = QtGui.QVBoxLayout(self.project_name_scroll_area_contents)
        self.project_contents_layout.setContentsMargins(25, 20, 25, 20)
        self.project_contents_layout.setObjectName("project_contents_layout")
        self.project_name_subheader = QtGui.QLabel(self.project_name_scroll_area_contents)
        self.project_name_subheader.setStyleSheet("font-size: 14px;")
        self.project_name_subheader.setWordWrap(True)
        self.project_name_subheader.setObjectName("project_name_subheader")
        self.project_contents_layout.addWidget(self.project_name_subheader)
        spacerItem12 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.project_contents_layout.addItem(spacerItem12)
        self.project_name = QtGui.QLineEdit(self.project_name_scroll_area_contents)
        self.project_name.setObjectName("project_name")
        self.project_contents_layout.addWidget(self.project_name)
        spacerItem13 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.project_contents_layout.addItem(spacerItem13)
        self.project_directories = QtGui.QLabel(self.project_name_scroll_area_contents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.project_directories.sizePolicy().hasHeightForWidth())
        self.project_directories.setSizePolicy(sizePolicy)
        self.project_directories.setFrameShape(QtGui.QFrame.NoFrame)
        self.project_directories.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
        self.project_directories.setObjectName("project_directories")
        self.project_contents_layout.addWidget(self.project_directories)
        self.project_name_scroll_area.setWidget(self.project_name_scroll_area_contents)
        self.verticalLayout_9.addWidget(self.project_name_scroll_area)
        spacerItem14 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_9.addItem(spacerItem14)
        self.project_name_errors = QtGui.QLabel(self.project_name_page)
        self.project_name_errors.setStyleSheet("color: rgb(252, 98, 70);")
        self.project_name_errors.setText("")
        self.project_name_errors.setAlignment(QtCore.Qt.AlignCenter)
        self.project_name_errors.setWordWrap(True)
        self.project_name_errors.setObjectName("project_name_errors")
        self.verticalLayout_9.addWidget(self.project_name_errors)
        Wizard.addPage(self.project_name_page)
        self.config_location_page = ConfigLocationPage()
        self.config_location_page.setObjectName("config_location_page")
        self.gridLayout_3 = QtGui.QGridLayout(self.config_location_page)
        self.gridLayout_3.setContentsMargins(25, 20, 25, 20)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.mac_browse = QtGui.QPushButton(self.config_location_page)
        self.mac_browse.setEnabled(True)
        self.mac_browse.setObjectName("mac_browse")
        self.gridLayout_3.addWidget(self.mac_browse, 2, 3, 1, 1)
        self.windows_path = QtGui.QLineEdit(self.config_location_page)
        self.windows_path.setObjectName("windows_path")
        self.gridLayout_3.addWidget(self.windows_path, 6, 2, 1, 1)
        self.linux_path = QtGui.QLineEdit(self.config_location_page)
        self.linux_path.setObjectName("linux_path")
        self.gridLayout_3.addWidget(self.linux_path, 5, 2, 1, 1)
        self.config_location_errors = QtGui.QLabel(self.config_location_page)
        self.config_location_errors.setStyleSheet("color: rgb(252, 98, 70);")
        self.config_location_errors.setText("")
        self.config_location_errors.setAlignment(QtCore.Qt.AlignCenter)
        self.config_location_errors.setWordWrap(True)
        self.config_location_errors.setObjectName("config_location_errors")
        self.gridLayout_3.addWidget(self.config_location_errors, 8, 0, 1, 4)
        self.linux_browse = QtGui.QPushButton(self.config_location_page)
        self.linux_browse.setEnabled(True)
        self.linux_browse.setObjectName("linux_browse")
        self.gridLayout_3.addWidget(self.linux_browse, 5, 3, 1, 1)
        spacerItem15 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.gridLayout_3.addItem(spacerItem15, 7, 0, 1, 4)
        self.windows_label = QtGui.QLabel(self.config_location_page)
        self.windows_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.windows_label.setObjectName("windows_label")
        self.gridLayout_3.addWidget(self.windows_label, 6, 0, 1, 1)
        self.config_location_subheader = QtGui.QLabel(self.config_location_page)
        self.config_location_subheader.setStyleSheet("font-size: 14px;")
        self.config_location_subheader.setWordWrap(True)
        self.config_location_subheader.setObjectName("config_location_subheader")
        self.gridLayout_3.addWidget(self.config_location_subheader, 0, 0, 1, 4)
        self.windows_browse = QtGui.QPushButton(self.config_location_page)
        self.windows_browse.setEnabled(True)
        self.windows_browse.setObjectName("windows_browse")
        self.gridLayout_3.addWidget(self.windows_browse, 6, 3, 1, 1)
        self.mac_label = QtGui.QLabel(self.config_location_page)
        self.mac_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.mac_label.setObjectName("mac_label")
        self.gridLayout_3.addWidget(self.mac_label, 2, 0, 1, 1)
        self.linux_label = QtGui.QLabel(self.config_location_page)
        self.linux_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.linux_label.setObjectName("linux_label")
        self.gridLayout_3.addWidget(self.linux_label, 5, 0, 1, 1)
        self.mac_path = QtGui.QLineEdit(self.config_location_page)
        self.mac_path.setObjectName("mac_path")
        self.gridLayout_3.addWidget(self.mac_path, 2, 2, 1, 1)
        spacerItem16 = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Fixed)
        self.gridLayout_3.addItem(spacerItem16, 1, 0, 1, 4)
        Wizard.addPage(self.config_location_page)
        self.progress_page = ProgressPage()
        self.progress_page.setObjectName("progress_page")
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.progress_page)
        self.verticalLayout_5.setSpacing(15)
        self.verticalLayout_5.setContentsMargins(25, -1, 25, -1)
        self.verticalLayout_5.setObjectName("verticalLayout_5")
        spacerItem17 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_5.addItem(spacerItem17)
        self.message = QtGui.QLabel(self.progress_page)
        self.message.setText("")
        self.message.setObjectName("message")
        self.verticalLayout_5.addWidget(self.message)
        self.progress = QtGui.QProgressBar(self.progress_page)
        self.progress.setObjectName("progress")
        self.verticalLayout_5.addWidget(self.progress)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.additional_details_button = QtGui.QPushButton(self.progress_page)
        self.additional_details_button.setBaseSize(QtCore.QSize(20, 32))
        self.additional_details_button.setFocusPolicy(QtCore.Qt.NoFocus)
        self.additional_details_button.setAutoDefault(False)
        self.additional_details_button.setFlat(False)
        self.additional_details_button.setObjectName("additional_details_button")
        self.horizontalLayout_3.addWidget(self.additional_details_button)
        spacerItem18 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem18)
        self.verticalLayout_5.addLayout(self.horizontalLayout_3)
        self.progress_output = QtGui.QPlainTextEdit(self.progress_page)
        self.progress_output.setFocusPolicy(QtCore.Qt.NoFocus)
        self.progress_output.setUndoRedoEnabled(False)
        self.progress_output.setLineWrapMode(QtGui.QPlainTextEdit.NoWrap)
        self.progress_output.setReadOnly(True)
        self.progress_output.setTextInteractionFlags(QtCore.Qt.LinksAccessibleByKeyboard|QtCore.Qt.LinksAccessibleByMouse|QtCore.Qt.TextBrowserInteraction|QtCore.Qt.TextSelectableByKeyboard|QtCore.Qt.TextSelectableByMouse)
        self.progress_output.setObjectName("progress_output")
        self.verticalLayout_5.addWidget(self.progress_output)
        spacerItem19 = QtGui.QSpacerItem(20, 0, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_5.addItem(spacerItem19)
        self.complete_errors = QtGui.QLabel(self.progress_page)
        self.complete_errors.setStyleSheet("color: rgb(252, 98, 70);")
        self.complete_errors.setText("")
        self.complete_errors.setAlignment(QtCore.Qt.AlignCenter)
        self.complete_errors.setWordWrap(True)
        self.complete_errors.setObjectName("complete_errors")
        self.verticalLayout_5.addWidget(self.complete_errors)
        Wizard.addPage(self.progress_page)
        self.summary_page = QtGui.QWizardPage()
        self.summary_page.setObjectName("summary_page")
        self.gridLayout = QtGui.QGridLayout(self.summary_page)
        self.gridLayout.setContentsMargins(25, 60, 25, 20)
        self.gridLayout.setVerticalSpacing(20)
        self.gridLayout.setObjectName("gridLayout")
        spacerItem20 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.gridLayout.addItem(spacerItem20, 5, 2, 1, 1)
        self.final_message = QtGui.QLabel(self.summary_page)
        self.final_message.setStyleSheet("font-size: 16px;\n"
"color: rgb(141, 143, 143);")
        self.final_message.setTextFormat(QtCore.Qt.RichText)
        self.final_message.setWordWrap(True)
        self.final_message.setOpenExternalLinks(True)
        self.final_message.setObjectName("final_message")
        self.gridLayout.addWidget(self.final_message, 6, 2, 1, 1)
        spacerItem21 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem21, 0, 0, 1, 1)
        spacerItem22 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem22, 0, 6, 1, 1)
        self.setup_complete = QtGui.QLabel(self.summary_page)
        self.setup_complete.setStyleSheet("font-size: 20px;")
        self.setup_complete.setAlignment(QtCore.Qt.AlignCenter)
        self.setup_complete.setObjectName("setup_complete")
        self.gridLayout.addWidget(self.setup_complete, 4, 2, 1, 1)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.icon = QtGui.QLabel(self.summary_page)
        self.icon.setMaximumSize(QtCore.QSize(100, 100))
        self.icon.setText("")
        self.icon.setPixmap(QtGui.QPixmap(":/tk-framework-adminui/setup_project/circle_logo.png"))
        self.icon.setScaledContents(True)
        self.icon.setObjectName("icon")
        self.horizontalLayout_5.addWidget(self.icon)
        self.gridLayout.addLayout(self.horizontalLayout_5, 0, 2, 1, 1)
        spacerItem23 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.gridLayout.addItem(spacerItem23, 7, 2, 1, 1)
        Wizard.addPage(self.summary_page)
        self.label_standard.setBuddy(self.select_standard)
        self.label_project.setBuddy(self.select_project)
        self.label_github.setBuddy(self.select_github)
        self.label_disk.setBuddy(self.select_disk)
        self.label_default_config.setBuddy(self.select_standard)
        self.label_multiroot_config.setBuddy(self.select_project)
        self.label_multiroot_config_2.setBuddy(self.select_project)
        self.label_games_config.setBuddy(self.select_github)
        self.octocat.setBuddy(self.github_url)
        self.project_directories.setBuddy(self.project_name)
        self.windows_label.setBuddy(self.windows_path)
        self.mac_label.setBuddy(self.mac_path)
        self.linux_label.setBuddy(self.linux_path)

        self.retranslateUi(Wizard)
        QtCore.QMetaObject.connectSlotsByName(Wizard)
        Wizard.setTabOrder(self.project_list, self.github_url)
        Wizard.setTabOrder(self.github_url, self.path)
        Wizard.setTabOrder(self.path, self.disk_browse_button)
        Wizard.setTabOrder(self.disk_browse_button, self.project_name)
        Wizard.setTabOrder(self.project_name, self.mac_path)
        Wizard.setTabOrder(self.mac_path, self.mac_browse)
        Wizard.setTabOrder(self.mac_browse, self.linux_path)
        Wizard.setTabOrder(self.linux_path, self.linux_browse)
        Wizard.setTabOrder(self.linux_browse, self.windows_path)
        Wizard.setTabOrder(self.windows_path, self.windows_browse)
        Wizard.setTabOrder(self.windows_browse, self.project_name_scroll_area)
Ejemplo n.º 4
0
    def __init__(self):
        """
        Constructor
        """
        # first, call the base class and let it do its thing.
        QtGui.QWidget.__init__(self)
        
        logger.info('Launching Shot Comments app...')

        # create widgets
        self.button_file_open = QtGui.QPushButton('Select Excel Files')
        self.button_shotgun_import = QtGui.QPushButton('Shotgun Import')
        self.label_status = QtGui.QLabel()
        self.logo_example = QtGui.QLabel()
        self.progress_bar = QtGui.QProgressBar()
        self.table = QtGui.QTableWidget()

        # layout
        self.vertical_layout_1 = QtGui.QVBoxLayout()
        self.vertical_layout_2 = QtGui.QVBoxLayout()
        self.horizontal_layout_1 = QtGui.QHBoxLayout()
        self.vertical_layout_1.addWidget(self.logo_example)
        self.vertical_layout_1.addWidget(self.button_file_open)
        self.vertical_layout_1.addWidget(self.button_shotgun_import)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.vertical_layout_1.addItem(spacerItem)
        self.vertical_layout_2.addWidget(self.progress_bar)
        self.vertical_layout_2.addWidget(self.table)
        self.vertical_layout_2.addWidget(self.label_status)
        self.horizontal_layout_1.addLayout(self.vertical_layout_1)
        self.horizontal_layout_1.addLayout(self.vertical_layout_2)
        # set dialog layout
        self.setLayout(self.horizontal_layout_1)

        # size
        self.button_file_open.setMinimumWidth(80)
        self.button_file_open.setMaximumWidth(100)
        size_policy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        size_policy.setHorizontalStretch(0)
        size_policy.setVerticalStretch(0)
        size_policy.setHeightForWidth(self.logo_example.sizePolicy().hasHeightForWidth())
        self.logo_example.setSizePolicy(size_policy)
        self.logo_example.setMaximumSize(QtCore.QSize(256, 256))
        self.logo_example.setText("")
        self.logo_example.setPixmap(QtGui.QPixmap(":/res/sg_logo.png"))
        self.logo_example.setAlignment(QtCore.Qt.AlignCenter)
        self.logo_example.setObjectName("logo_example")

        # connect buttons
        self.button_file_open.clicked.connect(self._select_files)
        self.button_shotgun_import.clicked.connect(self._shotgun_import)

        # self._app.context
        # self._app.context.user
        # self._app.engine
        # self._app.project
        # self._app.shotgun   etc...
        self._app = sgtk.platform.current_bundle()

        # data
        self.default_color = None
        self.header_list = None
        self.last_edl_file_path = None
        self.project = self._app.context.project
        self.project_name = self.project['name']
        self.received_error = False
        self.table_rows_need_to_be_deleted = False
        self.user = self._app.context.user
        self.user_first_name = 'User'
        if self.user:
            self.user_first_name = self.user['name'].split()[0]
        self.wb = None
        self.ws = None

        # set-up gui
        self.button_shotgun_import.hide()
        self.progress_bar.hide()
        self.progress_bar.setValue(0)
        msg = 'Hi {}!   Please select one or more excel files...'.format(self.user['name'])
        self.label_status.setText(unicode(msg))

        # sg connection
        self.sg = self._app.shotgun

        # thread placeholder
        self._thread = None

        msg = 'Shot Comments import app initialize by {}'.format(self.user['name'])
        logger.info(msg)