class SystemPowerWidget(ScreenWithBackButton): def __init__(self, controller, mainWindow): self.controller = controller ScreenWithBackButton.__init__(self, "System Power", mainWindow) def makeContent(self): buttons = QHBoxLayout() self.btnOff = ExpandingButton() self.btnOff.setText("Off") self.btnOff.setIcon(QIcon("icons/lightbulb_off.svg")) self.btnOff.setIconSize(QSize(128, 128)) self.btnOff.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) self.btnOff.clicked.connect(self.controller.systemPowerOff) buttons.addWidget(self.btnOff) self.btnOn = ExpandingButton() self.btnOn.setText("On") self.btnOn.setIcon(QIcon("icons/lightbulb_on.svg")) self.btnOn.setIconSize(QSize(128, 128)) self.btnOn.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) self.btnOn.clicked.connect(self.controller.systemPowerOn) buttons.addWidget(self.btnOn) return buttons
def __init__(self, title, mainWindow): super(ScreenWithBackButton, self).__init__() self.title = title self.mainWindow = mainWindow layout = QGridLayout() title = QLabel(title) title.setStyleSheet("font-size: 48px;") title.setAlignment(Qt.AlignCenter) layout.addWidget(title, 0, 0, 1, 7) layout.addLayout(self.makeContent(), 1, 0, 1, 7) b = ExpandingButton() b.setText("Back") b.setIcon(QIcon("icons/go-previous.svg")) b.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) b.clicked.connect(mainWindow.stepBack) layout.addWidget(b, 2, 0, 1, 3) layout.setRowStretch(0, 1) layout.setRowStretch(1, 6) layout.setRowStretch(2, 1) self.setLayout(layout)
def makeContent(self): layout = QGridLayout() self.screens = QButtonGroup() btnLeft = IDedButton(1) btnLeft.setText("Left") layout.addWidget(btnLeft, 1, 0, 1, 2) btnLeft.setCheckable(True) self.screens.addButton(btnLeft, 1) btnAll = IDedButton(0) btnAll.setText("Both") layout.addWidget(btnAll, 1, 2, 1, 3) btnAll.setCheckable(True) btnAll.setChecked(True) self.screens.addButton(btnAll, 0) btnRight = IDedButton(2) btnRight.setText("Right") layout.addWidget(btnRight, 1, 5, 1, 2) btnRight.setCheckable(True) self.screens.addButton(btnRight, 2) iconSize = QSize(96, 96) btnRaise = ExpandingButton() btnRaise.setText("Raise") btnRaise.setIcon(QIcon("icons/go-up.svg")) btnRaise.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) layout.addWidget(btnRaise, 2, 1, 1, 3) btnRaise.setIconSize(iconSize) btnRaise.clicked.connect(self.raiseUp) btnLower = ExpandingButton() btnLower.setText("Lower") btnLower.setIcon(QIcon("icons/go-down.svg")) btnLower.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) layout.addWidget(btnLower, 3, 1, 1, 3) btnLower.setIconSize(iconSize) btnLower.clicked.connect(self.lowerDown) btnStop = ExpandingButton() btnStop.setText("Stop") btnStop.setIcon(QIcon("icons/process-stop.svg")) btnStop.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) layout.addWidget(btnStop, 2, 4, 2, 2) btnStop.setIconSize(iconSize) btnStop.clicked.connect(self.stop) return layout
def makeContent(self): layout = QGridLayout() self.blinds = QButtonGroup() for i in range(1, 7): btn = IDedButton(i) btn.setText(str(i)) layout.addWidget(btn, 0, i - 1) btn.setCheckable(True) self.blinds.addButton(btn, i) btnAll = IDedButton(0) btnAll.setText("All") layout.addWidget(btnAll, 0, 6) btnAll.setCheckable(True) btnAll.setChecked(True) self.blinds.addButton(btnAll, 0) iconSize = QSize(96, 96) btnRaise = ExpandingButton() btnRaise.setText("Raise") btnRaise.setIcon(QIcon("icons/go-up.svg")) btnRaise.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) layout.addWidget(btnRaise, 1, 1, 1, 3) btnRaise.setIconSize(iconSize) btnRaise.clicked.connect(self.raiseUp) btnLower = ExpandingButton() btnLower.setText("Lower") btnLower.setIcon(QIcon("icons/go-down.svg")) btnLower.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) layout.addWidget(btnLower, 2, 1, 1, 3) btnLower.setIconSize(iconSize) btnLower.clicked.connect(self.lowerDown) btnStop = ExpandingButton() btnStop.setText("Stop") btnStop.setIcon(QIcon("icons/process-stop.svg")) btnStop.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) layout.addWidget(btnStop, 1, 4, 2, 2) btnStop.setIconSize(iconSize) btnStop.clicked.connect(self.stop) return layout
def __init__(self, controller): super(MainWindow, self).__init__() self.controller = controller self.setWindowTitle("AldatesX") self.resize(1024, 600) self.mainScreen = VideoSwitcher(controller, self) self.stack = QStackedWidget() self.stack.addWidget(self.mainScreen) outer = QWidget() mainLayout = QGridLayout() mainLayout.addWidget(self.stack, 0, 0, 1, 7) self.spc = SystemPowerWidget(controller, self) syspower = ExpandingButton() syspower.setText("Power") syspower.clicked.connect(self.showSystemPower) syspower.setIcon(QIcon("icons/system-shutdown.svg")) syspower.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) mainLayout.addWidget(syspower, 1, 0) self.bc = BlindsControl(controller, self) blinds = ExpandingButton() blinds.setText("Blinds") blinds.clicked.connect(lambda: self.showScreen(self.bc)) blinds.setIcon(QIcon("icons/blinds.svg")) blinds.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) mainLayout.addWidget(blinds, 1, 2) self.sc = ProjectorScreensControl(self.controller, self) screens = ExpandingButton() screens.setText("Screens") screens.clicked.connect(lambda: self.showScreen(self.sc)) screens.setIcon(QIcon("icons/screens.svg")) screens.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) mainLayout.addWidget(screens, 1, 3) self.advMenu = AdvancedMenu(self.controller, self) adv = ExpandingButton() adv.setText("Advanced") adv.setIcon(QIcon("icons/applications-system.svg")) adv.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon) adv.clicked.connect(lambda: self.showScreen(self.advMenu)) mainLayout.addWidget(adv, 1, 5) mainLayout.addWidget(Clock(), 1, 6) mainLayout.setRowStretch(0, 8) mainLayout.setRowStretch(1, 0) outer.setLayout(mainLayout) self.setCentralWidget(outer) self.pnd = PowerNotificationDialog(self) self.pnd.accepted.connect(self.hidePowerDialog)