Exemplo n.º 1
0
    def __init__(self, label, message, parent=None):
        super(ErrorDialog, self).__init__(parent)

        self.setWindowTitle('tk-multi-tickets Error')
        self.setWindowIcon(QtGui.QIcon(res.get_path('icon_256.png')))
        self.setWindowFlags(self.windowFlags()
                            | QtCore.Qt.WindowStaysOnTopHint)

        self.label = QtGui.QLabel(label)
        self.text = QtGui.QPlainTextEdit(message)
        self.text.setTextInteractionFlags(QtCore.Qt.TextBrowserInteraction)

        self.button = QtGui.QPushButton('Dismiss')
        self.button.setSizePolicy(
            QtGui.QSizePolicy.Maximum,
            QtGui.QSizePolicy.Maximum,
        )
        self.button.clicked.connect(self.accept)

        self.layout = QtGui.QVBoxLayout()
        self.layout.setStretch(1, 1)
        self.layout.addWidget(self.label)
        self.layout.addWidget(self.text)
        self.layout.addWidget(self.button)
        self.layout.setAlignment(self.button, QtCore.Qt.AlignRight)
        self.setLayout(self.layout)
Exemplo n.º 2
0
    def __init__(self, parent=None):
        super(Console, self).__init__(parent)

        self.setWindowTitle('Shotgun Desktop Console')
        self.setWindowIcon(QtGui.QIcon(":/tk-desktop/default_systray_icon.png"))

        self.__logs = QtGui.QPlainTextEdit()
        layout = QtGui.QHBoxLayout()
        layout.addWidget(self.__logs)
        self.setLayout(layout)

        # configure the text widget
        self.__logs.setReadOnly(True)
        self.__logs.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        self.__logs.setTextInteractionFlags(QtCore.Qt.TextSelectableByMouse)
        self.__logs.customContextMenuRequested.connect(self.on_logs_context_menu_request)
        self.__logs.setStyleSheet("QPlainTextEdit:focus { border: none; }")

        # load up previous size
        self._settings_manager = settings.UserSettings(sgtk.platform.current_bundle())
        pos = self._settings_manager.retrieve("console.pos", self.pos(), self._settings_manager.SCOPE_GLOBAL)
        size = self._settings_manager.retrieve(
            "console.size", QtCore.QSize(800, 400), self._settings_manager.SCOPE_GLOBAL)

        self.move(pos)
        self.resize(size)
Exemplo n.º 3
0
    def __init__(self, parent=None):
        super(Console, self).__init__(parent)

        self.setWindowTitle('Shotgun Desktop Console')
        self.setWindowIcon(QtGui.QIcon(":/tk-desktop/default_systray_icon.png"))

        self.__logs = QtGui.QPlainTextEdit()
        self.__find = QtGui.QLineEdit()
        self.__find_label = QtGui.QLabel()
        layout = QtGui.QVBoxLayout()
        find_layout = QtGui.QHBoxLayout()
        layout.addWidget(self.__logs)
        layout.addLayout(find_layout)
        find_layout.addStretch()
        find_layout.addWidget(self.__find)
        find_layout.addWidget(self.__find_label)
        self.setLayout(layout)

        # configure the text widget
        self.__logs.setReadOnly(True)
        self.__logs.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        self.__logs.setTextInteractionFlags(QtCore.Qt.TextSelectableByMouse)
        self.__logs.customContextMenuRequested.connect(self.on_logs_context_menu_request)
        self.__logs.setStyleSheet("QPlainTextEdit:focus { border: none; }")
        # configure the find area
        self.__find.setPlaceholderText("Find")
        self.__find_label.setText("No Results")
        self.__find_label.setFixedWidth(60)
        self.__find.returnPressed.connect(self.find)
        self.__pattern = ""
        self.__match_index = 0
        self.__matches = []
        # set shortcut
        find_shortcut = QtGui.QShortcut(QtGui.QKeySequence("Ctrl+F"), self)
        find_shortcut.activated.connect(self.focus_find)
        # load up previous size
        self._settings_manager = settings.UserSettings(sgtk.platform.current_bundle())
        pos = self._settings_manager.retrieve("console.pos", self.pos(), self._settings_manager.SCOPE_GLOBAL)
        size = self._settings_manager.retrieve(
            "console.size", QtCore.QSize(800, 400), self._settings_manager.SCOPE_GLOBAL)

        self.move(pos)
        self.resize(size)

        self.__console_handler = ConsoleLogHandler(self)
        sgtk.LogManager().initialize_custom_handler(self.__console_handler)
Exemplo n.º 4
0
    def __init__(self, parent=None):
        super(Console, self).__init__(parent)

        self.setWindowTitle("Shotgun Desktop Console")
        self.setWindowIcon(QtGui.QIcon(":/tk-desktop/default_systray_icon.png"))

        self.__logs = QtGui.QPlainTextEdit()
        layout = QtGui.QHBoxLayout()
        layout.addWidget(self.__logs)
        self.setLayout(layout)

        # configure the text widget
        self.__logs.setReadOnly(True)
        self.__logs.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        self.__logs.setTextInteractionFlags(QtCore.Qt.TextSelectableByMouse)
        self.__logs.customContextMenuRequested.connect(
            self.on_logs_context_menu_request
        )
        self.__logs.setStyleSheet("QPlainTextEdit:focus { border: none; }")

        # load up previous size
        self._settings_manager = settings.UserSettings(sgtk.platform.current_bundle())
        pos = self._settings_manager.retrieve(
            "console.pos", self.pos(), self._settings_manager.SCOPE_GLOBAL
        )
        size = self._settings_manager.retrieve(
            "console.size", QtCore.QSize(800, 400), self._settings_manager.SCOPE_GLOBAL
        )

        try:
            self.move(pos)
            self.resize(size)
        except TypeError:
            # Its possible that we've loaded a PySide value,
            # when we are using PySide2, in which case just ignore the setting.
            pass

        self.__console_handler = ConsoleLogHandler(self)
        sgtk.LogManager().initialize_custom_handler(self.__console_handler)
Exemplo n.º 5
0
    def __init__(self, parent):
        super(QPlainTextEditLogger, self).__init__()

        self.widget = QtGui.QPlainTextEdit(parent)
        self.widget.setReadOnly(True)
Exemplo n.º 6
0
    def __init__(self):
        """
        Initialize the main demo widget.
        """

        self._current_demo_info = None

        super(DemoWidget, self).__init__()

        # easy access to the app instance
        self.app = sgtk.platform.current_bundle()

        # the default class/info to use at startup
        self._default_demo_info = None

        # quick lookup of demo info as selection changes
        self._demo_info_lookup = {}

        # quick lookup of stacked widget positions via demo names
        self._demo_stack_lookup = {}

        # quick lookup of previously created file models via demo names
        self._demo_file_model_lookup = {}

        # keep a reference to all demo widgets created. this will prevent issues
        # with garbage collection
        self.__all_demos = []

        # construct the model based on the hierarchy defined in the
        # demos module
        self._demo_model = self._get_demo_model()

        # build a tree view to show all the demos
        self._demo_tree_view = QtGui.QTreeView()
        self._demo_tree_view.setModel(self._demo_model)
        self._demo_tree_view.setObjectName("demo_tree_view")
        self._demo_tree_view.setIndentation(16)
        self._demo_tree_view.header().hide()
        self._demo_tree_view.expandAll()
        self._demo_tree_view.setRootIsDecorated(False)
        self._demo_tree_view.setFocusPolicy(QtCore.Qt.NoFocus)
        self._demo_tree_view.setMinimumWidth(250)

        # shows the name of the demo
        self._demo_name = QtGui.QLabel(self)
        self._demo_name.setObjectName("demo_name")
        self._demo_name.setMinimumHeight(30)

        # shows the description of the demo
        self._demo_desc = QtGui.QLabel(self)
        self._demo_desc.setObjectName("demo_desc")
        self._demo_desc.setWordWrap(True)
        self._demo_desc.setOpenExternalLinks(True)

        # holds a stack of all demo widgets
        self._demo_widget_tab = QtGui.QStackedWidget()

        # used to display the code associated with the demos
        self._demo_code_edit = QtGui.QPlainTextEdit(self)
        self._demo_code_edit.setObjectName("demo_code_edit")
        self._demo_code_edit.setReadOnly(True)
        self._demo_code_edit.setWordWrapMode(QtGui.QTextOption.NoWrap)

        # a syntax highlighter for the code editor
        self._syntax_highlighter = PythonSyntaxHighlighter(
            self._demo_code_edit.document(), self._demo_code_edit.palette()
        )
        self._syntax_highlighter.setDocument(self._demo_code_edit.document())

        # combobox to display all python files in a demo
        self._demo_file_combo = QtGui.QComboBox()
        self._demo_file_combo.setObjectName("demo_file_combo")

        # layout the code tab
        demo_code_layout = QtGui.QVBoxLayout()
        demo_code_layout.addWidget(self._demo_code_edit)
        demo_code_layout.addWidget(self._demo_file_combo)
        demo_code_layout.setAlignment(self._demo_file_combo, QtCore.Qt.AlignRight)

        # a single widget to wrap the code layout
        demo_code_widget = QtGui.QWidget()
        demo_code_widget.setLayout(demo_code_layout)

        # tab widget displays the current demo
        self._demo_tabs = QtGui.QTabWidget(self)
        self._demo_tabs.setTabPosition(QtGui.QTabWidget.South)
        self._demo_tabs.setMinimumWidth(625)

        # add the widgets as tabs
        self._demo_tabs.addTab(self._demo_widget_tab, "Interactive Demo")
        self._demo_tabs.addTab(demo_code_widget, "Code")

        # an overlay of the tabs for displaying errors, etc.
        self._overlay = overlay.ShotgunOverlayWidget(self._demo_tabs)

        demo_header_layout = QtGui.QHBoxLayout()
        demo_header_layout.addWidget(self._demo_name)
        demo_header_layout.addStretch()

        # layout the demo display widgets
        demo_layout = QtGui.QVBoxLayout()
        demo_layout.addLayout(demo_header_layout)
        demo_layout.addWidget(self._demo_desc)
        demo_layout.addWidget(self._demo_tabs)

        # wrapper widget for the display layout
        demo_stack = QtGui.QWidget()
        demo_stack.setLayout(demo_layout)

        # add the primary wrapper widgets to this splitter
        self.addWidget(self._demo_tree_view)
        self.addWidget(demo_stack)

        # make the demo side stretch 3x as fast as the demo tree view
        self.setStretchFactor(1, 3)

        # grab the selection model from the tree view and connect it up
        # to handle a new demo being selected
        # NOTE: this has to be done in 2 calls to avoid segfault!
        selection_model = self._demo_tree_view.selectionModel()
        selection_model.selectionChanged.connect(self._on_selection_changed)

        # handle the user selecting a new file to display in the code widget
        self._demo_file_combo.activated[str].connect(self._on_file_selected)

        # set the default demo
        self._set_default_demo()

        QtCore.QCoreApplication.instance().aboutToQuit.connect(self.destroy)
Exemplo n.º 7
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)
Exemplo n.º 8
0
    def setupUi(self, LoadingProjectWidget):
        LoadingProjectWidget.setObjectName("LoadingProjectWidget")
        LoadingProjectWidget.resize(736, 755)
        self.verticalLayout = QtGui.QVBoxLayout(LoadingProjectWidget)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setContentsMargins(0, 0, 0, 12)
        self.verticalLayout.setObjectName("verticalLayout")
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.shotgun_spinning_widget = ShotgunSpinningWidget(
            LoadingProjectWidget)
        self.shotgun_spinning_widget.setMinimumSize(QtCore.QSize(0, 90))
        self.shotgun_spinning_widget.setMaximumSize(QtCore.QSize(16777215, 80))
        self.shotgun_spinning_widget.setObjectName("shotgun_spinning_widget")
        self.verticalLayout.addWidget(self.shotgun_spinning_widget)
        self.bottom = QtGui.QWidget(LoadingProjectWidget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.bottom.sizePolicy().hasHeightForWidth())
        self.bottom.setSizePolicy(sizePolicy)
        self.bottom.setObjectName("bottom")
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.bottom)
        self.verticalLayout_2.setSpacing(0)
        self.verticalLayout_2.setContentsMargins(-1, -1, -1, 0)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.widget = QtGui.QWidget(self.bottom)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Ignored)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.widget.sizePolicy().hasHeightForWidth())
        self.widget.setSizePolicy(sizePolicy)
        self.widget.setObjectName("widget")
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.widget)
        self.verticalLayout_3.setSpacing(5)
        self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.progress_output = QtGui.QPlainTextEdit(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.progress_output.sizePolicy().hasHeightForWidth())
        self.progress_output.setSizePolicy(sizePolicy)
        self.progress_output.setReadOnly(True)
        self.progress_output.setObjectName("progress_output")
        self.verticalLayout_3.addWidget(self.progress_output)
        self.verticalLayout_2.addWidget(self.widget)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setSpacing(-1)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.show_hide_details = QtGui.QPushButton(self.bottom)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum,
                                       QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.show_hide_details.sizePolicy().hasHeightForWidth())
        self.show_hide_details.setSizePolicy(sizePolicy)
        self.show_hide_details.setFlat(True)
        self.show_hide_details.setObjectName("show_hide_details")
        self.horizontalLayout.addWidget(self.show_hide_details)
        self.verticalLayout_2.addLayout(self.horizontalLayout)
        self.verticalLayout.addWidget(self.bottom)

        self.retranslateUi(LoadingProjectWidget)
        QtCore.QMetaObject.connectSlotsByName(LoadingProjectWidget)