Пример #1
0
class MainUI(QApplication):
    def __init__(self,
                 saveDefaultPath: List[str] = None,
                 loadFile: List[str] = None,
                 time: float = None,
                 enableIa: bool = None):
        super(MainUI, self).__init__(argv)
        if loadFile:
            self.game = Game.loadJson(loadFile[0],
                                      self.trigger,
                                      allowedTime=time)
        else:
            self.game = Game(self.trigger, allowedTime=time)
        self.enableIa = enableIa
        self.saveDefaultPath = None if not saveDefaultPath or saveDefaultPath.__class__ != list else saveDefaultPath[
            0]
        self.ia = MinMax(game=self.game)

    def initialize(self):
        screen = QGuiApplication.primaryScreen().size()
        size = screen.height() * 0.7
        self.window = QMainWindow()
        self.window.setAutoFillBackground(True)
        self.window.setWindowFlag(
            PySide6.QtCore.Qt.WindowType.WindowMaximizeButtonHint, False)
        self.window.setWindowTitle('Chess')
        self.window.resize(size, size)
        self.window.move((screen.width() - self.window.width()) // 2,
                         (screen.height() - self.window.height()) // 2)
        self.window.show()
        self.margin = 10
        self.button_size = (size - 2 * self.margin) // 8

    def construct(self):
        self.container = QWidget()
        self.content = QWidget(parent=self.container)
        # self.content = QWidget()
        self.window.setCentralWidget(self.container)
        self.constructMenu()
        self.constructButtons()
        self.constructChoices()
        self.createClock()
        self.updateView()
        self.window.resizeEvent = self.onResize

    @staticmethod
    def originalTileColor(i: int, j: int) -> ColorPalette:
        return ColorPalette.TILE_ONE if i % 2 == j % 2 else ColorPalette.TILE_TWO

    def onGridClicked(self, i, j):
        if self.selected != None and (self.selected,
                                      (i, j)) in self.previousSuggestions:
            self.game.move(self.selected, (i, j))
            if self.enableIa and not self.game.player:
                move = self.ia.generate()
                self.game.move(frm=move[0], to=move[1])

        self.selected = None
        self.previousSuggestions = None

        if self.game.map[i, j] != Piece.EMPTY:
            self.selected = (i, j)
            self.previousSuggestions = self.game.getAvailableMoves(i, j)

        self.updateView()

    def onUpgrade(self, pieceIndex):
        self.game.choice(self.getChoices()[pieceIndex])

    def updateView(self, event: QResizeEvent = None):
        self.content.setEnabled(self.game.winner() == Result.RUNNING)
        if self.game.upgrade:
            self.choicesView.show()
            self.content.setDisabled(True)
        else:
            self.choicesView.hide()
            self.content.setDisabled(False)

        if not event or event.oldSize().width() - event.size().width():
            self.button_size = (self.window.width() - 2 * self.margin) // 8
        elif not event or event.oldSize().height() - event.size().height():
            self.button_size = (self.window.height() - 2 * self.margin -
                                self.window.menuBar().height() -
                                self.clockContainer.height()) // 8
        boardSize = 2 * self.margin + 8 * self.button_size

        self.container.resize(boardSize,
                              boardSize + self.clockContainer.height())
        self.window.resize(
            self.container.width(),
            self.container.height() + self.window.menuBar().height())
        self.choicesView.resize(
            len(self.choicesButtons) * (self.margin + self.button_size) +
            self.margin, self.margin * 2 + self.button_size)
        self.choicesView.move(
            (boardSize - self.choicesView.width()) // 2,
            (self.content.height() - self.choicesView.height()) // 2)
        self.content.resize(boardSize, boardSize)
        self.clockContainer.resize(boardSize, self.clockContainer.height())
        self.content.move(0, self.clockContainer.height())
        self.clockB.move(boardSize - self.clockB.width() - self.margin,
                         self.margin)

        for i, j in self.buttons:
            self.buttons[i, j].resize(self.button_size, self.button_size)
            self.buttons[i, j].move(self.button_size * j + self.margin,
                                    self.button_size * i + self.margin)
            self.buttons[i, j].setIcon(self.game.map[i, j].getIcon())
            self.setBackgourdColor(self.buttons[i, j],
                                   self.originalTileColor(i, j))
            self.buttons[i, j].setIconSize(
                QSize(self.buttons[i, j].width() * 2 / 3,
                      self.buttons[i, j].height() * 2 / 3))

        winner = self.game.winner()

        if winner != Result.RUNNING:
            self.showDialog(
                str(winner) + "\nPlease start a new game.", "Info",
                QMessageBox.Ok, lambda _: None)
            return

        for i in range(len(self.choicesButtons)):
            self.choicesButtons[i].setIcon(self.getChoices()[i].getIcon())
            self.choicesButtons[i].setIconSize(
                QSize(self.button_size * 2 / 3, self.button_size * 2 / 3))
            self.choicesButtons[i].resize(self.button_size, self.button_size)
            btnW = self.button_size + self.margin
            self.choicesButtons[i].move(
                self.margin // 2 +
                (self.choicesView.width() - btnW * len(self.choicesButtons)) //
                2 + btnW * i,
                (self.choicesView.height() - self.button_size) // 2)

        if self.selected:
            self.setBackgourdColor(
                self.buttons[self.selected[0], self.selected[1]],
                ColorPalette.ACTIVE_COLOR)

        if (self.previousSuggestions):
            for (_, (mi, mj)) in self.previousSuggestions:
                self.setBackgourdColor(
                    self.buttons[mi, mj],
                    ColorPalette.ATTACK if self.game.map[mi, mj] != Piece.EMPTY
                    else ColorPalette.SUGGESTED_MOVE)

        if self.game.check():
            self.setBackgourdColor(
                self.buttons[self.game.getPiece(
                    Piece.P1_KING if self.game.player else Piece.P2_KING)],
                ColorPalette.CHECK)
        self.undo.setEnabled(len(self.game.undoes) > 0)
        self.redo.setEnabled(len(self.game.redos) > 0)

    @staticmethod
    def setBackgourdColor(widget: QWidget, color: ColorPalette):
        if 'background-color' in widget.styleSheet():
            bk_index_start = widget.styleSheet().index('background-color')
            bk_index_end = widget.styleSheet().index(';', bk_index_start) + 1
            widget.setStyleSheet(widget.styleSheet()[:bk_index_start] +
                                 widget.styleSheet()[bk_index_end:] +
                                 'background-color: ' + color.value + ';')
        else:
            widget.setStyleSheet(widget.styleSheet() + 'background-color: ' +
                                 color.value + ';')

    def onResize(self, event: QResizeEvent):
        self.updateView(event)

    def getChoices(self) -> List[Piece]:
        return [
            Piece(choice.value % Piece.P2_PAWN.value +
                  (0 if self.game.player else Piece.P2_PAWN.value))
            for choice in
            [Piece.P1_ROOK, Piece.P1_KNIGHT, Piece.P1_BISHOP, Piece.P1_QUEEN]
        ]

    def trigger(self):
        self.updateView()

    def constructChoices(self):
        self.game.trigger = self.trigger
        self.choicesView: QWidget = QWidget(parent=self.container)
        # self.choicesBackground: QWidget = QWidget(parent=self.choicesView)
        self.choicesButtons: list[QPushButton] = []
        self.choicesView.setStyleSheet("border: solid;border-width: 2;")
        self.setBackgourdColor(widget=self.choicesView,
                               color=ColorPalette.CHOICES_BACKGROUND)

        for i in range(len(self.getChoices())):
            self.choicesButtons.append(QPushButton(self.choicesView))
            self.choicesButtons[i].clicked.connect(
                functools.partial(self.onUpgrade, i))

    def constructButtons(self):
        self.buttons: List[QPushButton] = {}
        self.selected = None
        self.previousSuggestions = None
        for i in range(8):
            for j in range(8):
                self.buttons[i, j] = QPushButton(self.content)
                self.buttons[i, j].clicked.connect(
                    functools.partial(self.onGridClicked, i, j))
                self.buttons[i, j].setStyleSheet(
                    f"background-color: {self.originalTileColor(i, j).value};")

    def constructMenu(self):
        menuBar = QMenuBar()
        self.window.setMenuBar(menuBar)
        file = menuBar.addMenu('File')
        edit = menuBar.addMenu('Edit')
        file.addAction('New Game').triggered.connect(
            functools.partial(self.newGame, ))
        self.undo = edit.addAction('Undo')
        self.undo.triggered.connect(lambda _: self.game.undo())
        self.redo = edit.addAction('Redo')
        self.redo.triggered.connect(lambda _: self.game.redo())
        sv = file.addMenu('Save')
        sv.addAction('as text').triggered.connect(
            functools.partial(self.save, self.game.saveAsText))
        sv.addAction('as PGN').triggered.connect(
            functools.partial(self.save, self.game.saveAsPGN))
        sv.addAction('as JSON').triggered.connect(
            functools.partial(self.save, self.game.saveAsJSON))
        sva = file.addMenu('Save As')
        sva.addAction('as text').triggered.connect(
            functools.partial(self.saveAs, self.game.saveAsText))
        sva.addAction('as PGN').triggered.connect(
            functools.partial(self.saveAs, self.game.saveAsPGN))
        sva.addAction('as JSON').triggered.connect(
            functools.partial(self.saveAs, self.game.saveAsJSON))
        file.addAction('Load Game').triggered.connect(
            functools.partial(self.load, self.game.loadJson))
        file.addAction('Abandon').triggered.connect(
            functools.partial(self.showDialog,
                              "Do you want really to abandon?", "Warning",
                              QMessageBox.No | QMessageBox.Yes, self.abandon))
        file.addAction('Draw').triggered.connect(
            functools.partial(self.showDialog,
                              ("White" if self.game.player else "Black") +
                              " is proposing draw", "Info",
                              QMessageBox.No | QMessageBox.Yes,
                              self.proposeDraw))
        file.addAction('Quit').triggered.connect(lambda _: exit(0))

    def save(self, f):
        if self.saveDefaultPath:
            f(self.saveDefaultPath)
        else:
            self.saveAs(f)

    def saveAs(self, f):
        saveAs = QFileDialog()
        saveAs.setDefaultSuffix('.json')
        self.timer.stop()
        fileName, _ = saveAs.getSaveFileName(parent=self.window,
                                             filter="JSON (*.json)",
                                             caption="Save as json file.")
        self.timer.start(1)
        if fileName:
            self.saveDefaultPath = fileName
            self.save(f)

    def load(self, f):
        self.timer.stop()
        fileName, _ = QFileDialog.getOpenFileName(parent=self.window,
                                                  filter="JSON (*.json)")
        self.timer.start()
        if fileName:
            self.saveDefaultPath = fileName
            self.game: Game = f(fileName,
                                trigger=self.trigger,
                                maxTime=self.game.allowedTime)
            self.updateView()

    def newGame(self):
        self.game: Game = Game(self.trigger, allowedTime=self.game.allowedTime)
        self.construct()

    def createClock(self):
        self.clockContainer = QWidget(self.container)
        self.clockW: QLabel = QLabel(parent=self.clockContainer,
                                     text=self.format(
                                         self.game.getRemainingTime(True)))
        self.clockB: QLabel = QLabel(parent=self.clockContainer,
                                     text=self.format(
                                         self.game.getRemainingTime(False)))
        self.clockW.move(self.margin, self.margin)
        self.timer: QTimer = QTimer(self.clockContainer)
        self.timer.timeout.connect(self.updateTime)
        self.timer.start(1000)

    def showDialog(self, text: str, title: str, buttons, callback):
        dialog = QMessageBox(self.window)
        dialog.setWindowTitle(title)
        dialog.setText(text)
        dialog.setStandardButtons(buttons)
        dialog.buttonClicked.connect(callback)
        dialog.exec_()

    def abandon(self, value: QPushButton):
        if value.text().lower().count('yes'):
            self.game.abandon = self.game.player
            self.updateView()

    def proposeDraw(self, value: QPushButton):
        if value.text().lower().count('yes'):
            self.game.draw = True
            self.updateView()

    def updateTime(self):
        wr = self.game.getRemainingTime(True)
        br = self.game.getRemainingTime(False)
        if self.game.winner() == Result.RUNNING:
            c = wr if self.game.player else br
            self.timer.start(c - int(c) if c > 0 else 1)
        else:
            self.timer.stop()
            self.updateView()
        self.clockW.setText(self.format(wr))
        self.clockB.setText(self.format(br))

    def format(self, time: float):
        if time <= 0:
            return "tmout"
        st = ""
        if time >= 3600:
            st += f"{time//3600}:"
            time = time % 3600
        st += '0' if time // 60 < 10 else ''
        st += f"{time//60}:"
        time = time % 60
        st += '0' if time < 10 else ''
        st += f"{int(time)}"
        return st
Пример #2
0
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        if not MainWindow.objectName():
            MainWindow.setObjectName(u"MainWindow")
        MainWindow.setWindowModality(Qt.ApplicationModal)
        MainWindow.resize(1492, 1852)
        sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
        MainWindow.setSizePolicy(sizePolicy)
        MainWindow.setMinimumSize(QSize(700, 700))
        MainWindow.setMaximumSize(QSize(16777215, 16777215))
        MainWindow.setBaseSize(QSize(600, 600))
        font = QFont()
        font.setPointSize(12)
        font.setKerning(True)
        MainWindow.setFont(font)
        MainWindow.setAutoFillBackground(False)
        MainWindow.setStyleSheet(u"")
        MainWindow.setDocumentMode(False)
        MainWindow.setTabShape(QTabWidget.Rounded)
        MainWindow.setDockOptions(QMainWindow.AllowTabbedDocks|QMainWindow.AnimatedDocks)
        MainWindow.setUnifiedTitleAndToolBarOnMac(False)
        self.action_Quit = QAction(MainWindow)
        self.action_Quit.setObjectName(u"action_Quit")
        self.main_widget = QWidget(MainWindow)
        self.main_widget.setObjectName(u"main_widget")
        self.main_widget.setEnabled(True)
        self.main_widget.setMinimumSize(QSize(650, 650))
        self.main_widget.setContextMenuPolicy(Qt.DefaultContextMenu)
        self.main_widget.setAutoFillBackground(False)
        self.main_widget.setStyleSheet(u"")
        self.main_layout = QGridLayout(self.main_widget)
        self.main_layout.setObjectName(u"main_layout")
        self.horizontalLayout_2 = QHBoxLayout()
        self.horizontalLayout_2.setObjectName(u"horizontalLayout_2")
        self.log_button = QPushButton(self.main_widget)
        self.log_button.setObjectName(u"log_button")
        sizePolicy1 = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        sizePolicy1.setHorizontalStretch(0)
        sizePolicy1.setVerticalStretch(0)
        sizePolicy1.setHeightForWidth(self.log_button.sizePolicy().hasHeightForWidth())
        self.log_button.setSizePolicy(sizePolicy1)
        self.log_button.setMinimumSize(QSize(24, 24))
        font1 = QFont()
        font1.setPointSize(9)
        font1.setBold(True)
        font1.setKerning(True)
        self.log_button.setFont(font1)
        self.log_button.setCursor(QCursor(Qt.PointingHandCursor))
        self.log_button.setCheckable(False)
        self.log_button.setFlat(True)

        self.horizontalLayout_2.addWidget(self.log_button)


        self.main_layout.addLayout(self.horizontalLayout_2, 5, 2, 1, 1)

        self.shuttle_widget = QWidget(self.main_widget)
        self.shuttle_widget.setObjectName(u"shuttle_widget")
        self.shuttle_widget.setMinimumSize(QSize(600, 600))
        self.shuttle_widget.setMaximumSize(QSize(600, 600))
        self.shuttle_widget.setAutoFillBackground(False)
        self.shuttle_widget.setStyleSheet(u"QWidget#shuttle_widget {background: url(images/ShuttleXpress_Black.png);\n"
"        background-repeat:no-repeat;}\n"
"       ")
        self.button_1 = QCheckBox(self.shuttle_widget)
        self.button_1.setObjectName(u"button_1")
        self.button_1.setGeometry(QRect(80, 266, 24, 24))
        sizePolicy1.setHeightForWidth(self.button_1.sizePolicy().hasHeightForWidth())
        self.button_1.setSizePolicy(sizePolicy1)
        self.button_1.setMinimumSize(QSize(24, 24))
        self.button_1.setFont(font)
        self.button_1.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.usb_status = QPushButton(self.shuttle_widget)
        self.usb_status.setObjectName(u"usb_status")
        self.usb_status.setEnabled(False)
        self.usb_status.setGeometry(QRect(288, 10, 24, 24))
        sizePolicy1.setHeightForWidth(self.usb_status.sizePolicy().hasHeightForWidth())
        self.usb_status.setSizePolicy(sizePolicy1)
        self.usb_status.setMinimumSize(QSize(24, 24))
        self.usb_status.setFont(font1)
        self.usb_status.setCursor(QCursor(Qt.ArrowCursor))
        self.usb_status.setAutoFillBackground(False)
        self.usb_status.setText(u"")
        icon = QIcon()
        icon.addFile(u"images/usb_black_24.png", QSize(), QIcon.Disabled, QIcon.Off)
        icon.addFile(u"images/usb_white_24.png", QSize(), QIcon.Disabled, QIcon.On)
        self.usb_status.setIcon(icon)
        self.usb_status.setIconSize(QSize(24, 24))
        self.usb_status.setCheckable(True)
        self.usb_status.setChecked(False)
        self.usb_status.setFlat(True)
        self.button_5 = QCheckBox(self.shuttle_widget)
        self.button_5.setObjectName(u"button_5")
        self.button_5.setGeometry(QRect(498, 266, 24, 24))
        sizePolicy1.setHeightForWidth(self.button_5.sizePolicy().hasHeightForWidth())
        self.button_5.setSizePolicy(sizePolicy1)
        self.button_5.setMinimumSize(QSize(24, 24))
        self.button_5.setFont(font)
        self.button_5.setLayoutDirection(Qt.RightToLeft)
        self.button_5.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_pos4 = QRadioButton(self.shuttle_widget)
        self.wheel_pos4.setObjectName(u"wheel_pos4")
        self.wheel_pos4.setGeometry(QRect(382, 164, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_pos4.sizePolicy().hasHeightForWidth())
        self.wheel_pos4.setSizePolicy(sizePolicy1)
        self.wheel_pos4.setMinimumSize(QSize(24, 24))
        self.wheel_pos4.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_cent0 = QRadioButton(self.shuttle_widget)
        self.wheel_cent0.setObjectName(u"wheel_cent0")
        self.wheel_cent0.setGeometry(QRect(289, 130, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_cent0.sizePolicy().hasHeightForWidth())
        self.wheel_cent0.setSizePolicy(sizePolicy1)
        self.wheel_cent0.setMinimumSize(QSize(24, 24))
        self.wheel_cent0.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_cent0.setChecked(True)
        self.wheel_pos1 = QRadioButton(self.shuttle_widget)
        self.wheel_pos1.setObjectName(u"wheel_pos1")
        self.wheel_pos1.setGeometry(QRect(314, 133, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_pos1.sizePolicy().hasHeightForWidth())
        self.wheel_pos1.setSizePolicy(sizePolicy1)
        self.wheel_pos1.setMinimumSize(QSize(24, 24))
        self.wheel_pos1.setStyleSheet(u"color: white;")
        self.wheel_pos2 = QRadioButton(self.shuttle_widget)
        self.wheel_pos2.setObjectName(u"wheel_pos2")
        self.wheel_pos2.setGeometry(QRect(338, 139, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_pos2.sizePolicy().hasHeightForWidth())
        self.wheel_pos2.setSizePolicy(sizePolicy1)
        self.wheel_pos2.setMinimumSize(QSize(24, 24))
        self.wheel_pos2.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.dial = QDial(self.shuttle_widget)
        self.dial.setObjectName(u"dial")
        self.dial.setGeometry(QRect(197, 178, 216, 216))
        sizePolicy2 = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Preferred)
        sizePolicy2.setHorizontalStretch(0)
        sizePolicy2.setVerticalStretch(0)
        sizePolicy2.setHeightForWidth(self.dial.sizePolicy().hasHeightForWidth())
        self.dial.setSizePolicy(sizePolicy2)
        self.dial.setMinimumSize(QSize(24, 24))
        self.dial.setAutoFillBackground(False)
        self.dial.setStyleSheet(u"background-color: black;")
        self.dial.setMinimum(0)
        self.dial.setMaximum(10)
        self.dial.setPageStep(1)
        self.dial.setValue(5)
        self.dial.setSliderPosition(5)
        self.dial.setInvertedAppearance(False)
        self.dial.setInvertedControls(False)
        self.dial.setWrapping(True)
        self.dial.setNotchTarget(3.700000000000000)
        self.dial.setNotchesVisible(False)
        self.wheel_neg6 = QRadioButton(self.shuttle_widget)
        self.wheel_neg6.setObjectName(u"wheel_neg6")
        self.wheel_neg6.setGeometry(QRect(162, 204, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_neg6.sizePolicy().hasHeightForWidth())
        self.wheel_neg6.setSizePolicy(sizePolicy1)
        self.wheel_neg6.setMinimumSize(QSize(24, 24))
        self.wheel_neg6.setStyleSheet(u"color: white;")
        self.wheel_pos5 = QRadioButton(self.shuttle_widget)
        self.wheel_pos5.setObjectName(u"wheel_pos5")
        self.wheel_pos5.setGeometry(QRect(400, 182, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_pos5.sizePolicy().hasHeightForWidth())
        self.wheel_pos5.setSizePolicy(sizePolicy1)
        self.wheel_pos5.setMinimumSize(QSize(24, 24))
        self.wheel_pos5.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.button_2 = QCheckBox(self.shuttle_widget)
        self.button_2.setObjectName(u"button_2")
        self.button_2.setGeometry(QRect(156, 122, 24, 24))
        sizePolicy1.setHeightForWidth(self.button_2.sizePolicy().hasHeightForWidth())
        self.button_2.setSizePolicy(sizePolicy1)
        self.button_2.setMinimumSize(QSize(24, 24))
        self.button_2.setFont(font)
        self.button_2.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_neg5 = QRadioButton(self.shuttle_widget)
        self.wheel_neg5.setObjectName(u"wheel_neg5")
        self.wheel_neg5.setGeometry(QRect(178, 182, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_neg5.sizePolicy().hasHeightForWidth())
        self.wheel_neg5.setSizePolicy(sizePolicy1)
        self.wheel_neg5.setMinimumSize(QSize(24, 24))
        self.wheel_neg5.setStyleSheet(u"color: white;")
        self.wheel_pos6 = QRadioButton(self.shuttle_widget)
        self.wheel_pos6.setObjectName(u"wheel_pos6")
        self.wheel_pos6.setGeometry(QRect(416, 204, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_pos6.sizePolicy().hasHeightForWidth())
        self.wheel_pos6.setSizePolicy(sizePolicy1)
        self.wheel_pos6.setMinimumSize(QSize(24, 24))
        self.wheel_pos6.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_neg1 = QRadioButton(self.shuttle_widget)
        self.wheel_neg1.setObjectName(u"wheel_neg1")
        self.wheel_neg1.setGeometry(QRect(264, 133, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_neg1.sizePolicy().hasHeightForWidth())
        self.wheel_neg1.setSizePolicy(sizePolicy1)
        self.wheel_neg1.setMinimumSize(QSize(24, 24))
        self.wheel_neg1.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.button_4 = QCheckBox(self.shuttle_widget)
        self.button_4.setObjectName(u"button_4")
        self.button_4.setGeometry(QRect(430, 122, 24, 24))
        sizePolicy1.setHeightForWidth(self.button_4.sizePolicy().hasHeightForWidth())
        self.button_4.setSizePolicy(sizePolicy1)
        self.button_4.setMinimumSize(QSize(24, 24))
        self.button_4.setFont(font)
        self.button_4.setLayoutDirection(Qt.RightToLeft)
        self.button_4.setAutoFillBackground(False)
        self.button_4.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_pos7 = QRadioButton(self.shuttle_widget)
        self.wheel_pos7.setObjectName(u"wheel_pos7")
        self.wheel_pos7.setGeometry(QRect(427, 229, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_pos7.sizePolicy().hasHeightForWidth())
        self.wheel_pos7.setSizePolicy(sizePolicy1)
        self.wheel_pos7.setMinimumSize(QSize(24, 24))
        self.wheel_pos7.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.button_3 = QCheckBox(self.shuttle_widget)
        self.button_3.setObjectName(u"button_3")
        self.button_3.setGeometry(QRect(290, 72, 24, 24))
        sizePolicy1.setHeightForWidth(self.button_3.sizePolicy().hasHeightForWidth())
        self.button_3.setSizePolicy(sizePolicy1)
        self.button_3.setMinimumSize(QSize(24, 24))
        self.button_3.setFont(font)
        self.button_3.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.button_3.setTristate(False)
        self.wheel_neg2 = QRadioButton(self.shuttle_widget)
        self.wheel_neg2.setObjectName(u"wheel_neg2")
        self.wheel_neg2.setGeometry(QRect(240, 139, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_neg2.sizePolicy().hasHeightForWidth())
        self.wheel_neg2.setSizePolicy(sizePolicy1)
        self.wheel_neg2.setMinimumSize(QSize(24, 24))
        self.wheel_neg2.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_pos3 = QRadioButton(self.shuttle_widget)
        self.wheel_pos3.setObjectName(u"wheel_pos3")
        self.wheel_pos3.setGeometry(QRect(361, 149, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_pos3.sizePolicy().hasHeightForWidth())
        self.wheel_pos3.setSizePolicy(sizePolicy1)
        self.wheel_pos3.setMinimumSize(QSize(24, 24))
        self.wheel_pos3.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_neg3 = QRadioButton(self.shuttle_widget)
        self.wheel_neg3.setObjectName(u"wheel_neg3")
        self.wheel_neg3.setGeometry(QRect(217, 149, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_neg3.sizePolicy().hasHeightForWidth())
        self.wheel_neg3.setSizePolicy(sizePolicy1)
        self.wheel_neg3.setMinimumSize(QSize(24, 24))
        self.wheel_neg3.setStyleSheet(u"color: white;")
        self.wheel_neg4 = QRadioButton(self.shuttle_widget)
        self.wheel_neg4.setObjectName(u"wheel_neg4")
        self.wheel_neg4.setGeometry(QRect(196, 164, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_neg4.sizePolicy().hasHeightForWidth())
        self.wheel_neg4.setSizePolicy(sizePolicy1)
        self.wheel_neg4.setMinimumSize(QSize(24, 24))
        self.wheel_neg4.setStyleSheet(u"background: #000000ff;\n"
"         color: white;\n"
"        ")
        self.wheel_neg7 = QRadioButton(self.shuttle_widget)
        self.wheel_neg7.setObjectName(u"wheel_neg7")
        self.wheel_neg7.setGeometry(QRect(151, 229, 24, 24))
        sizePolicy1.setHeightForWidth(self.wheel_neg7.sizePolicy().hasHeightForWidth())
        self.wheel_neg7.setSizePolicy(sizePolicy1)
        self.wheel_neg7.setMinimumSize(QSize(24, 24))
        self.wheel_neg7.setStyleSheet(u"color: white;")
        self.dial.raise_()
        self.button_1.raise_()
        self.usb_status.raise_()
        self.button_5.raise_()
        self.wheel_pos4.raise_()
        self.wheel_cent0.raise_()
        self.wheel_pos1.raise_()
        self.wheel_pos2.raise_()
        self.wheel_neg6.raise_()
        self.wheel_pos5.raise_()
        self.button_2.raise_()
        self.wheel_neg5.raise_()
        self.wheel_pos6.raise_()
        self.wheel_neg1.raise_()
        self.button_4.raise_()
        self.wheel_pos7.raise_()
        self.button_3.raise_()
        self.wheel_neg2.raise_()
        self.wheel_pos3.raise_()
        self.wheel_neg3.raise_()
        self.wheel_neg4.raise_()
        self.wheel_neg7.raise_()

        self.main_layout.addWidget(self.shuttle_widget, 3, 2, 1, 1)

        self.horizontalLayout = QHBoxLayout()
        self.horizontalLayout.setObjectName(u"horizontalLayout")
        self.about_button = QPushButton(self.main_widget)
        self.about_button.setObjectName(u"about_button")
        sizePolicy1.setHeightForWidth(self.about_button.sizePolicy().hasHeightForWidth())
        self.about_button.setSizePolicy(sizePolicy1)
        self.about_button.setMinimumSize(QSize(24, 24))
        self.about_button.setFont(font1)
        self.about_button.setCursor(QCursor(Qt.WhatsThisCursor))
        self.about_button.setCheckable(False)
        self.about_button.setFlat(True)

        self.horizontalLayout.addWidget(self.about_button)


        self.main_layout.addLayout(self.horizontalLayout, 1, 2, 1, 1)

        self.horizontalLayout_3 = QHBoxLayout()
        self.horizontalLayout_3.setObjectName(u"horizontalLayout_3")
        self.plug_button = QPushButton(self.main_widget)
        self.plug_button.setObjectName(u"plug_button")
        sizePolicy1.setHeightForWidth(self.plug_button.sizePolicy().hasHeightForWidth())
        self.plug_button.setSizePolicy(sizePolicy1)
        self.plug_button.setMinimumSize(QSize(24, 24))
        self.plug_button.setFont(font1)
        self.plug_button.setCursor(QCursor(Qt.PointingHandCursor))
        self.plug_button.setCheckable(False)
        self.plug_button.setFlat(True)

        self.horizontalLayout_3.addWidget(self.plug_button)


        self.main_layout.addLayout(self.horizontalLayout_3, 3, 1, 1, 1)

        self.verticalLayout = QVBoxLayout()
        self.verticalLayout.setObjectName(u"verticalLayout")
        self.conf_button = QPushButton(self.main_widget)
        self.conf_button.setObjectName(u"conf_button")
        sizePolicy1.setHeightForWidth(self.conf_button.sizePolicy().hasHeightForWidth())
        self.conf_button.setSizePolicy(sizePolicy1)
        self.conf_button.setMinimumSize(QSize(24, 24))
        self.conf_button.setFont(font1)
        self.conf_button.setCursor(QCursor(Qt.PointingHandCursor))
        self.conf_button.setCheckable(False)
        self.conf_button.setFlat(True)

        self.verticalLayout.addWidget(self.conf_button)


        self.main_layout.addLayout(self.verticalLayout, 3, 4, 1, 1)

        MainWindow.setCentralWidget(self.main_widget)
        self.statusbar = QStatusBar(MainWindow)
        self.statusbar.setObjectName(u"statusbar")
        self.statusbar.setMinimumSize(QSize(600, 0))
        MainWindow.setStatusBar(self.statusbar)
        self.about_widget = QDockWidget(MainWindow)
        self.about_widget.setObjectName(u"about_widget")
        self.about_widget.setEnabled(True)
        sizePolicy3 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred)
        sizePolicy3.setHorizontalStretch(0)
        sizePolicy3.setVerticalStretch(0)
        sizePolicy3.setHeightForWidth(self.about_widget.sizePolicy().hasHeightForWidth())
        self.about_widget.setSizePolicy(sizePolicy3)
        self.about_widget.setMinimumSize(QSize(600, 600))
        self.about_widget.setVisible(True)
        self.about_widget.setFloating(False)
        self.about_widget.setFeatures(QDockWidget.DockWidgetClosable|QDockWidget.DockWidgetMovable)
        self.about_widget.setAllowedAreas(Qt.TopDockWidgetArea)
        self.about_layout = QWidget()
        self.about_layout.setObjectName(u"about_layout")
        sizePolicy3.setHeightForWidth(self.about_layout.sizePolicy().hasHeightForWidth())
        self.about_layout.setSizePolicy(sizePolicy3)
        self.about_layout.setAutoFillBackground(False)
        self.gridLayout_3 = QGridLayout(self.about_layout)
        self.gridLayout_3.setObjectName(u"gridLayout_3")
        self.about_text = QTextEdit(self.about_layout)
        self.about_text.setObjectName(u"about_text")
        self.about_text.setFocusPolicy(Qt.WheelFocus)
        self.about_text.setAcceptDrops(False)
        self.about_text.setStyleSheet(u"color: white;")
        self.about_text.setFrameShape(QFrame.StyledPanel)
        self.about_text.setFrameShadow(QFrame.Sunken)
        self.about_text.setUndoRedoEnabled(False)
        self.about_text.setReadOnly(True)
        self.about_text.setAcceptRichText(True)

        self.gridLayout_3.addWidget(self.about_text, 0, 0, 1, 1)

        self.about_widget.setWidget(self.about_layout)
        MainWindow.addDockWidget(Qt.TopDockWidgetArea, self.about_widget)
        self.log_widget = QDockWidget(MainWindow)
        self.log_widget.setObjectName(u"log_widget")
        self.log_widget.setEnabled(True)
        self.log_widget.setMinimumSize(QSize(550, 158))
        self.log_widget.setFont(font)
        self.log_widget.setVisible(True)
        self.log_widget.setFloating(False)
        self.log_widget.setFeatures(QDockWidget.DockWidgetClosable|QDockWidget.DockWidgetFloatable|QDockWidget.DockWidgetMovable)
        self.log_widget.setAllowedAreas(Qt.BottomDockWidgetArea)
        self.log_layout = QWidget()
        self.log_layout.setObjectName(u"log_layout")
        sizePolicy4 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
        sizePolicy4.setHorizontalStretch(0)
        sizePolicy4.setVerticalStretch(0)
        sizePolicy4.setHeightForWidth(self.log_layout.sizePolicy().hasHeightForWidth())
        self.log_layout.setSizePolicy(sizePolicy4)
        self.gridLayout_2 = QGridLayout(self.log_layout)
        self.gridLayout_2.setObjectName(u"gridLayout_2")
        self.log_content_layout = QVBoxLayout()
        self.log_content_layout.setObjectName(u"log_content_layout")
        self.log_content_layout.setSizeConstraint(QLayout.SetDefaultConstraint)
        self.log_text = QPlainTextEdit(self.log_layout)
        self.log_text.setObjectName(u"log_text")
        sizePolicy4.setHeightForWidth(self.log_text.sizePolicy().hasHeightForWidth())
        self.log_text.setSizePolicy(sizePolicy4)
        self.log_text.setMinimumSize(QSize(0, 0))
        self.log_text.setAcceptDrops(False)
        self.log_text.setFrameShape(QFrame.StyledPanel)
        self.log_text.setFrameShadow(QFrame.Sunken)
        self.log_text.setUndoRedoEnabled(False)
        self.log_text.setReadOnly(True)

        self.log_content_layout.addWidget(self.log_text)

        self.buttons_layout = QHBoxLayout()
        self.buttons_layout.setObjectName(u"buttons_layout")
        self.buttons_layout.setSizeConstraint(QLayout.SetDefaultConstraint)
        self.log_clear_button = QToolButton(self.log_layout)
        self.log_clear_button.setObjectName(u"log_clear_button")
        icon1 = QIcon()
        icon1.addFile(u"images/delete-sweep_24.png", QSize(), QIcon.Normal, QIcon.Off)
        self.log_clear_button.setIcon(icon1)
        self.log_clear_button.setIconSize(QSize(24, 24))

        self.buttons_layout.addWidget(self.log_clear_button)


        self.log_content_layout.addLayout(self.buttons_layout)


        self.gridLayout_2.addLayout(self.log_content_layout, 0, 0, 1, 1)

        self.log_widget.setWidget(self.log_layout)
        MainWindow.addDockWidget(Qt.BottomDockWidgetArea, self.log_widget)
        self.config_widget = QDockWidget(MainWindow)
        self.config_widget.setObjectName(u"config_widget")
        self.config_widget.setEnabled(True)
        self.config_widget.setMinimumSize(QSize(250, 600))
        self.config_widget.setFloating(False)
        self.config_widget.setFeatures(QDockWidget.DockWidgetClosable|QDockWidget.DockWidgetFloatable|QDockWidget.DockWidgetMovable)
        self.config_widget.setAllowedAreas(Qt.RightDockWidgetArea)
        self.config_layout = QWidget()
        self.config_layout.setObjectName(u"config_layout")
        self.gridLayout = QGridLayout(self.config_layout)
        self.gridLayout.setObjectName(u"gridLayout")
        self.config_content_layout = QFormLayout()
        self.config_content_layout.setObjectName(u"config_content_layout")

        self.gridLayout.addLayout(self.config_content_layout, 0, 0, 1, 1)

        self.config_widget.setWidget(self.config_layout)
        MainWindow.addDockWidget(Qt.RightDockWidgetArea, self.config_widget)
        self.plugins_widget = QDockWidget(MainWindow)
        self.plugins_widget.setObjectName(u"plugins_widget")
        self.plugins_widget.setMinimumSize(QSize(250, 600))
        self.plugins_widget.setAllowedAreas(Qt.LeftDockWidgetArea)
        self.dockWidgetContents = QWidget()
        self.dockWidgetContents.setObjectName(u"dockWidgetContents")
        self.plugins_widget.setWidget(self.dockWidgetContents)
        MainWindow.addDockWidget(Qt.LeftDockWidgetArea, self.plugins_widget)
        self.about_widget.raise_()
        self.log_widget.raise_()

        self.retranslateUi(MainWindow)

        self.usb_status.setDefault(False)


        QMetaObject.connectSlotsByName(MainWindow)
    # setupUi

    def retranslateUi(self, MainWindow):
        MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"Contour ShuttleXpress", None))
        self.action_Quit.setText(QCoreApplication.translate("MainWindow", u"&Quit", None))
#if QT_CONFIG(tooltip)
        self.log_button.setToolTip("")
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        self.log_button.setStatusTip(QCoreApplication.translate("MainWindow", u"Log", None))
#endif // QT_CONFIG(statustip)
        self.log_button.setText(QCoreApplication.translate("MainWindow", u"//", None))
#if QT_CONFIG(statustip)
        self.button_1.setStatusTip(QCoreApplication.translate("MainWindow", u"Button 1", None))
#endif // QT_CONFIG(statustip)
        self.button_1.setText("")
#if QT_CONFIG(tooltip)
        self.usb_status.setToolTip("")
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        self.usb_status.setStatusTip(QCoreApplication.translate("MainWindow", u"USB connection status", None))
#endif // QT_CONFIG(statustip)
#if QT_CONFIG(whatsthis)
        self.usb_status.setWhatsThis(QCoreApplication.translate("MainWindow", u"USB Status", None))
#endif // QT_CONFIG(whatsthis)
#if QT_CONFIG(statustip)
        self.button_5.setStatusTip(QCoreApplication.translate("MainWindow", u"Button 5", None))
#endif // QT_CONFIG(statustip)
        self.button_5.setText("")
#if QT_CONFIG(statustip)
        self.wheel_pos4.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: right 4", None))
#endif // QT_CONFIG(statustip)
        self.wheel_pos4.setText("")
#if QT_CONFIG(statustip)
        self.wheel_cent0.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: center", None))
#endif // QT_CONFIG(statustip)
        self.wheel_cent0.setText("")
#if QT_CONFIG(statustip)
        self.wheel_pos1.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: right 1", None))
#endif // QT_CONFIG(statustip)
        self.wheel_pos1.setText("")
#if QT_CONFIG(statustip)
        self.wheel_pos2.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: right 2", None))
#endif // QT_CONFIG(statustip)
        self.wheel_pos2.setText("")
#if QT_CONFIG(statustip)
        self.dial.setStatusTip(QCoreApplication.translate("MainWindow", u"Dial", None))
#endif // QT_CONFIG(statustip)
#if QT_CONFIG(statustip)
        self.wheel_neg6.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: left 6", None))
#endif // QT_CONFIG(statustip)
        self.wheel_neg6.setText("")
#if QT_CONFIG(statustip)
        self.wheel_pos5.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: right 5", None))
#endif // QT_CONFIG(statustip)
        self.wheel_pos5.setText("")
#if QT_CONFIG(statustip)
        self.button_2.setStatusTip(QCoreApplication.translate("MainWindow", u"Button 2", None))
#endif // QT_CONFIG(statustip)
        self.button_2.setText("")
#if QT_CONFIG(statustip)
        self.wheel_neg5.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: left 5", None))
#endif // QT_CONFIG(statustip)
        self.wheel_neg5.setText("")
#if QT_CONFIG(statustip)
        self.wheel_pos6.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: right 6", None))
#endif // QT_CONFIG(statustip)
        self.wheel_pos6.setText("")
#if QT_CONFIG(statustip)
        self.wheel_neg1.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: left 1", None))
#endif // QT_CONFIG(statustip)
        self.wheel_neg1.setText("")
#if QT_CONFIG(statustip)
        self.button_4.setStatusTip(QCoreApplication.translate("MainWindow", u"Button 4", None))
#endif // QT_CONFIG(statustip)
        self.button_4.setText("")
#if QT_CONFIG(statustip)
        self.wheel_pos7.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: right 7", None))
#endif // QT_CONFIG(statustip)
        self.wheel_pos7.setText("")
#if QT_CONFIG(statustip)
        self.button_3.setStatusTip(QCoreApplication.translate("MainWindow", u"Button 3", None))
#endif // QT_CONFIG(statustip)
        self.button_3.setText("")
#if QT_CONFIG(statustip)
        self.wheel_neg2.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: left 2", None))
#endif // QT_CONFIG(statustip)
        self.wheel_neg2.setText("")
#if QT_CONFIG(statustip)
        self.wheel_pos3.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: right 3", None))
#endif // QT_CONFIG(statustip)
        self.wheel_pos3.setText("")
#if QT_CONFIG(statustip)
        self.wheel_neg3.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: left 3", None))
#endif // QT_CONFIG(statustip)
        self.wheel_neg3.setText("")
#if QT_CONFIG(statustip)
        self.wheel_neg4.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: left 4", None))
#endif // QT_CONFIG(statustip)
        self.wheel_neg4.setText(QCoreApplication.translate("MainWindow", u"-", None))
#if QT_CONFIG(statustip)
        self.wheel_neg7.setStatusTip(QCoreApplication.translate("MainWindow", u"Wheel position: left 7", None))
#endif // QT_CONFIG(statustip)
        self.wheel_neg7.setText("")
#if QT_CONFIG(tooltip)
        self.about_button.setToolTip("")
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        self.about_button.setStatusTip(QCoreApplication.translate("MainWindow", u"About", None))
#endif // QT_CONFIG(statustip)
        self.about_button.setText(QCoreApplication.translate("MainWindow", u"?", None))
#if QT_CONFIG(tooltip)
        self.plug_button.setToolTip("")
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        self.plug_button.setStatusTip(QCoreApplication.translate("MainWindow", u"Configuration", None))
#endif // QT_CONFIG(statustip)
        self.plug_button.setText(QCoreApplication.translate("MainWindow", u"#", None))
#if QT_CONFIG(tooltip)
        self.conf_button.setToolTip("")
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        self.conf_button.setStatusTip(QCoreApplication.translate("MainWindow", u"Configuration", None))
#endif // QT_CONFIG(statustip)
        self.conf_button.setText(QCoreApplication.translate("MainWindow", u"=", None))
        self.about_widget.setWindowTitle(QCoreApplication.translate("MainWindow", u"About", None))
        self.about_text.setDocumentTitle("")
        self.log_widget.setWindowTitle(QCoreApplication.translate("MainWindow", u"Log", None))
        self.log_clear_button.setText(QCoreApplication.translate("MainWindow", u"Clear", None))
        self.config_widget.setWindowTitle(QCoreApplication.translate("MainWindow", u"Configuration", None))
        self.plugins_widget.setWindowTitle(QCoreApplication.translate("MainWindow", u"Plugins", None))
Пример #3
0
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        if not MainWindow.objectName():
            MainWindow.setObjectName(u"MainWindow")
        MainWindow.resize(770, 640)
        MainWindow.setMinimumSize(QSize(770, 640))
        self.centralwidget = QWidget(MainWindow)
        self.centralwidget.setObjectName(u"centralwidget")
        self.gridLayout_10 = QGridLayout(self.centralwidget)
        self.gridLayout_10.setObjectName(u"gridLayout_10")
        self.groupBoxConnection = QGroupBox(self.centralwidget)
        self.groupBoxConnection.setObjectName(u"groupBoxConnection")
        sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(self.groupBoxConnection.sizePolicy().hasHeightForWidth())
        self.groupBoxConnection.setSizePolicy(sizePolicy)
        self.gridLayout_2 = QGridLayout(self.groupBoxConnection)
        self.gridLayout_2.setObjectName(u"gridLayout_2")
        self.pushButtonConnect = QPushButton(self.groupBoxConnection)
        self.pushButtonConnect.setObjectName(u"pushButtonConnect")
        sizePolicy1 = QSizePolicy(QSizePolicy.Minimum, QSizePolicy.Fixed)
        sizePolicy1.setHorizontalStretch(1)
        sizePolicy1.setVerticalStretch(0)
        sizePolicy1.setHeightForWidth(self.pushButtonConnect.sizePolicy().hasHeightForWidth())
        self.pushButtonConnect.setSizePolicy(sizePolicy1)

        self.gridLayout_2.addWidget(self.pushButtonConnect, 0, 1, 1, 1)

        self.labelUpdateDelay = QLabel(self.groupBoxConnection)
        self.labelUpdateDelay.setObjectName(u"labelUpdateDelay")

        self.gridLayout_2.addWidget(self.labelUpdateDelay, 1, 0, 1, 1)

        self.labelStatus = QLabel(self.groupBoxConnection)
        self.labelStatus.setObjectName(u"labelStatus")
        sizePolicy2 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred)
        sizePolicy2.setHorizontalStretch(1)
        sizePolicy2.setVerticalStretch(0)
        sizePolicy2.setHeightForWidth(self.labelStatus.sizePolicy().hasHeightForWidth())
        self.labelStatus.setSizePolicy(sizePolicy2)

        self.gridLayout_2.addWidget(self.labelStatus, 1, 2, 1, 1)

        self.comboBoxGameSelection = QComboBox(self.groupBoxConnection)
        self.comboBoxGameSelection.addItem("")
        self.comboBoxGameSelection.addItem("")
        self.comboBoxGameSelection.addItem("")
        self.comboBoxGameSelection.addItem("")
        self.comboBoxGameSelection.setObjectName(u"comboBoxGameSelection")
        sizePolicy3 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed)
        sizePolicy3.setHorizontalStretch(1)
        sizePolicy3.setVerticalStretch(0)
        sizePolicy3.setHeightForWidth(self.comboBoxGameSelection.sizePolicy().hasHeightForWidth())
        self.comboBoxGameSelection.setSizePolicy(sizePolicy3)

        self.gridLayout_2.addWidget(self.comboBoxGameSelection, 0, 0, 1, 1)

        self.doubleSpinBoxDelay = QDoubleSpinBox(self.groupBoxConnection)
        self.doubleSpinBoxDelay.setObjectName(u"doubleSpinBoxDelay")
        self.doubleSpinBoxDelay.setEnabled(False)
        self.doubleSpinBoxDelay.setMinimum(0.500000000000000)
        self.doubleSpinBoxDelay.setMaximum(2.000000000000000)

        self.gridLayout_2.addWidget(self.doubleSpinBoxDelay, 1, 1, 1, 1)


        self.gridLayout_10.addWidget(self.groupBoxConnection, 0, 0, 1, 1)

        self.tabWidget = QTabWidget(self.centralwidget)
        self.tabWidget.setObjectName(u"tabWidget")
        sizePolicy4 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
        sizePolicy4.setHorizontalStretch(0)
        sizePolicy4.setVerticalStretch(5)
        sizePolicy4.setHeightForWidth(self.tabWidget.sizePolicy().hasHeightForWidth())
        self.tabWidget.setSizePolicy(sizePolicy4)
        self.tabGen6 = QWidget()
        self.tabGen6.setObjectName(u"tabGen6")
        self.gridLayout = QGridLayout(self.tabGen6)
        self.gridLayout.setObjectName(u"gridLayout")
        self.tabWidgetGen6 = QTabWidget(self.tabGen6)
        self.tabWidgetGen6.setObjectName(u"tabWidgetGen6")
        self.tabMain6 = QWidget()
        self.tabMain6.setObjectName(u"tabMain6")
        self.gridLayout_13 = QGridLayout(self.tabMain6)
        self.gridLayout_13.setObjectName(u"gridLayout_13")
        self.comboBoxMainIndex6 = QComboBox(self.tabMain6)
        self.comboBoxMainIndex6.addItem("")
        self.comboBoxMainIndex6.addItem("")
        self.comboBoxMainIndex6.addItem("")
        self.comboBoxMainIndex6.addItem("")
        self.comboBoxMainIndex6.addItem("")
        self.comboBoxMainIndex6.addItem("")
        self.comboBoxMainIndex6.addItem("")
        self.comboBoxMainIndex6.setObjectName(u"comboBoxMainIndex6")
        self.comboBoxMainIndex6.setEnabled(False)
        sizePolicy3.setHeightForWidth(self.comboBoxMainIndex6.sizePolicy().hasHeightForWidth())
        self.comboBoxMainIndex6.setSizePolicy(sizePolicy3)

        self.gridLayout_13.addWidget(self.comboBoxMainIndex6, 0, 0, 1, 1)

        self.groupBoxMainRNG6 = QGroupBox(self.tabMain6)
        self.groupBoxMainRNG6.setObjectName(u"groupBoxMainRNG6")
        sizePolicy2.setHeightForWidth(self.groupBoxMainRNG6.sizePolicy().hasHeightForWidth())
        self.groupBoxMainRNG6.setSizePolicy(sizePolicy2)
        self.gridLayout_11 = QGridLayout(self.groupBoxMainRNG6)
        self.gridLayout_11.setObjectName(u"gridLayout_11")
        self.lineEditFrame6 = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditFrame6.setObjectName(u"lineEditFrame6")
        sizePolicy5 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed)
        sizePolicy5.setHorizontalStretch(0)
        sizePolicy5.setVerticalStretch(0)
        sizePolicy5.setHeightForWidth(self.lineEditFrame6.sizePolicy().hasHeightForWidth())
        self.lineEditFrame6.setSizePolicy(sizePolicy5)
        self.lineEditFrame6.setReadOnly(True)

        self.gridLayout_11.addWidget(self.lineEditFrame6, 3, 2, 1, 2)

        self.labelTiny2 = QLabel(self.groupBoxMainRNG6)
        self.labelTiny2.setObjectName(u"labelTiny2")

        self.gridLayout_11.addWidget(self.labelTiny2, 5, 2, 1, 1)

        self.labelTiny0 = QLabel(self.groupBoxMainRNG6)
        self.labelTiny0.setObjectName(u"labelTiny0")

        self.gridLayout_11.addWidget(self.labelTiny0, 6, 2, 1, 1)

        self.lineEditInitialSeed6 = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditInitialSeed6.setObjectName(u"lineEditInitialSeed6")
        sizePolicy5.setHeightForWidth(self.lineEditInitialSeed6.sizePolicy().hasHeightForWidth())
        self.lineEditInitialSeed6.setSizePolicy(sizePolicy5)
        self.lineEditInitialSeed6.setMaxLength(8)
        self.lineEditInitialSeed6.setReadOnly(True)

        self.gridLayout_11.addWidget(self.lineEditInitialSeed6, 1, 2, 1, 2)

        self.labelTiny3 = QLabel(self.groupBoxMainRNG6)
        self.labelTiny3.setObjectName(u"labelTiny3")

        self.gridLayout_11.addWidget(self.labelTiny3, 5, 0, 1, 1)

        self.labelTiny1 = QLabel(self.groupBoxMainRNG6)
        self.labelTiny1.setObjectName(u"labelTiny1")

        self.gridLayout_11.addWidget(self.labelTiny1, 6, 0, 1, 1)

        self.labelMainCurrentSeed6 = QLabel(self.groupBoxMainRNG6)
        self.labelMainCurrentSeed6.setObjectName(u"labelMainCurrentSeed6")

        self.gridLayout_11.addWidget(self.labelMainCurrentSeed6, 2, 0, 1, 2)

        self.lineEditCurrentSeed6 = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditCurrentSeed6.setObjectName(u"lineEditCurrentSeed6")
        sizePolicy5.setHeightForWidth(self.lineEditCurrentSeed6.sizePolicy().hasHeightForWidth())
        self.lineEditCurrentSeed6.setSizePolicy(sizePolicy5)
        self.lineEditCurrentSeed6.setMaxLength(16)
        self.lineEditCurrentSeed6.setReadOnly(True)

        self.gridLayout_11.addWidget(self.lineEditCurrentSeed6, 2, 2, 1, 2)

        self.lineEditTiny2 = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditTiny2.setObjectName(u"lineEditTiny2")

        self.gridLayout_11.addWidget(self.lineEditTiny2, 5, 3, 1, 1)

        self.lineEditTiny1 = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditTiny1.setObjectName(u"lineEditTiny1")

        self.gridLayout_11.addWidget(self.lineEditTiny1, 6, 1, 1, 1)

        self.lineEditTiny3 = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditTiny3.setObjectName(u"lineEditTiny3")

        self.gridLayout_11.addWidget(self.lineEditTiny3, 5, 1, 1, 1)

        self.labelMainInitialSeed6 = QLabel(self.groupBoxMainRNG6)
        self.labelMainInitialSeed6.setObjectName(u"labelMainInitialSeed6")

        self.gridLayout_11.addWidget(self.labelMainInitialSeed6, 1, 0, 1, 2)

        self.labelMainFrame6 = QLabel(self.groupBoxMainRNG6)
        self.labelMainFrame6.setObjectName(u"labelMainFrame6")

        self.gridLayout_11.addWidget(self.labelMainFrame6, 3, 0, 1, 1)

        self.lineEditTiny0 = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditTiny0.setObjectName(u"lineEditTiny0")

        self.gridLayout_11.addWidget(self.lineEditTiny0, 6, 3, 1, 1)

        self.pushButtonMainUpdate6 = QPushButton(self.groupBoxMainRNG6)
        self.pushButtonMainUpdate6.setObjectName(u"pushButtonMainUpdate6")
        self.pushButtonMainUpdate6.setEnabled(False)

        self.gridLayout_11.addWidget(self.pushButtonMainUpdate6, 0, 0, 1, 4)

        self.labelSaveVariable = QLabel(self.groupBoxMainRNG6)
        self.labelSaveVariable.setObjectName(u"labelSaveVariable")

        self.gridLayout_11.addWidget(self.labelSaveVariable, 4, 0, 1, 1)

        self.lineEditSaveVariable = QLineEdit(self.groupBoxMainRNG6)
        self.lineEditSaveVariable.setObjectName(u"lineEditSaveVariable")
        self.lineEditSaveVariable.setReadOnly(True)

        self.gridLayout_11.addWidget(self.lineEditSaveVariable, 4, 2, 1, 2)


        self.gridLayout_13.addWidget(self.groupBoxMainRNG6, 0, 1, 2, 1)

        self.mainPokemon6 = PokemonDisplay(self.tabMain6)
        self.mainPokemon6.setObjectName(u"mainPokemon6")
        sizePolicy2.setHeightForWidth(self.mainPokemon6.sizePolicy().hasHeightForWidth())
        self.mainPokemon6.setSizePolicy(sizePolicy2)

        self.gridLayout_13.addWidget(self.mainPokemon6, 1, 0, 1, 1)

        self.tabWidgetGen6.addTab(self.tabMain6, "")
        self.tabEgg6 = QWidget()
        self.tabEgg6.setObjectName(u"tabEgg6")
        self.gridLayout_15 = QGridLayout(self.tabEgg6)
        self.gridLayout_15.setObjectName(u"gridLayout_15")
        self.eggParent1_6 = PokemonDisplay(self.tabEgg6)
        self.eggParent1_6.setObjectName(u"eggParent1_6")
        sizePolicy2.setHeightForWidth(self.eggParent1_6.sizePolicy().hasHeightForWidth())
        self.eggParent1_6.setSizePolicy(sizePolicy2)

        self.gridLayout_15.addWidget(self.eggParent1_6, 0, 0, 1, 1)

        self.eggParent2_6 = PokemonDisplay(self.tabEgg6)
        self.eggParent2_6.setObjectName(u"eggParent2_6")
        sizePolicy2.setHeightForWidth(self.eggParent2_6.sizePolicy().hasHeightForWidth())
        self.eggParent2_6.setSizePolicy(sizePolicy2)

        self.gridLayout_15.addWidget(self.eggParent2_6, 0, 1, 1, 1)

        self.groupBoxEggRNG6 = QGroupBox(self.tabEgg6)
        self.groupBoxEggRNG6.setObjectName(u"groupBoxEggRNG6")
        sizePolicy2.setHeightForWidth(self.groupBoxEggRNG6.sizePolicy().hasHeightForWidth())
        self.groupBoxEggRNG6.setSizePolicy(sizePolicy2)
        self.gridLayout_14 = QGridLayout(self.groupBoxEggRNG6)
        self.gridLayout_14.setObjectName(u"gridLayout_14")
        self.labelEggReady6 = QLabel(self.groupBoxEggRNG6)
        self.labelEggReady6.setObjectName(u"labelEggReady6")
        sizePolicy5.setHeightForWidth(self.labelEggReady6.sizePolicy().hasHeightForWidth())
        self.labelEggReady6.setSizePolicy(sizePolicy5)

        self.gridLayout_14.addWidget(self.labelEggReady6, 1, 0, 1, 1)

        self.labelEggReadyStatus6 = QLabel(self.groupBoxEggRNG6)
        self.labelEggReadyStatus6.setObjectName(u"labelEggReadyStatus6")

        self.gridLayout_14.addWidget(self.labelEggReadyStatus6, 1, 1, 1, 1)

        self.lineEditEggSeed0_6 = QLineEdit(self.groupBoxEggRNG6)
        self.lineEditEggSeed0_6.setObjectName(u"lineEditEggSeed0_6")
        sizePolicy5.setHeightForWidth(self.lineEditEggSeed0_6.sizePolicy().hasHeightForWidth())
        self.lineEditEggSeed0_6.setSizePolicy(sizePolicy5)
        self.lineEditEggSeed0_6.setMaxLength(8)
        self.lineEditEggSeed0_6.setReadOnly(True)

        self.gridLayout_14.addWidget(self.lineEditEggSeed0_6, 3, 1, 1, 1)

        self.pushButtonEggUpdate6 = QPushButton(self.groupBoxEggRNG6)
        self.pushButtonEggUpdate6.setObjectName(u"pushButtonEggUpdate6")
        self.pushButtonEggUpdate6.setEnabled(False)

        self.gridLayout_14.addWidget(self.pushButtonEggUpdate6, 0, 0, 1, 2)

        self.labelEggSeed0_6 = QLabel(self.groupBoxEggRNG6)
        self.labelEggSeed0_6.setObjectName(u"labelEggSeed0_6")

        self.gridLayout_14.addWidget(self.labelEggSeed0_6, 3, 0, 1, 1)

        self.labelEggSeed1_6 = QLabel(self.groupBoxEggRNG6)
        self.labelEggSeed1_6.setObjectName(u"labelEggSeed1_6")

        self.gridLayout_14.addWidget(self.labelEggSeed1_6, 2, 0, 1, 1)

        self.lineEditEggSeed1_6 = QLineEdit(self.groupBoxEggRNG6)
        self.lineEditEggSeed1_6.setObjectName(u"lineEditEggSeed1_6")
        sizePolicy5.setHeightForWidth(self.lineEditEggSeed1_6.sizePolicy().hasHeightForWidth())
        self.lineEditEggSeed1_6.setSizePolicy(sizePolicy5)
        self.lineEditEggSeed1_6.setMaxLength(8)
        self.lineEditEggSeed1_6.setReadOnly(True)

        self.gridLayout_14.addWidget(self.lineEditEggSeed1_6, 2, 1, 1, 1)


        self.gridLayout_15.addWidget(self.groupBoxEggRNG6, 0, 2, 1, 1)

        self.tabWidgetGen6.addTab(self.tabEgg6, "")

        self.gridLayout.addWidget(self.tabWidgetGen6, 0, 0, 1, 1)

        self.tabWidget.addTab(self.tabGen6, "")
        self.tabGen7 = QWidget()
        self.tabGen7.setObjectName(u"tabGen7")
        self.tabGen7.setEnabled(False)
        self.gridLayout_12 = QGridLayout(self.tabGen7)
        self.gridLayout_12.setObjectName(u"gridLayout_12")
        self.tabWidgetGen7 = QTabWidget(self.tabGen7)
        self.tabWidgetGen7.setObjectName(u"tabWidgetGen7")
        self.tabMain7 = QWidget()
        self.tabMain7.setObjectName(u"tabMain7")
        self.gridLayout_7 = QGridLayout(self.tabMain7)
        self.gridLayout_7.setObjectName(u"gridLayout_7")
        self.comboBoxMainIndex7 = QComboBox(self.tabMain7)
        self.comboBoxMainIndex7.addItem("")
        self.comboBoxMainIndex7.addItem("")
        self.comboBoxMainIndex7.addItem("")
        self.comboBoxMainIndex7.addItem("")
        self.comboBoxMainIndex7.addItem("")
        self.comboBoxMainIndex7.addItem("")
        self.comboBoxMainIndex7.addItem("")
        self.comboBoxMainIndex7.setObjectName(u"comboBoxMainIndex7")
        self.comboBoxMainIndex7.setEnabled(False)
        sizePolicy3.setHeightForWidth(self.comboBoxMainIndex7.sizePolicy().hasHeightForWidth())
        self.comboBoxMainIndex7.setSizePolicy(sizePolicy3)

        self.gridLayout_7.addWidget(self.comboBoxMainIndex7, 0, 0, 1, 1)

        self.groupBoxMainRNG7 = QGroupBox(self.tabMain7)
        self.groupBoxMainRNG7.setObjectName(u"groupBoxMainRNG7")
        sizePolicy2.setHeightForWidth(self.groupBoxMainRNG7.sizePolicy().hasHeightForWidth())
        self.groupBoxMainRNG7.setSizePolicy(sizePolicy2)
        self.gridLayout_3 = QGridLayout(self.groupBoxMainRNG7)
        self.gridLayout_3.setObjectName(u"gridLayout_3")
        self.labelMainInitialSeed7 = QLabel(self.groupBoxMainRNG7)
        self.labelMainInitialSeed7.setObjectName(u"labelMainInitialSeed7")

        self.gridLayout_3.addWidget(self.labelMainInitialSeed7, 1, 0, 1, 1)

        self.lineEditInitialSeed7 = QLineEdit(self.groupBoxMainRNG7)
        self.lineEditInitialSeed7.setObjectName(u"lineEditInitialSeed7")
        sizePolicy5.setHeightForWidth(self.lineEditInitialSeed7.sizePolicy().hasHeightForWidth())
        self.lineEditInitialSeed7.setSizePolicy(sizePolicy5)
        self.lineEditInitialSeed7.setMaxLength(8)
        self.lineEditInitialSeed7.setReadOnly(True)

        self.gridLayout_3.addWidget(self.lineEditInitialSeed7, 1, 1, 1, 1)

        self.labelMainCurrentSeed7 = QLabel(self.groupBoxMainRNG7)
        self.labelMainCurrentSeed7.setObjectName(u"labelMainCurrentSeed7")

        self.gridLayout_3.addWidget(self.labelMainCurrentSeed7, 2, 0, 1, 1)

        self.lineEditCurrentSeed7 = QLineEdit(self.groupBoxMainRNG7)
        self.lineEditCurrentSeed7.setObjectName(u"lineEditCurrentSeed7")
        sizePolicy5.setHeightForWidth(self.lineEditCurrentSeed7.sizePolicy().hasHeightForWidth())
        self.lineEditCurrentSeed7.setSizePolicy(sizePolicy5)
        self.lineEditCurrentSeed7.setMaxLength(16)
        self.lineEditCurrentSeed7.setReadOnly(True)

        self.gridLayout_3.addWidget(self.lineEditCurrentSeed7, 2, 1, 1, 1)

        self.labelMainFrame7 = QLabel(self.groupBoxMainRNG7)
        self.labelMainFrame7.setObjectName(u"labelMainFrame7")

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

        self.lineEditFrame7 = QLineEdit(self.groupBoxMainRNG7)
        self.lineEditFrame7.setObjectName(u"lineEditFrame7")
        sizePolicy5.setHeightForWidth(self.lineEditFrame7.sizePolicy().hasHeightForWidth())
        self.lineEditFrame7.setSizePolicy(sizePolicy5)
        self.lineEditFrame7.setReadOnly(True)

        self.gridLayout_3.addWidget(self.lineEditFrame7, 3, 1, 1, 1)

        self.pushButtonMainUpdate7 = QPushButton(self.groupBoxMainRNG7)
        self.pushButtonMainUpdate7.setObjectName(u"pushButtonMainUpdate7")
        self.pushButtonMainUpdate7.setEnabled(False)

        self.gridLayout_3.addWidget(self.pushButtonMainUpdate7, 0, 0, 1, 2)


        self.gridLayout_7.addWidget(self.groupBoxMainRNG7, 0, 1, 2, 1)

        self.mainPokemon7 = PokemonDisplay(self.tabMain7)
        self.mainPokemon7.setObjectName(u"mainPokemon7")
        sizePolicy2.setHeightForWidth(self.mainPokemon7.sizePolicy().hasHeightForWidth())
        self.mainPokemon7.setSizePolicy(sizePolicy2)

        self.gridLayout_7.addWidget(self.mainPokemon7, 1, 0, 1, 1)

        self.tabWidgetGen7.addTab(self.tabMain7, "")
        self.tabEgg7 = QWidget()
        self.tabEgg7.setObjectName(u"tabEgg7")
        self.gridLayout_6 = QGridLayout(self.tabEgg7)
        self.gridLayout_6.setObjectName(u"gridLayout_6")
        self.groupBoxEggRNG7 = QGroupBox(self.tabEgg7)
        self.groupBoxEggRNG7.setObjectName(u"groupBoxEggRNG7")
        sizePolicy2.setHeightForWidth(self.groupBoxEggRNG7.sizePolicy().hasHeightForWidth())
        self.groupBoxEggRNG7.setSizePolicy(sizePolicy2)
        self.gridLayout_4 = QGridLayout(self.groupBoxEggRNG7)
        self.gridLayout_4.setObjectName(u"gridLayout_4")
        self.pushButtonEggUpdate7 = QPushButton(self.groupBoxEggRNG7)
        self.pushButtonEggUpdate7.setObjectName(u"pushButtonEggUpdate7")
        self.pushButtonEggUpdate7.setEnabled(False)

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

        self.labelEggReady7 = QLabel(self.groupBoxEggRNG7)
        self.labelEggReady7.setObjectName(u"labelEggReady7")
        sizePolicy5.setHeightForWidth(self.labelEggReady7.sizePolicy().hasHeightForWidth())
        self.labelEggReady7.setSizePolicy(sizePolicy5)

        self.gridLayout_4.addWidget(self.labelEggReady7, 1, 0, 1, 1)

        self.labelEggReadyStatus7 = QLabel(self.groupBoxEggRNG7)
        self.labelEggReadyStatus7.setObjectName(u"labelEggReadyStatus7")

        self.gridLayout_4.addWidget(self.labelEggReadyStatus7, 1, 1, 1, 1)

        self.labelEggSeed3_7 = QLabel(self.groupBoxEggRNG7)
        self.labelEggSeed3_7.setObjectName(u"labelEggSeed3_7")

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

        self.lineEditEggSeed3_7 = QLineEdit(self.groupBoxEggRNG7)
        self.lineEditEggSeed3_7.setObjectName(u"lineEditEggSeed3_7")
        sizePolicy5.setHeightForWidth(self.lineEditEggSeed3_7.sizePolicy().hasHeightForWidth())
        self.lineEditEggSeed3_7.setSizePolicy(sizePolicy5)
        self.lineEditEggSeed3_7.setMaxLength(8)
        self.lineEditEggSeed3_7.setReadOnly(True)

        self.gridLayout_4.addWidget(self.lineEditEggSeed3_7, 2, 1, 1, 1)

        self.labelEggSeed2_7 = QLabel(self.groupBoxEggRNG7)
        self.labelEggSeed2_7.setObjectName(u"labelEggSeed2_7")

        self.gridLayout_4.addWidget(self.labelEggSeed2_7, 3, 0, 1, 1)

        self.lineEditEggSeed2_7 = QLineEdit(self.groupBoxEggRNG7)
        self.lineEditEggSeed2_7.setObjectName(u"lineEditEggSeed2_7")
        sizePolicy5.setHeightForWidth(self.lineEditEggSeed2_7.sizePolicy().hasHeightForWidth())
        self.lineEditEggSeed2_7.setSizePolicy(sizePolicy5)
        self.lineEditEggSeed2_7.setMaxLength(8)
        self.lineEditEggSeed2_7.setReadOnly(True)

        self.gridLayout_4.addWidget(self.lineEditEggSeed2_7, 3, 1, 1, 1)

        self.labelEggSeed1_7 = QLabel(self.groupBoxEggRNG7)
        self.labelEggSeed1_7.setObjectName(u"labelEggSeed1_7")

        self.gridLayout_4.addWidget(self.labelEggSeed1_7, 4, 0, 1, 1)

        self.lineEditEggSeed1_7 = QLineEdit(self.groupBoxEggRNG7)
        self.lineEditEggSeed1_7.setObjectName(u"lineEditEggSeed1_7")
        sizePolicy5.setHeightForWidth(self.lineEditEggSeed1_7.sizePolicy().hasHeightForWidth())
        self.lineEditEggSeed1_7.setSizePolicy(sizePolicy5)
        self.lineEditEggSeed1_7.setMaxLength(8)
        self.lineEditEggSeed1_7.setReadOnly(True)

        self.gridLayout_4.addWidget(self.lineEditEggSeed1_7, 4, 1, 1, 1)

        self.labelEggSeed0_7 = QLabel(self.groupBoxEggRNG7)
        self.labelEggSeed0_7.setObjectName(u"labelEggSeed0_7")

        self.gridLayout_4.addWidget(self.labelEggSeed0_7, 5, 0, 1, 1)

        self.lineEditEggSeed0_7 = QLineEdit(self.groupBoxEggRNG7)
        self.lineEditEggSeed0_7.setObjectName(u"lineEditEggSeed0_7")
        sizePolicy5.setHeightForWidth(self.lineEditEggSeed0_7.sizePolicy().hasHeightForWidth())
        self.lineEditEggSeed0_7.setSizePolicy(sizePolicy5)
        self.lineEditEggSeed0_7.setMaxLength(8)
        self.lineEditEggSeed0_7.setReadOnly(True)

        self.gridLayout_4.addWidget(self.lineEditEggSeed0_7, 5, 1, 1, 1)


        self.gridLayout_6.addWidget(self.groupBoxEggRNG7, 0, 2, 2, 1)

        self.eggParent1_7 = PokemonDisplay(self.tabEgg7)
        self.eggParent1_7.setObjectName(u"eggParent1_7")
        sizePolicy2.setHeightForWidth(self.eggParent1_7.sizePolicy().hasHeightForWidth())
        self.eggParent1_7.setSizePolicy(sizePolicy2)

        self.gridLayout_6.addWidget(self.eggParent1_7, 0, 0, 2, 1)

        self.eggParent2_7 = PokemonDisplay(self.tabEgg7)
        self.eggParent2_7.setObjectName(u"eggParent2_7")
        sizePolicy2.setHeightForWidth(self.eggParent2_7.sizePolicy().hasHeightForWidth())
        self.eggParent2_7.setSizePolicy(sizePolicy2)

        self.gridLayout_6.addWidget(self.eggParent2_7, 0, 1, 2, 1)

        self.tabWidgetGen7.addTab(self.tabEgg7, "")
        self.tabSOS = QWidget()
        self.tabSOS.setObjectName(u"tabSOS")
        self.gridLayout_8 = QGridLayout(self.tabSOS)
        self.gridLayout_8.setObjectName(u"gridLayout_8")
        self.comboBoxSOSIndex = QComboBox(self.tabSOS)
        self.comboBoxSOSIndex.addItem("")
        self.comboBoxSOSIndex.addItem("")
        self.comboBoxSOSIndex.addItem("")
        self.comboBoxSOSIndex.addItem("")
        self.comboBoxSOSIndex.setObjectName(u"comboBoxSOSIndex")
        self.comboBoxSOSIndex.setEnabled(False)

        self.gridLayout_8.addWidget(self.comboBoxSOSIndex, 0, 0, 1, 1)

        self.groupBoxSOS = QGroupBox(self.tabSOS)
        self.groupBoxSOS.setObjectName(u"groupBoxSOS")
        sizePolicy2.setHeightForWidth(self.groupBoxSOS.sizePolicy().hasHeightForWidth())
        self.groupBoxSOS.setSizePolicy(sizePolicy2)
        self.gridLayout_5 = QGridLayout(self.groupBoxSOS)
        self.gridLayout_5.setObjectName(u"gridLayout_5")
        self.pushButtonSOSUpdate = QPushButton(self.groupBoxSOS)
        self.pushButtonSOSUpdate.setObjectName(u"pushButtonSOSUpdate")
        self.pushButtonSOSUpdate.setEnabled(False)

        self.gridLayout_5.addWidget(self.pushButtonSOSUpdate, 0, 0, 1, 1)

        self.pushButtonSOSReset = QPushButton(self.groupBoxSOS)
        self.pushButtonSOSReset.setObjectName(u"pushButtonSOSReset")
        self.pushButtonSOSReset.setEnabled(False)

        self.gridLayout_5.addWidget(self.pushButtonSOSReset, 0, 1, 1, 1)

        self.labelSOSInitialSeed = QLabel(self.groupBoxSOS)
        self.labelSOSInitialSeed.setObjectName(u"labelSOSInitialSeed")

        self.gridLayout_5.addWidget(self.labelSOSInitialSeed, 1, 0, 1, 1)

        self.lineEditSOSInitialSeed = QLineEdit(self.groupBoxSOS)
        self.lineEditSOSInitialSeed.setObjectName(u"lineEditSOSInitialSeed")
        self.lineEditSOSInitialSeed.setMaxLength(8)
        self.lineEditSOSInitialSeed.setReadOnly(True)

        self.gridLayout_5.addWidget(self.lineEditSOSInitialSeed, 1, 1, 1, 1)

        self.labelSOSCurrentSeed = QLabel(self.groupBoxSOS)
        self.labelSOSCurrentSeed.setObjectName(u"labelSOSCurrentSeed")

        self.gridLayout_5.addWidget(self.labelSOSCurrentSeed, 2, 0, 1, 1)

        self.lineEditSOSCurrentSeed = QLineEdit(self.groupBoxSOS)
        self.lineEditSOSCurrentSeed.setObjectName(u"lineEditSOSCurrentSeed")
        self.lineEditSOSCurrentSeed.setMaxLength(8)
        self.lineEditSOSCurrentSeed.setReadOnly(True)

        self.gridLayout_5.addWidget(self.lineEditSOSCurrentSeed, 2, 1, 1, 1)

        self.labelSOSFrame = QLabel(self.groupBoxSOS)
        self.labelSOSFrame.setObjectName(u"labelSOSFrame")

        self.gridLayout_5.addWidget(self.labelSOSFrame, 3, 0, 1, 1)

        self.lineEditSOSFrame = QLineEdit(self.groupBoxSOS)
        self.lineEditSOSFrame.setObjectName(u"lineEditSOSFrame")
        self.lineEditSOSFrame.setMaxLength(8)
        self.lineEditSOSFrame.setReadOnly(True)

        self.gridLayout_5.addWidget(self.lineEditSOSFrame, 3, 1, 1, 1)

        self.labelSOSChainCount = QLabel(self.groupBoxSOS)
        self.labelSOSChainCount.setObjectName(u"labelSOSChainCount")

        self.gridLayout_5.addWidget(self.labelSOSChainCount, 4, 0, 1, 1)

        self.lineEditSOSChainCount = QLineEdit(self.groupBoxSOS)
        self.lineEditSOSChainCount.setObjectName(u"lineEditSOSChainCount")
        self.lineEditSOSChainCount.setMaxLength(8)
        self.lineEditSOSChainCount.setReadOnly(True)

        self.gridLayout_5.addWidget(self.lineEditSOSChainCount, 4, 1, 1, 1)


        self.gridLayout_8.addWidget(self.groupBoxSOS, 0, 1, 2, 1)

        self.sosPokemon = PokemonDisplay(self.tabSOS)
        self.sosPokemon.setObjectName(u"sosPokemon")
        sizePolicy2.setHeightForWidth(self.sosPokemon.sizePolicy().hasHeightForWidth())
        self.sosPokemon.setSizePolicy(sizePolicy2)

        self.gridLayout_8.addWidget(self.sosPokemon, 1, 0, 1, 1)

        self.tabWidgetGen7.addTab(self.tabSOS, "")

        self.gridLayout_12.addWidget(self.tabWidgetGen7, 0, 0, 1, 1)

        self.tabWidget.addTab(self.tabGen7, "")

        self.gridLayout_10.addWidget(self.tabWidget, 1, 0, 1, 1)

        MainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(MainWindow)

        QMetaObject.connectSlotsByName(MainWindow)
    # setupUi

    def retranslateUi(self, MainWindow):
        MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"CitraRNG 3.2.0", None))
        self.groupBoxConnection.setTitle(QCoreApplication.translate("MainWindow", u"Connection", None))
        self.pushButtonConnect.setText(QCoreApplication.translate("MainWindow", u"Connect", None))
        self.labelUpdateDelay.setText(QCoreApplication.translate("MainWindow", u"Auto update delay(seconds):", None))
        self.labelStatus.setText(QCoreApplication.translate("MainWindow", u"Status: Not Connected", None))
        self.comboBoxGameSelection.setItemText(0, QCoreApplication.translate("MainWindow", u"XY", None))
        self.comboBoxGameSelection.setItemText(1, QCoreApplication.translate("MainWindow", u"ORAS", None))
        self.comboBoxGameSelection.setItemText(2, QCoreApplication.translate("MainWindow", u"SM", None))
        self.comboBoxGameSelection.setItemText(3, QCoreApplication.translate("MainWindow", u"USUM", None))

        self.comboBoxMainIndex6.setItemText(0, QCoreApplication.translate("MainWindow", u"Party 1", None))
        self.comboBoxMainIndex6.setItemText(1, QCoreApplication.translate("MainWindow", u"Party 2", None))
        self.comboBoxMainIndex6.setItemText(2, QCoreApplication.translate("MainWindow", u"Party 3", None))
        self.comboBoxMainIndex6.setItemText(3, QCoreApplication.translate("MainWindow", u"Party 4", None))
        self.comboBoxMainIndex6.setItemText(4, QCoreApplication.translate("MainWindow", u"Party 5", None))
        self.comboBoxMainIndex6.setItemText(5, QCoreApplication.translate("MainWindow", u"Party 6", None))
        self.comboBoxMainIndex6.setItemText(6, QCoreApplication.translate("MainWindow", u"Wild", None))

        self.groupBoxMainRNG6.setTitle(QCoreApplication.translate("MainWindow", u"Main RNG", None))
        self.labelTiny2.setText(QCoreApplication.translate("MainWindow", u"[2]", None))
        self.labelTiny0.setText(QCoreApplication.translate("MainWindow", u"[0]", None))
        self.labelTiny3.setText(QCoreApplication.translate("MainWindow", u"[3]", None))
        self.labelTiny1.setText(QCoreApplication.translate("MainWindow", u"[1]", None))
        self.labelMainCurrentSeed6.setText(QCoreApplication.translate("MainWindow", u"Current Seed:", None))
        self.labelMainInitialSeed6.setText(QCoreApplication.translate("MainWindow", u"Initial Seed:", None))
        self.labelMainFrame6.setText(QCoreApplication.translate("MainWindow", u"Frame:", None))
        self.pushButtonMainUpdate6.setText(QCoreApplication.translate("MainWindow", u"Update", None))
        self.labelSaveVariable.setText(QCoreApplication.translate("MainWindow", u"Save Variable:", None))
        self.tabWidgetGen6.setTabText(self.tabWidgetGen6.indexOf(self.tabMain6), QCoreApplication.translate("MainWindow", u"Main", None))
        self.groupBoxEggRNG6.setTitle(QCoreApplication.translate("MainWindow", u"Egg RNG", None))
        self.labelEggReady6.setText(QCoreApplication.translate("MainWindow", u"Egg Ready:", None))
        self.labelEggReadyStatus6.setText(QCoreApplication.translate("MainWindow", u"No egg yet", None))
        self.pushButtonEggUpdate6.setText(QCoreApplication.translate("MainWindow", u"Update", None))
        self.labelEggSeed0_6.setText(QCoreApplication.translate("MainWindow", u"[0]", None))
        self.labelEggSeed1_6.setText(QCoreApplication.translate("MainWindow", u"[1]", None))
        self.tabWidgetGen6.setTabText(self.tabWidgetGen6.indexOf(self.tabEgg6), QCoreApplication.translate("MainWindow", u"Egg", None))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabGen6), QCoreApplication.translate("MainWindow", u"Gen 6", None))
        self.comboBoxMainIndex7.setItemText(0, QCoreApplication.translate("MainWindow", u"Party 1", None))
        self.comboBoxMainIndex7.setItemText(1, QCoreApplication.translate("MainWindow", u"Party 2", None))
        self.comboBoxMainIndex7.setItemText(2, QCoreApplication.translate("MainWindow", u"Party 3", None))
        self.comboBoxMainIndex7.setItemText(3, QCoreApplication.translate("MainWindow", u"Party 4", None))
        self.comboBoxMainIndex7.setItemText(4, QCoreApplication.translate("MainWindow", u"Party 5", None))
        self.comboBoxMainIndex7.setItemText(5, QCoreApplication.translate("MainWindow", u"Party 6", None))
        self.comboBoxMainIndex7.setItemText(6, QCoreApplication.translate("MainWindow", u"Wild", None))

        self.groupBoxMainRNG7.setTitle(QCoreApplication.translate("MainWindow", u"Main RNG", None))
        self.labelMainInitialSeed7.setText(QCoreApplication.translate("MainWindow", u"Initial Seed:", None))
        self.labelMainCurrentSeed7.setText(QCoreApplication.translate("MainWindow", u"Current Seed:", None))
        self.labelMainFrame7.setText(QCoreApplication.translate("MainWindow", u"Frame:", None))
        self.pushButtonMainUpdate7.setText(QCoreApplication.translate("MainWindow", u"Update", None))
        self.tabWidgetGen7.setTabText(self.tabWidgetGen7.indexOf(self.tabMain7), QCoreApplication.translate("MainWindow", u"Main", None))
        self.groupBoxEggRNG7.setTitle(QCoreApplication.translate("MainWindow", u"Egg RNG", None))
        self.pushButtonEggUpdate7.setText(QCoreApplication.translate("MainWindow", u"Update", None))
        self.labelEggReady7.setText(QCoreApplication.translate("MainWindow", u"Egg Ready:", None))
        self.labelEggReadyStatus7.setText(QCoreApplication.translate("MainWindow", u"No egg yet", None))
        self.labelEggSeed3_7.setText(QCoreApplication.translate("MainWindow", u"[3]", None))
        self.labelEggSeed2_7.setText(QCoreApplication.translate("MainWindow", u"[2]", None))
        self.labelEggSeed1_7.setText(QCoreApplication.translate("MainWindow", u"[1]", None))
        self.labelEggSeed0_7.setText(QCoreApplication.translate("MainWindow", u"[0]", None))
        self.tabWidgetGen7.setTabText(self.tabWidgetGen7.indexOf(self.tabEgg7), QCoreApplication.translate("MainWindow", u"Egg", None))
        self.comboBoxSOSIndex.setItemText(0, QCoreApplication.translate("MainWindow", u"SOS 1", None))
        self.comboBoxSOSIndex.setItemText(1, QCoreApplication.translate("MainWindow", u"SOS 2", None))
        self.comboBoxSOSIndex.setItemText(2, QCoreApplication.translate("MainWindow", u"SOS 3", None))
        self.comboBoxSOSIndex.setItemText(3, QCoreApplication.translate("MainWindow", u"SOS 4", None))

        self.groupBoxSOS.setTitle(QCoreApplication.translate("MainWindow", u"SOS RNG", None))
        self.pushButtonSOSUpdate.setText(QCoreApplication.translate("MainWindow", u"Update", None))
#if QT_CONFIG(tooltip)
        self.pushButtonSOSReset.setToolTip(QCoreApplication.translate("MainWindow", u"This should be used after a battle", None))
#endif // QT_CONFIG(tooltip)
        self.pushButtonSOSReset.setText(QCoreApplication.translate("MainWindow", u"Reset", None))
        self.labelSOSInitialSeed.setText(QCoreApplication.translate("MainWindow", u"Initial Seed:", None))
        self.labelSOSCurrentSeed.setText(QCoreApplication.translate("MainWindow", u"Current Seed:", None))
        self.labelSOSFrame.setText(QCoreApplication.translate("MainWindow", u"Frame:", None))
        self.labelSOSChainCount.setText(QCoreApplication.translate("MainWindow", u"Chain Count:", None))
        self.tabWidgetGen7.setTabText(self.tabWidgetGen7.indexOf(self.tabSOS), QCoreApplication.translate("MainWindow", u"SOS", None))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabGen7), QCoreApplication.translate("MainWindow", u"Gen 7", None))