def __init__(self, text='', on_press=lambda: None, parent=None, icon=None): super().__init__(text, parent) self.on_press = on_press self.clicked.connect(self.on_press) if icon is not None: self.setIcon(QIcon(QPixmap(icon)))
def set_icon(self): app_ico = QIcon("Resources/Icon/icon.ico") self.setWindowIcon(app_ico)
def icon_for_flight(flight: Flight) -> Optional[QIcon]: """Returns the icon that should be displayed for the flight.""" name = flight.unit_type.dcs_id if name in AIRCRAFT_ICONS: return QIcon(AIRCRAFT_ICONS[name]) return None
def setIcon(self): appIcon = QIcon("icon.png") self.setWindowIcon(appIcon)
from scihubeva.utils import * if hasattr(Qt, 'AA_EnableHighDpiScaling'): QGuiApplication.setAttribute(Qt.AA_EnableHighDpiScaling, True) if hasattr(Qt, 'AA_UseHighDpiPixmaps'): QGuiApplication.setAttribute(Qt.AA_UseHighDpiPixmaps, True) if __name__ == '__main__': app_path = os.path.abspath(os.path.dirname(sys.argv[0])) os.environ['QT_QUICK_CONTROLS_CONF'] = ( CONF_DIR / 'qtquickcontrols2.conf').resolve().as_posix() app = QGuiApplication(sys.argv) lang = locale.getdefaultlocale()[0] lang_file_path = ( TRANSLATION_DIR / 'SciHubEVA_{lang}.qm'.format(lang=lang)).resolve().as_posix() translator = QTranslator() translator.load(lang_file_path) app.installTranslator(translator) icon_file_path = (IMAGES_DIR / 'SciHubEVA-icon.png').resolve().as_posix() app.setWindowIcon(QIcon(icon_file_path)) if is_windows(): app.setFont(QFont('Microsoft YaHei')) eva = SciHubEVADialog() sys.exit(app.exec_())
def setupUi(self, Codec): if Codec.objectName(): Codec.setObjectName(u"Codec") Codec.resize(600, 450) self.centralwidget = QWidget(Codec) self.centralwidget.setObjectName(u"centralwidget") self.globalLayout = QVBoxLayout(self.centralwidget) self.globalLayout.setObjectName(u"globalLayout") self.layout1 = QHBoxLayout() self.layout1.setObjectName(u"layout1") self.actionsGroupBox = QGroupBox(self.centralwidget) self.actionsGroupBox.setObjectName(u"actionsGroupBox") self.verticalLayout = QVBoxLayout(self.actionsGroupBox) self.verticalLayout.setObjectName(u"verticalLayout") self.actionEncrypt = QRadioButton(self.actionsGroupBox) self.actionsButtonGroup = QButtonGroup(Codec) self.actionsButtonGroup.setObjectName(u"actionsButtonGroup") self.actionsButtonGroup.addButton(self.actionEncrypt) self.actionEncrypt.setObjectName(u"actionEncrypt") self.verticalLayout.addWidget(self.actionEncrypt) self.actionDecrypt = QRadioButton(self.actionsGroupBox) self.actionsButtonGroup.addButton(self.actionDecrypt) self.actionDecrypt.setObjectName(u"actionDecrypt") self.actionDecrypt.setChecked(True) self.verticalLayout.addWidget(self.actionDecrypt) self.layout1.addWidget(self.actionsGroupBox) self.filesGroupBox = QGroupBox(self.centralwidget) self.filesGroupBox.setObjectName(u"filesGroupBox") self.gridLayout = QGridLayout(self.filesGroupBox) self.gridLayout.setObjectName(u"gridLayout") self.labelDestination = QLabel(self.filesGroupBox) self.labelDestination.setObjectName(u"labelDestination") self.gridLayout.addWidget(self.labelDestination, 1, 0, 1, 1) self.editSource = QLineEdit(self.filesGroupBox) self.editSource.setObjectName(u"editSource") self.gridLayout.addWidget(self.editSource, 0, 1, 1, 1) self.browseDestination = QPushButton(self.filesGroupBox) self.browseDestination.setObjectName(u"browseDestination") icon = QIcon() icon.addFile(u"../../downloads/dir.png", QSize(), QIcon.Normal, QIcon.Off) self.browseDestination.setIcon(icon) self.gridLayout.addWidget(self.browseDestination, 1, 2, 1, 1) self.labelSource = QLabel(self.filesGroupBox) self.labelSource.setObjectName(u"labelSource") self.gridLayout.addWidget(self.labelSource, 0, 0, 1, 1) self.browseSource = QPushButton(self.filesGroupBox) self.browseSource.setObjectName(u"browseSource") icon1 = QIcon() icon1.addFile(u"../../downloads/file.svg", QSize(), QIcon.Normal, QIcon.Off) self.browseSource.setIcon(icon1) self.gridLayout.addWidget(self.browseSource, 0, 2, 1, 1) self.editDestination = QLineEdit(self.filesGroupBox) self.editDestination.setObjectName(u"editDestination") self.gridLayout.addWidget(self.editDestination, 1, 1, 1, 1) self.layout1.addWidget(self.filesGroupBox) self.globalLayout.addLayout(self.layout1) self.layout2 = QHBoxLayout() self.layout2.setObjectName(u"layout2") self.buttonAction = QPushButton(self.centralwidget) self.buttonAction.setObjectName(u"buttonAction") self.layout2.addWidget(self.buttonAction) self.progressBar = QProgressBar(self.centralwidget) self.progressBar.setObjectName(u"progressBar") self.progressBar.setEnabled(False) self.progressBar.setValue(0) self.layout2.addWidget(self.progressBar) self.globalLayout.addLayout(self.layout2) Codec.setCentralWidget(self.centralwidget) self.statusbar = QStatusBar(Codec) self.statusbar.setObjectName(u"statusbar") Codec.setStatusBar(self.statusbar) #if QT_CONFIG(shortcut) self.labelDestination.setBuddy(self.editDestination) self.labelSource.setBuddy(self.editSource) #endif // QT_CONFIG(shortcut) QWidget.setTabOrder(self.actionEncrypt, self.actionDecrypt) QWidget.setTabOrder(self.actionDecrypt, self.editSource) QWidget.setTabOrder(self.editSource, self.browseSource) QWidget.setTabOrder(self.browseSource, self.editDestination) QWidget.setTabOrder(self.editDestination, self.browseDestination) QWidget.setTabOrder(self.browseDestination, self.buttonAction) self.retranslateUi(Codec) QMetaObject.connectSlotsByName(Codec)
def add_directory_submenu(self, parentMenuClass: FolderItem): qtParentMenuItem = parentMenuClass.getQtMenuItem() # Don't add the menu items multiple times, every time you hover a submenu. if parentMenuClass.isSubmenuItemsAdded == True: return None parentMenuClass.isSubmenuItemsAdded = True dirPath: str = parentMenuClass.getFullPath() osPaths = sorted(Path(dirPath).glob('*')) osPaths.sort(key=lambda x: x.is_file()) filesAndFoldersArr = [] for item in osPaths: # path = dirPath + '/' + item.name if item.is_dir( ) == True and self.includeExclude.folderIsNotExcluded(item): folderIcon = self.systemIcon['folder'] if item.is_symlink(): folderIcon = self.systemIcon['folderLink'] qtFolderItem = qtParentMenuItem.addMenu( folderIcon, '&' + item.name) folderItemClass = FolderItem(qtMenuItem=qtFolderItem, label=item.name, iconPath='', globalHotkey='', path=item) uid = folderItemClass.getUid() self.objectList[uid] = folderItemClass filesAndFoldersArr.append(folderItemClass) qtFolderItem.aboutToShow.connect( lambda folderItemClass=folderItemClass: self. add_directory_submenu(folderItemClass)) # newFolder.triggered.connect(self.action_directory(item.uid)) elif item.is_file() and self.includeExclude.fileIsNotExcluded( item): fileExt = item.suffix qtIcon = self.systemIcon['file'] # If we have a icon for the filetype, use that instead if fileExt in self.filetypeIcon: qtIcon = QIcon(str(self.filetypeIcon[fileExt])) qtFileItem = qtParentMenuItem.addAction(qtIcon, item.name) folderItemClass = FolderItem(qtMenuItem=qtFileItem, label=item.name, iconPath='', globalHotkey='', path=item) uid = folderItemClass.getUid() self.objectList[uid] = folderItemClass filesAndFoldersArr.append(folderItemClass) # filename # item.name # extension # item.suffix # newFile.triggered.connect(self.action_directory(item.uid)) # # newFile.hovered.connect(self.exit_app) # # newFile.hovered.connect(lambda: item.printUid()) # # func = self.hover() # # newFile.hovered.connect(lambda f=func,arg=newFile:f(arg)) else: print("It is a special file (socket, FIFO, device file)")
def update_plugins(): for plugin in [plugin1, plugin2]: plugin_id = plugin.plugin_id for host in hosts: host.update(plugin_id) timer = QTimer() timer.timeout.connect(update_plugins) secs = 60 timer.start(secs * 1000) QTimer.singleShot(10, update_plugins) main = MainView(hosts, plugins) #--------------------------------------------------------- # Icon #--------------------------------------------------------- icon = QIcon("icons/Rynner-icon-256.png") icon.addFile("icons/Rynner-icon-32.png") main.setWindowIcon(icon) main.setWindowTitle("Rynner") #--------------------------------------------------------- # Start #--------------------------------------------------------- main.show() app.exec_()
def __init__(self): super().__init__() # setting the icon for window self.setWindowIcon(QIcon("misc/DLStream_Logo_small.png")) self.setWindowTitle("DeepLabStream") self.title = "ButtonWindow" # next is the complete buttons dictionary with buttons, icons, functions and layouts self._buttons_dict = { "Start_Stream": { "Button": QPushButton("Start Stream"), "Icon": QIcon("misc/StartStream2.png"), "Function": self.start_stream, "Layout": (0, 0, 2, 2), "State": True, }, "Start_Analysis": { "Button": QPushButton("Start Analysis"), "Icon": QIcon("misc/StartAnalysis2.png"), "Function": self.start_analysis, "Layout": (2, 0, 2, 1), "State": False, }, "Start_Experiment": { "Button": QPushButton("Start Experiment"), "Icon": QIcon("misc/StartExperiment2.png"), "Function": self.start_experiment, "Layout": (4, 0, 2, 1), "State": False, }, "Start_Recording": { "Button": QPushButton("Start Recording"), "Icon": QIcon("misc/StartRecording2.png"), "Function": self.start_recording, "Layout": (6, 0, 2, 1), "State": False, }, "Stop_Stream": { "Button": QPushButton("Stop Stream"), "Icon": QIcon("misc/StopStream2.png"), "Function": self.stop_stream, "Layout": (8, 0, 2, 2), "State": False, }, "Stop_Analysis": { "Button": QPushButton("Stop Analysis"), "Icon": QIcon("misc/StopAnalysis2.png"), "Function": self.stop_analysis, "Layout": (2, 1, 2, 1), "State": False, }, "Stop_Experiment": { "Button": QPushButton("Stop Experiment"), "Icon": QIcon("misc/StopExperiment2.png"), "Function": self.stop_experiment, "Layout": (4, 1, 2, 1), "State": False, }, "Stop_Recording": { "Button": QPushButton("Stop Recording"), "Icon": QIcon("misc/StopRecording2.png"), "Function": self.stop_recording, "Layout": (6, 1, 2, 1), "State": False, }, } # creating button layout with icons and functionality self.initialize_buttons() self._thread = None self.image_windows = {}
def __init__(self, title="Font", parent=None): super().__init__(title, parent) self._parent = parent self.setObjectName("ftoolbar") self.setStyleSheet(""" QWidget[objectName^="ftoolbar"]{background-color: #777777;} QPushButton{background-color: #777777;} QToolButton{background-color: #777777;}; """) font = QFont() font.setPointSize(12) font.setFamily("Times New Roman") self._font_families = QFontComboBox() self._font_families.setCurrentFont(font) self._font_families.currentFontChanged.connect(self.keepFontSize) self._font_sizes = QComboBox() self._font_sizes.setEditable(True) validator = QIntValidator() self._font_sizes.setValidator(validator) FONT_SIZES = [ '8', '9', '11', '12', '14', '16', '18', '20', '22', '24', '26', '28', '36', '48', '72' ] self._font_sizes.addItems(FONT_SIZES) self._font_sizes.activated.connect(self.changeFontSize) self._font_sizes.setCurrentIndex(3) self.addWidget(QLabel(" Font: ")) self.addWidget(self._font_families) self.addWidget(self._font_sizes) # Bold Button self.bold_action = QAction( QIcon(os.path.join("images", "edit-bold.png")), "Bold", self) self.bold_action.setStatusTip("Bold") self.bold_action.setShortcut(QKeySequence.Bold) self.bold_action.setCheckable(True) self.addAction(self.bold_action) # Italic Button self.italic_action = QAction( QIcon(os.path.join("images", "edit-italic.png")), "Italic", self) self.italic_action.setStatusTip("Italic") self.italic_action.setShortcut(QKeySequence.Italic) self.italic_action.setCheckable(True) self.addAction(self.italic_action) # Underline Button self.underline_action = QAction( QIcon(os.path.join("images", "edit-underline.png")), "Underline", self) self.underline_action.setStatusTip("Underline") self.underline_action.setShortcut(QKeySequence.Underline) self.underline_action.setCheckable(True) self.addAction(self.underline_action) self.addWidget(VBreakLine(self)) # Font Color Button self.font_color_action = QAction( QIcon(os.path.join("images", "edit-color.png")), "Font Color", self) self.font_color_button = HighlighterButton(color="#000000") self.font_color_action.setStatusTip("Font Color") self.font_color_action.triggered.connect(self.changeFontColor) self.font_color_button.clicked.connect(self.changeFontColor) self.addAction(self.font_color_action) self.addWidget(self.font_color_button) self.addWidget(VBreakLine(self)) # HighLighter Color Button self.highlighter_action = QAction( QIcon(os.path.join("images", "edit-highlighter.png")), "Highlight Color") self.highlighter_button = HighlighterButton(color="yellow") self.highlighter_action.setStatusTip("Highlighter") self.highlighter_action.triggered.connect(self.changeHighlighterColor) self.highlighter_button.clicked.connect(self.changeHighlighterColor) self.addAction(self.highlighter_action) self.addWidget(self.highlighter_button) self.addWidget(VBreakLine(self))
def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(330, 417) self.centralwidget = QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.horizontalLayout = QHBoxLayout(self.centralwidget) self.horizontalLayout.setObjectName("horizontalLayout") self.verticalLayout = QVBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.horizontalLayout_3 = QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.lineEdit = QLineEdit(self.centralwidget) self.lineEdit.setObjectName("lineEdit") self.horizontalLayout_3.addWidget(self.lineEdit) self.pushButton = QPushButton(self.centralwidget) self.pushButton.setText("") icon = QIcon() icon.addPixmap(QPixmap("images/arrow-circle-225.png"), QIcon.Normal, QIcon.Off) self.pushButton.setIcon(icon) self.pushButton.setObjectName("pushButton") self.horizontalLayout_3.addWidget(self.pushButton) self.verticalLayout.addLayout(self.horizontalLayout_3) self.horizontalLayout_4 = QHBoxLayout() self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.weatherIcon = QLabel(self.centralwidget) sizePolicy = QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.weatherIcon.sizePolicy().hasHeightForWidth()) self.weatherIcon.setSizePolicy(sizePolicy) self.weatherIcon.setMinimumSize(QSize(64, 64)) self.weatherIcon.setMaximumSize(QSize(64, 64)) self.weatherIcon.setText("") self.weatherIcon.setObjectName("weatherIcon") self.horizontalLayout_4.addWidget(self.weatherIcon) self.weatherLabel = QLabel(self.centralwidget) self.weatherLabel.setText("") self.weatherLabel.setObjectName("weatherLabel") self.horizontalLayout_4.addWidget(self.weatherLabel) self.verticalLayout.addLayout(self.horizontalLayout_4) self.gridLayout_2 = QGridLayout() self.gridLayout_2.setObjectName("gridLayout_2") self.forecastIcon4 = QLabel(self.centralwidget) sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.forecastIcon4.sizePolicy().hasHeightForWidth()) self.forecastIcon4.setSizePolicy(sizePolicy) self.forecastIcon4.setMinimumSize(QSize(64, 64)) self.forecastIcon4.setMaximumSize(QSize(200, 32)) self.forecastIcon4.setBaseSize(QSize(0, 0)) self.forecastIcon4.setText("") self.forecastIcon4.setAlignment(Qt.AlignCenter) self.forecastIcon4.setObjectName("forecastIcon4") self.gridLayout_2.addWidget(self.forecastIcon4, 1, 3, 1, 1) self.forecastTemp2 = QLabel(self.centralwidget) self.forecastTemp2.setText("") self.forecastTemp2.setObjectName("forecastTemp2") self.gridLayout_2.addWidget(self.forecastTemp2, 2, 1, 1, 1) self.forecastTemp5 = QLabel(self.centralwidget) self.forecastTemp5.setText("") self.forecastTemp5.setObjectName("forecastTemp5") self.gridLayout_2.addWidget(self.forecastTemp5, 2, 4, 1, 1) self.forecastTemp4 = QLabel(self.centralwidget) self.forecastTemp4.setText("") self.forecastTemp4.setObjectName("forecastTemp4") self.gridLayout_2.addWidget(self.forecastTemp4, 2, 3, 1, 1) self.forecastIcon2 = QLabel(self.centralwidget) sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.forecastIcon2.sizePolicy().hasHeightForWidth()) self.forecastIcon2.setSizePolicy(sizePolicy) self.forecastIcon2.setMinimumSize(QSize(64, 64)) self.forecastIcon2.setMaximumSize(QSize(200, 32)) self.forecastIcon2.setBaseSize(QSize(0, 0)) self.forecastIcon2.setText("") self.forecastIcon2.setAlignment(Qt.AlignCenter) self.forecastIcon2.setObjectName("forecastIcon2") self.gridLayout_2.addWidget(self.forecastIcon2, 1, 1, 1, 1) self.forecastIcon5 = QLabel(self.centralwidget) sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.forecastIcon5.sizePolicy().hasHeightForWidth()) self.forecastIcon5.setSizePolicy(sizePolicy) self.forecastIcon5.setMinimumSize(QSize(64, 64)) self.forecastIcon5.setMaximumSize(QSize(200, 32)) self.forecastIcon5.setBaseSize(QSize(0, 0)) self.forecastIcon5.setText("") self.forecastIcon5.setAlignment(Qt.AlignCenter) self.forecastIcon5.setObjectName("forecastIcon5") self.gridLayout_2.addWidget(self.forecastIcon5, 1, 4, 1, 1) self.forecastIcon1 = QLabel(self.centralwidget) sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.forecastIcon1.sizePolicy().hasHeightForWidth()) self.forecastIcon1.setSizePolicy(sizePolicy) self.forecastIcon1.setMinimumSize(QSize(64, 64)) self.forecastIcon1.setMaximumSize(QSize(200, 32)) self.forecastIcon1.setBaseSize(QSize(0, 0)) self.forecastIcon1.setText("") self.forecastIcon1.setAlignment(Qt.AlignCenter) self.forecastIcon1.setObjectName("forecastIcon1") self.gridLayout_2.addWidget(self.forecastIcon1, 1, 0, 1, 1) self.forecastIcon3 = QLabel(self.centralwidget) sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.forecastIcon3.sizePolicy().hasHeightForWidth()) self.forecastIcon3.setSizePolicy(sizePolicy) self.forecastIcon3.setMinimumSize(QSize(64, 64)) self.forecastIcon3.setMaximumSize(QSize(200, 32)) self.forecastIcon3.setBaseSize(QSize(0, 0)) self.forecastIcon3.setText("") self.forecastIcon3.setAlignment(Qt.AlignCenter) self.forecastIcon3.setObjectName("forecastIcon3") self.gridLayout_2.addWidget(self.forecastIcon3, 1, 2, 1, 1) self.forecastTemp3 = QLabel(self.centralwidget) self.forecastTemp3.setText("") self.forecastTemp3.setObjectName("forecastTemp3") self.gridLayout_2.addWidget(self.forecastTemp3, 2, 2, 1, 1) self.forecastTemp1 = QLabel(self.centralwidget) self.forecastTemp1.setText("") self.forecastTemp1.setObjectName("forecastTemp1") self.gridLayout_2.addWidget(self.forecastTemp1, 2, 0, 1, 1) self.forecastTime1 = QLabel(self.centralwidget) self.forecastTime1.setAlignment(Qt.AlignCenter) self.forecastTime1.setObjectName("forecastTime1") self.gridLayout_2.addWidget(self.forecastTime1, 0, 0, 1, 1) self.forecastTime2 = QLabel(self.centralwidget) self.forecastTime2.setAlignment(Qt.AlignCenter) self.forecastTime2.setObjectName("forecastTime2") self.gridLayout_2.addWidget(self.forecastTime2, 0, 1, 1, 1) self.forecastTime3 = QLabel(self.centralwidget) self.forecastTime3.setAlignment(Qt.AlignCenter) self.forecastTime3.setObjectName("forecastTime3") self.gridLayout_2.addWidget(self.forecastTime3, 0, 2, 1, 1) self.forecastTime4 = QLabel(self.centralwidget) self.forecastTime4.setAlignment(Qt.AlignCenter) self.forecastTime4.setObjectName("forecastTime4") self.gridLayout_2.addWidget(self.forecastTime4, 0, 3, 1, 1) self.forecastTime5 = QLabel(self.centralwidget) self.forecastTime5.setAlignment(Qt.AlignCenter) self.forecastTime5.setObjectName("forecastTime5") self.gridLayout_2.addWidget(self.forecastTime5, 0, 4, 1, 1) self.verticalLayout.addLayout(self.gridLayout_2) self.gridLayout = QGridLayout() self.gridLayout.setObjectName("gridLayout") self.formLayout = QFormLayout() self.formLayout.setObjectName("formLayout") self.label_5 = QLabel(self.centralwidget) font = QFont() font.setBold(True) font.setWeight(75) self.label_5.setFont(font) self.label_5.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_5.setObjectName("label_5") self.formLayout.setWidget(2, QFormLayout.LabelRole, self.label_5) self.label_6 = QLabel(self.centralwidget) self.label_6.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_6.setObjectName("label_6") self.formLayout.setWidget(3, QFormLayout.LabelRole, self.label_6) self.temperatureLabel = QLabel(self.centralwidget) self.temperatureLabel.setText("") self.temperatureLabel.setObjectName("temperatureLabel") self.formLayout.setWidget(3, QFormLayout.FieldRole, self.temperatureLabel) self.label_7 = QLabel(self.centralwidget) self.label_7.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_7.setObjectName("label_7") self.formLayout.setWidget(4, QFormLayout.LabelRole, self.label_7) self.humidityLabel = QLabel(self.centralwidget) self.humidityLabel.setText("") self.humidityLabel.setObjectName("humidityLabel") self.formLayout.setWidget(4, QFormLayout.FieldRole, self.humidityLabel) self.label_8 = QLabel(self.centralwidget) self.label_8.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_8.setObjectName("label_8") self.formLayout.setWidget(5, QFormLayout.LabelRole, self.label_8) self.pressureLabel = QLabel(self.centralwidget) self.pressureLabel.setText("") self.pressureLabel.setObjectName("pressureLabel") self.formLayout.setWidget(5, QFormLayout.FieldRole, self.pressureLabel) self.label = QLabel(self.centralwidget) font = QFont() font.setBold(True) font.setWeight(75) self.label.setFont(font) self.label.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label.setObjectName("label") self.formLayout.setWidget(6, QFormLayout.LabelRole, self.label) self.label_2 = QLabel(self.centralwidget) self.label_2.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_2.setObjectName("label_2") self.formLayout.setWidget(7, QFormLayout.LabelRole, self.label_2) self.longitudeLabel = QLabel(self.centralwidget) self.longitudeLabel.setText("") self.longitudeLabel.setObjectName("longitudeLabel") self.formLayout.setWidget(7, QFormLayout.FieldRole, self.longitudeLabel) self.label_3 = QLabel(self.centralwidget) self.label_3.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_3.setObjectName("label_3") self.formLayout.setWidget(8, QFormLayout.LabelRole, self.label_3) self.latitudeLabel = QLabel(self.centralwidget) self.latitudeLabel.setText("") self.latitudeLabel.setObjectName("latitudeLabel") self.formLayout.setWidget(8, QFormLayout.FieldRole, self.latitudeLabel) self.label_4 = QLabel(self.centralwidget) self.label_4.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_4.setObjectName("label_4") self.formLayout.setWidget(9, QFormLayout.LabelRole, self.label_4) self.sunriseLabel = QLabel(self.centralwidget) self.sunriseLabel.setText("") self.sunriseLabel.setObjectName("sunriseLabel") self.formLayout.setWidget(9, QFormLayout.FieldRole, self.sunriseLabel) self.label_9 = QLabel(self.centralwidget) self.label_9.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_9.setObjectName("label_9") self.formLayout.setWidget(1, QFormLayout.LabelRole, self.label_9) self.label_10 = QLabel(self.centralwidget) font = QFont() font.setBold(True) font.setWeight(75) self.label_10.setFont(font) self.label_10.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) self.label_10.setObjectName("label_10") self.formLayout.setWidget(0, QFormLayout.LabelRole, self.label_10) self.windLabel = QLabel(self.centralwidget) self.windLabel.setText("") self.windLabel.setObjectName("windLabel") self.formLayout.setWidget(1, QFormLayout.FieldRole, self.windLabel) self.label_11 = QLabel(self.centralwidget) self.label_11.setText("") self.label_11.setObjectName("label_11") self.formLayout.setWidget(0, QFormLayout.FieldRole, self.label_11) self.label_13 = QLabel(self.centralwidget) self.label_13.setText("") self.label_13.setObjectName("label_13") self.formLayout.setWidget(6, QFormLayout.FieldRole, self.label_13) self.label_12 = QLabel(self.centralwidget) self.label_12.setText("") self.label_12.setObjectName("label_12") self.formLayout.setWidget(2, QFormLayout.FieldRole, self.label_12) self.gridLayout.addLayout(self.formLayout, 1, 0, 1, 1) self.verticalLayout.addLayout(self.gridLayout) self.horizontalLayout.addLayout(self.verticalLayout) MainWindow.setCentralWidget(self.centralwidget) self.retranslateUi(MainWindow) QMetaObject.connectSlotsByName(MainWindow)
def __init__(self, title="Text Alignment", parent=None): super().__init__(title, parent) self._parent = parent self.setObjectName("alitoolbar") self.setStyleSheet(""" QWidget[objectName^="alitoolbar"]{background-color: #777777;} QPushButton{background-color: #777777;} QToolButton{background-color: #777777;}; """) # ALIGNMENT FORMATTING #********************* # Align Actions #------------------------------------------------------------ self.alignl_action = QAction( QIcon(os.path.join('images', 'edit-alignment.png')), "Align left", self) self.alignc_action = QAction( QIcon(os.path.join('images', 'edit-alignment-center.png')), "Align center", self) self.alignr_action = QAction( QIcon(os.path.join('images', 'edit-alignment-right.png')), "Align right", self) self.alignj_action = QAction( QIcon(os.path.join('images', 'edit-alignment-justify.png')), "Justify", self) # Align Settings #------------------------------------------------------------ # Align Left self.alignl_action.setStatusTip("Align text left") self.alignl_action.setCheckable(True) self.alignl_action.toggled.connect( lambda toggled: self._parent.activeNotepad().setAlignment( Qt.AlignLeft if toggled else Qt.AlignJustify)) # Align Center self.alignc_action.setStatusTip("Align text center") self.alignc_action.setCheckable(True) self.alignc_action.toggled.connect( lambda toggled: self._parent.activeNotepad().setAlignment( Qt.AlignCenter if toggled else Qt.AlignLeft)) # Align Right self.alignr_action.setStatusTip("Align text right") self.alignr_action.setCheckable(True) self.alignr_action.toggled.connect( lambda toggled: self._parent.activeNotepad().setAlignment( Qt.AlignRight if toggled else Qt.AlignLeft)) # Justify self.alignj_action.setStatusTip("Justify text") self.alignj_action.setCheckable(True) self.alignj_action.toggled.connect( lambda toggled: self._parent.activeNotepad().setAlignment( Qt.AlignJustify if toggled else Qt.AlignLeft)) # Align Group ############################################### self.align_group = QActionGroup(self) self.align_group.setExclusionPolicy( QActionGroup.ExclusionPolicy.ExclusiveOptional) self.align_group.addAction(self.alignl_action) self.align_group.addAction(self.alignc_action) self.align_group.addAction(self.alignr_action) self.align_group.addAction(self.alignj_action) # Add actions to the tool bar self.addAction(self.alignl_action) self.addAction(self.alignc_action) self.addAction(self.alignr_action) self.addAction(self.alignj_action) ############################################### # LIST FORMATTING #***************** # List Actions #------------------------------------------------------------ self.list_action = QAction( QIcon(os.path.join('images', 'edit-list.png')), "List", self) self.ord_list_action = QAction( QIcon(os.path.join('images', 'edit-list-order.png')), "Ordered List", self) # List Widgets #------------------------------------------------------------ self.list_style_combo = QComboBox() self.ord_list_style_combo = QComboBox() # List Settings #------------------------------------------------------------ # List self.list_action.setStatusTip("Create list") self.list_action.setCheckable(True) self.list_action.toggled.connect(self.createList) # List Style list_styles = ["Disc", "Circle", "Square"] self.list_style_combo.addItems(list_styles) self.list_style_combo.activated.connect(self.changeListStyle) # Ordered List self.ord_list_action.setStatusTip("Create ordered list") self.ord_list_action.setCheckable(True) self.ord_list_action.toggled.connect(self.createOrdList) # Ordered List Style ord_list_styles = [ "Decimal", "Lower Alpha", "Upper Alpha", "Lower Roman", "Upper Roman" ] self.ord_list_style_combo.addItems(ord_list_styles) self.ord_list_style_combo.activated.connect(self.changeOrdListStyle) # Align Group (and widgets) ############################################### self.list_group = QActionGroup(self) self.list_group.setExclusionPolicy( QActionGroup.ExclusionPolicy.ExclusiveOptional) self.list_group.addAction(self.list_action) self.list_group.addAction(self.ord_list_action) # Add Actions and Widgets to the tool bar self.addAction(self.list_action) self.addWidget(self.list_style_combo) self.addAction(self.ord_list_action) self.addWidget(self.ord_list_style_combo)
def __init__(self): super(manageMembers, self).__init__() self.setWindowTitle("Tagok kezelése") widget = QWidget() main_layout = QHBoxLayout() widget.setLayout(main_layout) self.setCentralWidget(widget) # self.client = MysqlClient() self.table_view = QTableView() ##################################### # self.model = TableModel(self.table_name, fejlec) self.model = QSqlTableModel( db=db) ##################################### # a megjelenített tábla neve # self.table_name = "members" self.table_view.setModel( self.model) #################################### self.model.setTable("members") #################################### self.model.select() #################################### main_layout.addWidget(self.table_view) ####fejlec = ['id', "Vezetéknév", "Utónév", "Született", "Ir.szám", "Helység", "Cím", "Telefon", "E-mail", #### "Tagság kezdete", 'Aktív'] # self.model = TableModel(self.table_name) # print(self.model) ###self.table_view.setModel(self.model) ####self.table_view.setSortingEnabled(True) # Az első oszlop (id) elrejtése ####self.table_view.hideColumn(0) ####self.table_view.resizeColumnsToContents() gomb_layout = QVBoxLayout() main_layout.addLayout(gomb_layout) self.delete_button = QPushButton("&Tag törlése") self.add_button = QPushButton("&Új tag") self.modify_button = QPushButton("Tag &módosítása") gomb_layout.addWidget(self.delete_button) gomb_layout.addWidget(self.add_button) gomb_layout.addWidget(self.modify_button) self.space = QSpacerItem(0, 0, QSizePolicy.Minimum, QSizePolicy.Expanding) gomb_layout.addItem(self.space) # self.resize(320, 200) self.setFixedSize(1000, 800) # self.showMaximized() # self.setWindowFlags(Qt.Window|Qt.WindowTitleHint) tb = self.addToolBar("File") exit = QAction(QIcon("images/door--arrow.png"), "Kilépés", self) tb.addAction(exit) excel = QAction(QIcon("images/excel.png"), "Excel", self) tb.addAction(excel) tb.actionTriggered[QAction].connect(self.toolbarpressed) # self.delete_button.clicked.connect(lambda: self.model.delete(self.table_view.selectedIndexes()[0])) self.delete_button.clicked.connect(self.tag_torles) ###self.add_button.clicked.connect(self.model.add) self.modify_button.clicked.connect(self.tag_modositas)
def setIcon(self): icon = QIcon("icon.png") self.setWindowIcon(icon)
def __init__(self, *args, **kwargs): super(MainWindow, self).__init__(*args, **kwargs) layout = QVBoxLayout() self.editor = TextEdit() # Setup the QTextEdit editor configuration self.editor.setAutoFormatting(QTextEdit.AutoAll) self.editor.selectionChanged.connect(self.update_format) # Initialize default font size. font = QFont('Times', 12) self.editor.setFont(font) # We need to repeat the size to init the current format. self.editor.setFontPointSize(12) # self.path holds the path of the currently open file. # If none, we haven't got a file open yet (or creating new). self.path = None layout.addWidget(self.editor) container = QWidget() container.setLayout(layout) self.setCentralWidget(container) self.status = QStatusBar() self.setStatusBar(self.status) # Uncomment to disable native menubar on Mac # self.menuBar().setNativeMenuBar(False) file_toolbar = QToolBar("File") file_toolbar.setIconSize(QSize(14, 14)) self.addToolBar(file_toolbar) file_menu = self.menuBar().addMenu("&File") open_file_action = QAction( QIcon(os.path.join('images', 'blue-folder-open-document.png')), "Open file...", self) open_file_action.setStatusTip("Open file") open_file_action.triggered.connect(self.file_open) file_menu.addAction(open_file_action) file_toolbar.addAction(open_file_action) save_file_action = QAction(QIcon(os.path.join('images', 'disk.png')), "Save", self) save_file_action.setStatusTip("Save current page") save_file_action.triggered.connect(self.file_save) file_menu.addAction(save_file_action) file_toolbar.addAction(save_file_action) saveas_file_action = QAction( QIcon(os.path.join('images', 'disk--pencil.png')), "Save As...", self) saveas_file_action.setStatusTip("Save current page to specified file") saveas_file_action.triggered.connect(self.file_saveas) file_menu.addAction(saveas_file_action) file_toolbar.addAction(saveas_file_action) print_action = QAction(QIcon(os.path.join('images', 'printer.png')), "Print...", self) print_action.setStatusTip("Print current page") print_action.triggered.connect(self.file_print) file_menu.addAction(print_action) file_toolbar.addAction(print_action) edit_toolbar = QToolBar("Edit") edit_toolbar.setIconSize(QSize(16, 16)) self.addToolBar(edit_toolbar) edit_menu = self.menuBar().addMenu("&Edit") undo_action = QAction( QIcon(os.path.join('images', 'arrow-curve-180-left.png')), "Undo", self) undo_action.setStatusTip("Undo last change") undo_action.triggered.connect(self.editor.undo) edit_menu.addAction(undo_action) redo_action = QAction(QIcon(os.path.join('images', 'arrow-curve.png')), "Redo", self) redo_action.setStatusTip("Redo last change") redo_action.triggered.connect(self.editor.redo) edit_toolbar.addAction(redo_action) edit_menu.addAction(redo_action) edit_menu.addSeparator() cut_action = QAction(QIcon(os.path.join('images', 'scissors.png')), "Cut", self) cut_action.setStatusTip("Cut selected text") cut_action.setShortcut(QKeySequence.Cut) cut_action.triggered.connect(self.editor.cut) edit_toolbar.addAction(cut_action) edit_menu.addAction(cut_action) copy_action = QAction( QIcon(os.path.join('images', 'document-copy.png')), "Copy", self) copy_action.setStatusTip("Copy selected text") cut_action.setShortcut(QKeySequence.Copy) copy_action.triggered.connect(self.editor.copy) edit_toolbar.addAction(copy_action) edit_menu.addAction(copy_action) paste_action = QAction( QIcon(os.path.join('images', 'clipboard-paste-document-text.png')), "Paste", self) paste_action.setStatusTip("Paste from clipboard") cut_action.setShortcut(QKeySequence.Paste) paste_action.triggered.connect(self.editor.paste) edit_toolbar.addAction(paste_action) edit_menu.addAction(paste_action) select_action = QAction( QIcon(os.path.join('images', 'selection-input.png')), "Select all", self) select_action.setStatusTip("Select all text") cut_action.setShortcut(QKeySequence.SelectAll) select_action.triggered.connect(self.editor.selectAll) edit_menu.addAction(select_action) edit_menu.addSeparator() wrap_action = QAction( QIcon(os.path.join('images', 'arrow-continue.png')), "Wrap text to window", self) wrap_action.setStatusTip("Toggle wrap text to window") wrap_action.setCheckable(True) wrap_action.setChecked(True) wrap_action.triggered.connect(self.edit_toggle_wrap) edit_menu.addAction(wrap_action) format_toolbar = QToolBar("Format") format_toolbar.setIconSize(QSize(16, 16)) self.addToolBar(format_toolbar) format_menu = self.menuBar().addMenu("&Format") # We need references to these actions/settings to update as selection changes, so attach to self. self.fonts = QFontComboBox() self.fonts.currentFontChanged.connect(self.editor.setCurrentFont) format_toolbar.addWidget(self.fonts) self.fontsize = QComboBox() self.fontsize.addItems([str(s) for s in FONT_SIZES]) # Connect to the signal producing the text of the current selection. Convert the string to float # and set as the pointsize. We could also use the index + retrieve from FONT_SIZES. self.fontsize.currentIndexChanged[str].connect( lambda s: self.editor.setFontPointSize(float(s))) format_toolbar.addWidget(self.fontsize) self.bold_action = QAction( QIcon(os.path.join('images', 'edit-bold.png')), "Bold", self) self.bold_action.setStatusTip("Bold") self.bold_action.setShortcut(QKeySequence.Bold) self.bold_action.setCheckable(True) self.bold_action.toggled.connect(lambda x: self.editor.setFontWeight( QFont.Bold if x else QFont.Normal)) format_toolbar.addAction(self.bold_action) format_menu.addAction(self.bold_action) self.italic_action = QAction( QIcon(os.path.join('images', 'edit-italic.png')), "Italic", self) self.italic_action.setStatusTip("Italic") self.italic_action.setShortcut(QKeySequence.Italic) self.italic_action.setCheckable(True) self.italic_action.toggled.connect(self.editor.setFontItalic) format_toolbar.addAction(self.italic_action) format_menu.addAction(self.italic_action) self.underline_action = QAction( QIcon(os.path.join('images', 'edit-underline.png')), "Underline", self) self.underline_action.setStatusTip("Underline") self.underline_action.setShortcut(QKeySequence.Underline) self.underline_action.setCheckable(True) self.underline_action.toggled.connect(self.editor.setFontUnderline) format_toolbar.addAction(self.underline_action) format_menu.addAction(self.underline_action) format_menu.addSeparator() self.alignl_action = QAction( QIcon(os.path.join('images', 'edit-alignment.png')), "Align left", self) self.alignl_action.setStatusTip("Align text left") self.alignl_action.setCheckable(True) self.alignl_action.triggered.connect( lambda: self.editor.setAlignment(Qt.AlignLeft)) format_toolbar.addAction(self.alignl_action) format_menu.addAction(self.alignl_action) self.alignc_action = QAction( QIcon(os.path.join('images', 'edit-alignment-center.png')), "Align center", self) self.alignc_action.setStatusTip("Align text center") self.alignc_action.setCheckable(True) self.alignc_action.triggered.connect( lambda: self.editor.setAlignment(Qt.AlignCenter)) format_toolbar.addAction(self.alignc_action) format_menu.addAction(self.alignc_action) self.alignr_action = QAction( QIcon(os.path.join('images', 'edit-alignment-right.png')), "Align right", self) self.alignr_action.setStatusTip("Align text right") self.alignr_action.setCheckable(True) self.alignr_action.triggered.connect( lambda: self.editor.setAlignment(Qt.AlignRight)) format_toolbar.addAction(self.alignr_action) format_menu.addAction(self.alignr_action) self.alignj_action = QAction( QIcon(os.path.join('images', 'edit-alignment-justify.png')), "Justify", self) self.alignj_action.setStatusTip("Justify text") self.alignj_action.setCheckable(True) self.alignj_action.triggered.connect( lambda: self.editor.setAlignment(Qt.AlignJustify)) format_toolbar.addAction(self.alignj_action) format_menu.addAction(self.alignj_action) format_group = QActionGroup(self) format_group.setExclusive(True) format_group.addAction(self.alignl_action) format_group.addAction(self.alignc_action) format_group.addAction(self.alignr_action) format_group.addAction(self.alignj_action) format_menu.addSeparator() # A list of all format-related widgets/actions, so we can disable/enable signals when updating. self._format_actions = [ self.fonts, self.fontsize, self.bold_action, self.italic_action, self.underline_action, # We don't need to disable signals for alignment, as they are paragraph-wide. ] # Initialize. self.update_format() self.update_title() self.show()
def setup_p_view(self) -> None: """inits stacked widget page widget Returns: None""" self.p_view = QtWidgets.QWidget() self.stacked_widget.addWidget(self.p_view) self.model = QStandardItemModel(self.p_view) self.model.setHorizontalHeaderLabels(labels) self.filters = [] source_model = self.model for filter_num in range(7): filter = QSortFilterProxyModel() filter.setSourceModel(source_model) filter.setFilterKeyColumn(filter_num) source_model = filter self.filters.append(filter) delegate = ComboDelegate() self.table = QtWidgets.QTableView(self.p_view) self.table.setModel(self.filters[-1]) self.table.setItemDelegateForColumn(2, delegate) self.table.horizontalHeader().setStretchLastSection(True) self.table.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.header = FilterHeader(self.table) self.header.set_filter_boxes() self.header.setMaximumHeight(50) self.table.setHorizontalHeader(self.header) self.bt_burger = QPushButton(self.p_view) self.bt_burger.setIcon(QIcon("./data/menu2.svg")) self.bt_burger.setIconSize(QSize(30, 30)) self.bt_burger.setToolTip('slide out description') l_burger = QLabel("menu", self.p_view) self.bt_register_new = QPushButton(self.p_view) self.bt_register_new.setIcon(QIcon("./data/add.ico")) self.bt_register_new.setIconSize(QSize(30, 30)) self.bt_register_new.setToolTip("register new") l_register_new = QLabel("register new", self.p_view) self.bt_delete_column = QPushButton(self.p_view) self.bt_delete_column.setIcon(QIcon("./data/remove.ico")) self.bt_delete_column.setIconSize(QSize(30, 30)) self.bt_delete_column.setToolTip( "delete columns with min 1 cell selected") l_delete = QLabel("delete column", self.p_view) self.bt_hide_show_filter = QPushButton(self.p_view) self.bt_hide_show_filter.setIcon(QIcon("./data/show_hide.ico")) self.bt_hide_show_filter.setIconSize(QSize(30, 30)) self.bt_hide_show_filter.setToolTip("hide/show filter input") l_hide_show = QLabel("hide/show", self.p_view) self.left_btn_frame = QFrame(self.p_view) self.left_btn_frame.setMaximumWidth(40) self.left_btn_frame.setContentsMargins(0, 0, 0, 0) self.left_menu_frame = QFrame(self.p_view) self.left_menu_frame.setMaximumWidth(0) self.left_menu_frame.setContentsMargins(0, 0, 0, 0) p_view_layout2 = QtWidgets.QVBoxLayout(self.left_btn_frame) p_view_layout2.addWidget(self.bt_burger) p_view_layout2.addWidget(self.bt_register_new) p_view_layout2.addWidget(self.bt_delete_column) p_view_layout2.addWidget(self.bt_hide_show_filter) p_view_layout2.setAlignment(Qt.AlignTop) p_view_layout2.setContentsMargins(0, 0, 0, 0) self.p_view_layout3 = QtWidgets.QVBoxLayout(self.left_menu_frame) self.p_view_layout3.addWidget(l_burger) self.p_view_layout3.addWidget(l_register_new) self.p_view_layout3.addWidget(l_delete) self.p_view_layout3.addWidget(l_hide_show) self.p_view_layout3.setAlignment(Qt.AlignTop | Qt.AlignCenter) self.p_view_layout3.setContentsMargins(0, 0, 0, 0) self.p_view_layout3.setSpacing(25) p_view_layout = QHBoxLayout(self.p_view) p_view_layout.setContentsMargins(0, 0, 0, 0) p_view_layout.addWidget(self.left_btn_frame) p_view_layout.addWidget(self.left_menu_frame) p_view_layout.addWidget(self.table) self.p_view.setLayout(p_view_layout) self.p_view.addAction(self.action_open) self.p_view.addAction(self.action_save) self.p_view.addAction(self.action_new) self.p_view.addAction(self.action_print) self.p_view.addAction(self.action_register) self.p_view.addAction(self.action_hide_menu_bar)
def __init__(self): QMainWindow.__init__(self) self.setWindowTitle("Zephyrus - Information Handler") self.setWindowIcon( QIcon("view/images/branding/zephyrus_transparent.png"))
def _create_menu(self): file_menu = self.menuBar().addMenu("&File") exit_action = QAction(QIcon.fromTheme("application-exit"), "E&xit", self, shortcut="Ctrl+Q", triggered=qApp.quit) file_menu.addAction(exit_action) navigation_menu = self.menuBar().addMenu("&Navigation") style_icons = ':/qt-project.org/styles/commonstyle/images/' back_action = QAction(QIcon.fromTheme( "go-previous", QIcon(style_icons + 'left-32.png')), "Back", self, shortcut=QKeySequence(QKeySequence.Back), triggered=self._tab_widget.back) self._actions[QWebEnginePage.Back] = back_action back_action.setEnabled(False) navigation_menu.addAction(back_action) forward_action = QAction(QIcon.fromTheme( "go-next", QIcon(style_icons + 'right-32.png')), "Forward", self, shortcut=QKeySequence(QKeySequence.Forward), triggered=self._tab_widget.forward) forward_action.setEnabled(False) self._actions[QWebEnginePage.Forward] = forward_action navigation_menu.addAction(forward_action) reload_action = QAction(QIcon(style_icons + 'refresh-32.png'), "Reload", self, shortcut=QKeySequence(QKeySequence.Refresh), triggered=self._tab_widget.reload) self._actions[QWebEnginePage.Reload] = reload_action reload_action.setEnabled(False) navigation_menu.addAction(reload_action) navigation_menu.addSeparator() new_tab_action = QAction("New Tab", self, shortcut='Ctrl+T', triggered=self.add_browser_tab) navigation_menu.addAction(new_tab_action) close_tab_action = QAction("Close Current Tab", self, shortcut="Ctrl+W", triggered=self._close_current_tab) navigation_menu.addAction(close_tab_action) navigation_menu.addSeparator() history_action = QAction("History...", self, triggered=self._tab_widget.show_history) navigation_menu.addAction(history_action) edit_menu = self.menuBar().addMenu("&Edit") find_action = QAction("Find", self, shortcut=QKeySequence(QKeySequence.Find), triggered=self._show_find) edit_menu.addAction(find_action) edit_menu.addSeparator() undo_action = QAction("Undo", self, shortcut=QKeySequence(QKeySequence.Undo), triggered=self._tab_widget.undo) self._actions[QWebEnginePage.Undo] = undo_action undo_action.setEnabled(False) edit_menu.addAction(undo_action) redo_action = QAction("Redo", self, shortcut=QKeySequence(QKeySequence.Redo), triggered=self._tab_widget.redo) self._actions[QWebEnginePage.Redo] = redo_action redo_action.setEnabled(False) edit_menu.addAction(redo_action) edit_menu.addSeparator() cut_action = QAction("Cut", self, shortcut=QKeySequence(QKeySequence.Cut), triggered=self._tab_widget.cut) self._actions[QWebEnginePage.Cut] = cut_action cut_action.setEnabled(False) edit_menu.addAction(cut_action) copy_action = QAction("Copy", self, shortcut=QKeySequence(QKeySequence.Copy), triggered=self._tab_widget.copy) self._actions[QWebEnginePage.Copy] = copy_action copy_action.setEnabled(False) edit_menu.addAction(copy_action) paste_action = QAction("Paste", self, shortcut=QKeySequence(QKeySequence.Paste), triggered=self._tab_widget.paste) self._actions[QWebEnginePage.Paste] = paste_action paste_action.setEnabled(False) edit_menu.addAction(paste_action) edit_menu.addSeparator() select_all_action = QAction("Select All", self, shortcut=QKeySequence( QKeySequence.SelectAll), triggered=self._tab_widget.select_all) self._actions[QWebEnginePage.SelectAll] = select_all_action select_all_action.setEnabled(False) edit_menu.addAction(select_all_action) self._bookmark_menu = self.menuBar().addMenu("&Bookmarks") add_bookmark_action = QAction("&Add Bookmark", self, triggered=self._add_bookmark) self._bookmark_menu.addAction(add_bookmark_action) add_tool_bar_bookmark_action = QAction( "&Add Bookmark to Tool Bar", self, triggered=self._add_tool_bar_bookmark) self._bookmark_menu.addAction(add_tool_bar_bookmark_action) self._bookmark_menu.addSeparator() tools_menu = self.menuBar().addMenu("&Tools") download_action = QAction( "Open Downloads", self, triggered=DownloadWidget.open_download_directory) tools_menu.addAction(download_action) window_menu = self.menuBar().addMenu("&Window") window_menu.addAction(self._bookmark_dock.toggleViewAction()) window_menu.addSeparator() zoom_in_action = QAction(QIcon.fromTheme("zoom-in"), "Zoom In", self, shortcut=QKeySequence(QKeySequence.ZoomIn), triggered=self._zoom_in) window_menu.addAction(zoom_in_action) zoom_out_action = QAction(QIcon.fromTheme("zoom-out"), "Zoom Out", self, shortcut=QKeySequence(QKeySequence.ZoomOut), triggered=self._zoom_out) window_menu.addAction(zoom_out_action) reset_zoom_action = QAction(QIcon.fromTheme("zoom-original"), "Reset Zoom", self, shortcut="Ctrl+0", triggered=self._reset_zoom) window_menu.addAction(reset_zoom_action) about_menu = self.menuBar().addMenu("&About") about_action = QAction("About Qt", self, shortcut=QKeySequence( QKeySequence.HelpContents), triggered=qApp.aboutQt) about_menu.addAction(about_action)
def start(_exit: bool = False) -> None: show_ui = True if "-h" in sys.argv or "--help" in sys.argv: print(f"Usage: {os.path.basename(sys.argv[0])}") print("Flags:") print(" -h, --help\tShow this message") print(" -n, --no-ui\tRun the program without showing a UI") return elif "-n" in sys.argv or "--no-ui" in sys.argv: show_ui = False app = QApplication(sys.argv) logo = QIcon(LOGO) main_window = MainWindow() ui = main_window.ui main_window.setWindowIcon(logo) tray = QSystemTrayIcon(logo, app) tray.activated.connect(main_window.systray_clicked) menu = QMenu() action_exit = QAction("Exit") action_exit.triggered.connect(app.exit) menu.addAction(action_exit) tray.setContextMenu(menu) ui.text.textChanged.connect(partial(queue_text_change, ui)) ui.command.textChanged.connect(partial(update_button_command, ui)) ui.keys.textChanged.connect(partial(update_button_keys, ui)) ui.write.textChanged.connect(partial(update_button_write, ui)) ui.change_brightness.valueChanged.connect( partial(update_change_brightness, ui)) ui.switch_page.valueChanged.connect(partial(update_switch_page, ui)) ui.imageButton.clicked.connect(partial(select_image, main_window)) ui.removeButton.clicked.connect(partial(remove_image, main_window)) ui.settingsButton.clicked.connect(partial(show_settings, main_window)) api.streamdesk_keys.key_pressed.connect(handle_keypress) items = api.open_decks().items() if len(items) == 0: print("Waiting for Stream Deck(s)...") while len(items) == 0: time.sleep(3) items = api.open_decks().items() for deck_id, deck in items: ui.device_list.addItem(f"{deck['type']} - {deck_id}", userData=deck_id) dimmers[deck_id] = Dimmer( api.get_display_timeout(deck_id), api.get_brightness(deck_id), partial(change_brightness, deck_id), ) dimmers[deck_id].reset() build_device(ui) ui.device_list.currentIndexChanged.connect(partial(build_device, ui)) ui.pages.currentChanged.connect(partial(change_page, ui)) ui.actionExport.triggered.connect(partial(export_config, main_window)) ui.actionImport.triggered.connect(partial(import_config, main_window)) ui.actionExit.triggered.connect(app.exit) timer = QTimer() timer.timeout.connect(partial(sync, ui)) timer.start(1000) api.render() tray.show() if show_ui: main_window.show() if _exit: return else: app.exec_() api.close_decks() sys.exit()
def setIcon(self): appIcon = QIcon("stock.png") self.setWindowIcon(appIcon)
def setupUi(self, SnopfManager): if SnopfManager.objectName(): SnopfManager.setObjectName(u"SnopfManager") SnopfManager.resize(600, 450) sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.MinimumExpanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( SnopfManager.sizePolicy().hasHeightForWidth()) SnopfManager.setSizePolicy(sizePolicy) icon = QIcon() icon.addFile(u":/icon/icon/icon.svg", QSize(), QIcon.Normal, QIcon.Off) SnopfManager.setWindowIcon(icon) self.actionOpenAccountTable = QAction(SnopfManager) self.actionOpenAccountTable.setObjectName(u"actionOpenAccountTable") self.actionSetCurrentFileAsStandard = QAction(SnopfManager) self.actionSetCurrentFileAsStandard.setObjectName( u"actionSetCurrentFileAsStandard") self.actionNewEntry = QAction(SnopfManager) self.actionNewEntry.setObjectName(u"actionNewEntry") self.actionDeleteEntry = QAction(SnopfManager) self.actionDeleteEntry.setObjectName(u"actionDeleteEntry") self.actionSaveChanges = QAction(SnopfManager) self.actionSaveChanges.setObjectName(u"actionSaveChanges") self.actionVersionInfo = QAction(SnopfManager) self.actionVersionInfo.setObjectName(u"actionVersionInfo") self.centralwidget = QWidget(SnopfManager) self.centralwidget.setObjectName(u"centralwidget") self.gridLayout = QGridLayout(self.centralwidget) self.gridLayout.setObjectName(u"gridLayout") self.accountTableView = QTableView(self.centralwidget) self.accountTableView.setObjectName(u"accountTableView") self.accountTableView.setMinimumSize(QSize(0, 0)) self.accountTableView.setSelectionMode( QAbstractItemView.SingleSelection) self.accountTableView.setSelectionBehavior( QAbstractItemView.SelectItems) self.gridLayout.addWidget(self.accountTableView, 0, 0, 1, 1) SnopfManager.setCentralWidget(self.centralwidget) self.menubar = QMenuBar(SnopfManager) self.menubar.setObjectName(u"menubar") self.menubar.setGeometry(QRect(0, 0, 600, 30)) self.menuFile = QMenu(self.menubar) self.menuFile.setObjectName(u"menuFile") self.menuEntries = QMenu(self.menubar) self.menuEntries.setObjectName(u"menuEntries") self.menuAbout = QMenu(self.menubar) self.menuAbout.setObjectName(u"menuAbout") SnopfManager.setMenuBar(self.menubar) self.statusbar = QStatusBar(SnopfManager) self.statusbar.setObjectName(u"statusbar") SnopfManager.setStatusBar(self.statusbar) self.menubar.addAction(self.menuFile.menuAction()) self.menubar.addAction(self.menuEntries.menuAction()) self.menubar.addAction(self.menuAbout.menuAction()) self.menuFile.addAction(self.actionSaveChanges) self.menuEntries.addAction(self.actionNewEntry) self.menuEntries.addAction(self.actionDeleteEntry) self.menuAbout.addAction(self.actionVersionInfo) self.retranslateUi(SnopfManager) QMetaObject.connectSlotsByName(SnopfManager)
global_data_dict['notes'] = self.notesEdit.toPlainText() save_path = 'eod_final_toprint.pdf' image_path = 'eod_final_toprint.jpg' work_path = os.getcwd() Handlers.generateButton_handler(self, global_data_dict, save_path) H.pdf_printer(self, save_path) try: os.remove(work_path + '/eod_template_overlay.pdf') except OSError: # print('OSERROR 3') pass try: os.remove(work_path + '/eod_final_toprint.pdf') except OSError: # print('OSERROR 4') pass if __name__ == '__main__': app = QApplication(sys.argv) app.setWindowIcon(QIcon('eod_icon.ico')) window_ui = H.resource_locator(__name__, 'main_window.ui') print(window_ui) form = MainWindow(window_ui) sys.exit(app.exec_())
def __init__(self, fileName=None): super(MainWindow, self).__init__() self.curFile = '' self.curPage = ( 0, 0 ) # Tuple containing current page and total pages of the current file self.setWindowTitle('Pablo Editor') self.setWindowIcon(QIcon( GenUtils.resource_path('src/images/icon.ico'))) self.setWindowState(Qt.WindowFullScreen) self.setWindowState(Qt.WindowMaximized) # available_geometry = app.desktop().availableGeometry(self) # self.resize(available_geometry.width(), available_geometry.height()) self.readSettings() self.dropView = dropview.DropView() self.paged_text_edit = pagedtextedit.PagedTextEdit(self.dropView) # The textedit must be transparent; the white pages are painted in paintEvent() function self.paged_text_edit.setStyleSheet( "QTextEdit { background-color: transparent }") self.paged_text_edit.setFrameStyle( QFrame.NoFrame) # Removes a border-like line around the TextEdit doc = QTextDocument() font = QFont() font.setPointSize(12) font.setFamily('Calibri') doc.setDefaultFont(font) # doc.setDefaultStyleSheet("body { font-color: black; font-family: Calibri; font-size: 12;} ") self.paged_text_edit.setDocument(doc) self.paged_text_edit.setPageFormat(QPageSize.A5Extra) self.paged_text_edit.setPageMargins(QMarginsF(15, 15, 15, 15)) self.paged_text_edit.setUsePageMode(True) self.paged_text_edit.setPageNumbersAlignment(Qt.AlignBottom | Qt.AlignCenter) self.text_edit_layout = QHBoxLayout() self.text_edit_layout.setAlignment(Qt.AlignTop | Qt.AlignLeft) self.text_edit_layout.setMargin(0) self.paged_text_edit.setLayout(self.text_edit_layout) # This below block of code prevents undoing the setDocumentMargin() and setFrameformat() # methods in the aboutUpdateDocumentGeometry function self.paged_text_edit.aboutUpdateDocumentGeometry() # self.paged_text_edit.document().clearUndoRedoStack() # this does not work # These commands work self.paged_text_edit.document().setUndoRedoEnabled(False) self.paged_text_edit.document().setUndoRedoEnabled(True) self.setCentralWidget(self.dropView) self.dropView.addWidget(self.paged_text_edit) self.dropView.setCurrentWidget(self.paged_text_edit) self._setup_components() self.setCurrentFile('') self.paged_text_edit.document().contentsChanged.connect( self.documentWasModified) self.paged_text_edit.currentCharFormatChanged.connect( self.updateFontWidgets) self.paged_text_edit.cursorPositionChanged.connect( self.updatePositions) self.paged_text_edit.pageInfo.connect(self.readPageInfo) self.statusBar.writeMessageOnStatus("Ready", 10000)
def createMenu(self): #Ok """ Criar menu para editor de fotos """ self.abre_act = QAction(QIcon('Imagens/open_file.png'), "Abrir", self) self.abre_act.setShortcut('Ctrl+O') self.abre_act.setStatusTip('Abrir uma nova imagem') self.abre_act.triggered.connect(self.openImage) self.salv_act = QAction(QIcon('Imagens/save_file.png'), 'Salvar', self) self.salv_act.setShortcut('Ctrl+S') self.salv_act.setStatusTip('Salvar imagem') self.salv_act.triggered.connect(self.saveToFile) self.prnt_act = QAction(QIcon('Imagens/print.png'), "Imprimir", self) self.prnt_act.setShortcut('Ctrl+P') self.prnt_act.setStatusTip('Imprimir imagem') self.prnt_act.triggered.connect(self.printImage) self.prnt_act.setEnabled(False) self.sair_act = QAction(QIcon('Imagens/exit.png'), 'Sair', self) self.sair_act.setShortcut('Ctrl+Q') self.sair_act.setStatusTip('Sair do programa') self.sair_act.triggered.connect(self.close) self.rt90_act = QAction("Girar 90°", self) self.rt90_act.setStatusTip('Girar imagem 90 ° no sentido horário') self.rt90_act.triggered.connect(self.rotateImage90) self.rt180_act = QAction("Girar 180°", self) self.rt180_act.setStatusTip('Girar imagem 180° no sentido horário') self.rt180_act.triggered.connect(self.rotateImage180) self.flph_act = QAction("Espelhar na Horizontal", self) self.flph_act.setStatusTip('Espelhar imagem no eixo horizontal') self.flph_act.triggered.connect(self.flipImageHorizontal) self.flpv_act = QAction("Espelhar na Vertical", self) self.flpv_act.setStatusTip('Espelhar imagem no eixo vertical') self.flpv_act.triggered.connect(self.flipImageVertical) self.redm_act = QAction("Redimensionar metade", self) self.redm_act.setStatusTip( 'Redimensionar imagem para metade do tamanho original') self.redm_act.triggered.connect(self.resizeImageHalf) self.limp_act = QAction(QIcon('Imagens/clear.png'), "Limpar Imagem", self) self.limp_act.setShortcut("Ctrl+D") self.limp_act.setStatusTip('Limpar a imagem atual') self.limp_act.triggered.connect(self.clearImage) menu_bar = self.menuBar() menu_bar.setNativeMenuBar(False) arqv_menu = menu_bar.addMenu('Arquivo') arqv_menu.addAction(self.abre_act) arqv_menu.addAction(self.salv_act) arqv_menu.addSeparator() arqv_menu.addAction(self.prnt_act) arqv_menu.addSeparator() arqv_menu.addAction(self.sair_act) edit_menu = menu_bar.addMenu('Editar') edit_menu.addAction(self.rt90_act) edit_menu.addAction(self.rt180_act) edit_menu.addSeparator() edit_menu.addAction(self.flph_act) edit_menu.addAction(self.flpv_act) edit_menu.addSeparator() edit_menu.addAction(self.redm_act) edit_menu.addSeparator() edit_menu.addAction(self.limp_act) #??????????????????? view_menu = menu_bar.addMenu('Exibir') view_menu.addAction(self.toggle_dock_tools_act) self.setStatusBar(QStatusBar(self))
def setupUi(self, frm_login): if frm_login.objectName(): frm_login.setObjectName(u"frm_login") frm_login.resize(521, 300) frm_login.setMinimumSize(QSize(521, 300)) frm_login.setMaximumSize(QSize(521, 300)) frm_login.setStyleSheet(u"") frm_login.setAttribute(Qt.WA_NoSystemBackground) frm_login.setAttribute(Qt.WA_TranslucentBackground) frm_login.setWindowFlags(Qt.FramelessWindowHint) self.fra_lateral = QFrame(frm_login) self.fra_lateral.setObjectName(u"fra_lateral") self.fra_lateral.setGeometry(QRect(0, 0, 151, 301)) self.fra_lateral.setStyleSheet(u"QFrame {\n" " background: rgb(255,255,255,.9)\n" "}") self.fra_lateral.setFrameShape(QFrame.StyledPanel) self.fra_lateral.setFrameShadow(QFrame.Raised) self.lbl_login = QLabel(self.fra_lateral) self.lbl_login.setObjectName(u"lbl_login") self.lbl_login.setGeometry(QRect(27, 10, 91, 41)) self.lbl_login.setStyleSheet(u"QLabel {\n" " color: gray;\n" " font-size:32px;\n" " background: transparent;\n" "}") self.lbl_logo = QLabel(self.fra_lateral) self.lbl_logo.setObjectName(u"lbl_logo") self.lbl_logo.setGeometry(QRect(20, 87, 111, 101)) self.lbl_logo.setStyleSheet("QLabel {" " background: transparent;" "}") self.lbl_logo.setPixmap(QPixmap(u"./imagens/logo-bl-.png")) self.lbl_logo.setScaledContents(True) self.fra_campos_login = QFrame(frm_login) self.fra_campos_login = QFrame(frm_login) self.fra_campos_login.setObjectName(u"fra_campos_login") self.fra_campos_login.setGeometry(QRect(150, 0, 371, 301)) self.fra_campos_login.setStyleSheet(u"QFrame {\n" " background: rgb(0,0,74,.9);\n" "}") self.fra_campos_login.setFrameShape(QFrame.StyledPanel) self.fra_campos_login.setFrameShadow(QFrame.Raised) self.txt_senha = QLineEdit(self.fra_campos_login) self.txt_senha.setObjectName(u"txt_senha") self.txt_senha.setGeometry(QRect(26, 130, 321, 20)) self.txt_senha.setMinimumSize(QSize(321, 20)) font = QFont() font.setPointSize(11) self.txt_senha.setFont(font) self.txt_senha.setStyleSheet( u"QLineEdit#txt_senha{\n" " background: transparent;\n" " border: none;\n" " border-bottom: 1px solid white;\n" " color: white;\n" "}\n" "QLineEdit#txt_senha:focus{\n" " border-bottom: 1px solid rgba(81, 203, 238, 1);\n" "}\n") self.txt_senha.setMaxLength(75) self.txt_usuario = QLineEdit(self.fra_campos_login) self.txt_usuario.setObjectName(u"txt_usuario") self.txt_usuario.setGeometry(QRect(26, 80, 321, 20)) self.txt_usuario.setMinimumSize(QSize(321, 20)) self.txt_usuario.setFont(font) self.txt_usuario.setStyleSheet( u"QLineEdit#txt_usuario{\n" " background: transparent;\n" " border: none;\n" " border-bottom: 1px solid white;\n" " color: white;\n" "}\n" "QLineEdit#txt_usuario:focus{\n" " border-bottom: 1px solid rgba(81, 203, 238, 1);\n" "}\n") self.txt_usuario.setMaxLength(75) self.btn_minimizar = QPushButton(self.fra_campos_login) self.btn_minimizar.setObjectName(u"btn_minimizar") self.btn_minimizar.setGeometry(QRect(316, 0, 28, 24)) self.btn_minimizar.setMinimumSize(QSize(28, 24)) self.btn_minimizar.setFocusPolicy(Qt.NoFocus) self.btn_minimizar.setStyleSheet( u"QPushButton#btn_minimizar{\n" " color: white;\n" " border:1px;\n" " background: transparent;\n" "}\n" "QPushButton#btn_minimizar:hover{\n" " background: rgba(255,255,255,.1);\n" "}\n" "QPushButton#btn_minimizar:pressed {\n" " background: rgba(255,255,255,.2);\n" "}") icon = QIcon() icon.addFile(u"./imagens/minimizar-.png", QSize(), QIcon.Normal, QIcon.Off) self.btn_minimizar.setIcon(icon) self.btn_minimizar.setIconSize(QSize(16, 16)) self.btn_minimizar.setFlat(True) self.btn_close = QPushButton(self.fra_campos_login) self.btn_close.setObjectName(u"btn_close") self.btn_close.setGeometry(QRect(344, 0, 28, 24)) self.btn_close.setMinimumSize(QSize(28, 24)) self.btn_close.setFocusPolicy(Qt.NoFocus) self.btn_close.setStyleSheet( u"QPushButton#btn_close{\n" " border: 0px;\n" " background: transparent;\n" "}\n" "QPushButton#btn_close:hover{\n" " border: 0px solid rgba(255,255,255,.1);\n" " background: rgba(255,255,255,.1);\n" "}\n" "QPushButton#btn_close:pressed {\n" " border: 0px solid rgba(255,255,255,.1);\n" " background: rgba(255,255,255,.2);\n" "}") icon1 = QIcon() icon1.addFile(u"./imagens/fechar.png", QSize(), QIcon.Normal, QIcon.Off) self.btn_close.setIcon(icon1) self.btn_close.setIconSize(QSize(16, 16)) self.btn_close.setFlat(True) self.btn_login = QPushButton(self.fra_campos_login) self.btn_login.setObjectName(u"btn_login") self.btn_login.setGeometry(QRect(26, 160, 321, 36)) font1 = QFont() font1.setPointSize(11) font1.setBold(False) font1.setWeight(50) self.btn_login.setFont(font1) self.btn_login.setFocusPolicy(Qt.TabFocus) self.btn_login.setStyleSheet(u"QPushButton#btn_login{\n" " background-color: #0080ff ;\n" " color: #fff;\n" " border-radius: 5px;\n" "}\n" "QPushButton#btn_login:hover{\n" " background-color: #0073e6;\n" "}\n" "QPushButton#btn_login:pressed {\n" " background-color: #0059b3;\n" "}\n" "QPushButton#btn_login:disabled {\n" " background-color: #a6a6a6;\n" " color: #6a6767;\n" "}") self.btn_login.setIconSize(QSize(36, 36)) self.btn_esqueci_senha = QPushButton(self.fra_campos_login) self.btn_esqueci_senha.setObjectName(u"btn_esqueci_senha") self.btn_esqueci_senha.setGeometry(QRect(130, 270, 113, 21)) font2 = QFont() font2.setPointSize(10) font2.setItalic(True) self.btn_esqueci_senha.setFont(font2) self.btn_esqueci_senha.setFocusPolicy(Qt.TabFocus) self.btn_esqueci_senha.setStyleSheet( u"QPushButton#btn_esqueci_senha{\n" " color: white;\n" " border: 1px;\n" " font-style:italic;\n" " background: transparent;\n" "}\n" "QPushButton#btn_esqueci_senha:hover{\n" " border-bottom: 1px solid white;\n" "}\n" "QPushButton#btn_esqueci_senha:pressed {\n" " border-bottom: 1px solid white;\n" "}") self.btn_esqueci_senha.setIconSize(QSize(36, 36)) QWidget.setTabOrder(self.txt_usuario, self.txt_senha) QWidget.setTabOrder(self.txt_senha, self.btn_login) QWidget.setTabOrder(self.btn_login, self.btn_esqueci_senha) QWidget.setTabOrder(self.btn_esqueci_senha, self.btn_minimizar) QWidget.setTabOrder(self.btn_minimizar, self.btn_close) self.retranslateUi(frm_login) QMetaObject.connectSlotsByName(frm_login)
#!venv/bin/python3 import sys from PySide2.QtGui import QIcon from PySide2.QtWidgets import QApplication from basic_ui.user_interface.main_window import MainWindow if '__main__' == __name__: app = QApplication(sys.argv) app.setWindowIcon(QIcon('./user_interface/media/bucketing_icon.jpeg')) main_window = MainWindow() main_window.window.show() ret = app.exec_() sys.exit(ret)
def setupUI(self): self.setWindowTitle("PDF-Compressor") self.setWindowIcon(QIcon(QPixmap("resources/its.png"))) self.menuBar = self.menuBar() self.file = self.menuBar.addMenu("&File") self.edit = self.menuBar.addMenu("&Edit") self.help = self.menuBar.addMenu("&Help") # File self.addFiles = QAction("Add files") self.addFiles.setShortcut(QKeySequence("Ctrl+f")) self.file.addAction(self.addFiles) self.preferences = QAction("Preferences") self.preferences.setShortcut(QKeySequence("Ctrl+p")) self.file.addAction(self.preferences) self.quit = QAction("Quit") self.quit.setShortcut(QKeySequence("Ctrl+q")) self.file.addAction(self.quit) # Edit self.remove = QAction("Remove") self.remove.setShortcut(QKeySequence("Ctrl+r")) self.edit.addAction(self.remove) # Help self.donate = QAction("Donate") self.contribute = QAction("Contibute") self.aboutUs = QAction("About us") self.help.addAction(self.donate) self.help.addAction(self.contribute) self.help.addAction(self.aboutUs) # By default "remove" is disabled self.remove.setDisabled(True) # The base layout is vertical self.centralWidget = QWidget() self.centralLayout = QVBoxLayout() self.centralWidget.setLayout(self.centralLayout) #Placeholder for the top with itsfoss icon self.topIcon = QLabel() self.topIcon.setPixmap(QPixmap("resources/its.png")) self.topIcon.setAlignment(Qt.AlignCenter) self.topIcon.setMargin(15) self.centralLayout.addWidget(self.topIcon) # Main layout self.mainLayout = QHBoxLayout() self.centralLayout.addLayout(self.mainLayout) # Now we need HBox layouts for three columns self.leftLayout = HomeLayout() self.midLayout = HomeLayout() self.rightLayout = HomeLayout() # left layout self.leftLayout.addItems([("iconLabel", QLabel()), ("addFiles", QPushButton("Add files")), ("browse", QPushButton("Browse"))]) self.leftLayout.iconLabel.setPixmap(QPixmap("resources/pdff.png")) self.leftLayout.iconLabel.setAlignment(Qt.AlignCenter) # Mid layout self.midLayout.addItems([("lowLevel", QRadioButton("low compression")), ("midLevel", QRadioButton("mid compression")), ("highLevel", QRadioButton("high compression"))]) self.midLayout.buttonGroup = QButtonGroup() self.midLayout.buttonGroup.addButton(self.midLayout.lowLevel) self.midLayout.buttonGroup.addButton(self.midLayout.midLevel) self.midLayout.buttonGroup.addButton(self.midLayout.highLevel) # right layout self.rightLayout.addItems([("iconLabel", QLabel()), ("compressButton", QPushButton("Compress")) ]) self.rightLayout.iconLabel.setPixmap(QPixmap("resources/inboxx.png")) self.rightLayout.iconLabel.setAlignment(Qt.AlignCenter) self.rightLayout.compressButton.setDisabled(True) self.mainLayout.addLayout(self.leftLayout) self.mainLayout.addLayout(self.midLayout) self.mainLayout.addLayout(self.rightLayout) self.bottomLabel = QLabel( "PDF Compressor is an Open Source project by It's FOSS") self.bottomLabel.setAlignment(Qt.AlignCenter) self.bottomLabel.setMargin(15) self.centralLayout.addWidget(self.bottomLabel) self.setCentralWidget(self.centralWidget)
def setupUi(self, MessageBox): if not MessageBox.objectName(): MessageBox.setObjectName(u"MessageBox") MessageBox.resize(290, 177) MessageBox.setMinimumSize(QSize(290, 50)) icon = QIcon() icon.addFile(u":/icons/icons/app.ico", QSize(), QIcon.Normal, QIcon.Off) MessageBox.setWindowIcon(icon) MessageBox.setModal(True) self.verticalLayout = QVBoxLayout(MessageBox) self.verticalLayout.setObjectName(u"verticalLayout") self.verticalLayout_4 = QVBoxLayout() self.verticalLayout_4.setObjectName(u"verticalLayout_4") self.verticalLayout_4.setSizeConstraint(QLayout.SetMinimumSize) self.horizontalLayout_2 = QHBoxLayout() self.horizontalLayout_2.setObjectName(u"horizontalLayout_2") self.boxIcon = QLabel(MessageBox) self.boxIcon.setObjectName(u"boxIcon") self.boxIcon.setAlignment(Qt.AlignHCenter | Qt.AlignTop) self.horizontalLayout_2.addWidget(self.boxIcon) self.horizontalSpacer_2 = QSpacerItem(15, 0, QSizePolicy.Fixed, QSizePolicy.Minimum) self.horizontalLayout_2.addItem(self.horizontalSpacer_2) self.message = QLabel(MessageBox) self.message.setObjectName(u"message") sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.MinimumExpanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.message.sizePolicy().hasHeightForWidth()) self.message.setSizePolicy(sizePolicy) self.message.setScaledContents(True) self.message.setAlignment(Qt.AlignLeading | Qt.AlignLeft | Qt.AlignTop) self.message.setWordWrap(True) self.horizontalLayout_2.addWidget(self.message) self.horizontalSpacer_3 = QSpacerItem(0, 0, QSizePolicy.Expanding, QSizePolicy.Minimum) self.horizontalLayout_2.addItem(self.horizontalSpacer_3) self.verticalLayout_4.addLayout(self.horizontalLayout_2) self.horizontalLayout = QHBoxLayout() self.horizontalLayout.setObjectName(u"horizontalLayout") self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) self.horizontalLayout.addItem(self.horizontalSpacer) self.okBtn = QPushButton(MessageBox) self.okBtn.setObjectName(u"okBtn") self.horizontalLayout.addWidget(self.okBtn) self.showDetailsBtn = QPushButton(MessageBox) self.showDetailsBtn.setObjectName(u"showDetailsBtn") sizePolicy1 = QSizePolicy(QSizePolicy.Minimum, QSizePolicy.Fixed) sizePolicy1.setHorizontalStretch(0) sizePolicy1.setVerticalStretch(0) sizePolicy1.setHeightForWidth( self.showDetailsBtn.sizePolicy().hasHeightForWidth()) self.showDetailsBtn.setSizePolicy(sizePolicy1) self.horizontalLayout.addWidget(self.showDetailsBtn) self.verticalLayout_4.addLayout(self.horizontalLayout) self.verticalLayout.addLayout(self.verticalLayout_4) self.line = QFrame(MessageBox) self.line.setObjectName(u"line") self.line.setFrameShape(QFrame.HLine) self.line.setFrameShadow(QFrame.Sunken) self.verticalLayout.addWidget(self.line) self.errorDetails = QPlainTextEdit(MessageBox) self.errorDetails.setObjectName(u"errorDetails") sizePolicy2 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Minimum) sizePolicy2.setHorizontalStretch(0) sizePolicy2.setVerticalStretch(0) sizePolicy2.setHeightForWidth( self.errorDetails.sizePolicy().hasHeightForWidth()) self.errorDetails.setSizePolicy(sizePolicy2) self.errorDetails.setMinimumSize(QSize(0, 100)) self.errorDetails.setAcceptDrops(False) self.errorDetails.setSizeAdjustPolicy( QAbstractScrollArea.AdjustToContents) self.errorDetails.setDocumentTitle(u"") self.errorDetails.setUndoRedoEnabled(False) self.errorDetails.setReadOnly(True) self.errorDetails.setPlainText(u"") self.verticalLayout.addWidget(self.errorDetails) self.retranslateUi(MessageBox) QMetaObject.connectSlotsByName(MessageBox)
def icon_for_squadron(squadron: Squadron) -> Optional[QIcon]: """Returns the icon that should be displayed for the squadron.""" name = squadron.aircraft.dcs_id if name in AIRCRAFT_ICONS: return QIcon(AIRCRAFT_ICONS[name]) return None
def __init__(self, parent, object_class_item, db_mngr, *db_maps): """ Args: parent (SpineDBEditor): data store widget object_class_item (ObjectClassItem) db_mngr (SpineDBManager) *db_maps: database mappings """ super().__init__(parent) self.object_class_item = object_class_item self.db_mngr = db_mngr self.db_maps = db_maps self.db_map = db_maps[0] self.db_maps_by_codename = { db_map.codename: db_map for db_map in db_maps } self.db_combo_box = QComboBox(self) self.header_widget = QWidget(self) self.group_name_line_edit = QLineEdit(self) header_layout = QHBoxLayout(self.header_widget) header_layout.addWidget(QLabel(f"Group name: ")) header_layout.addWidget(self.group_name_line_edit) header_layout.addSpacing(32) header_layout.addWidget(QLabel("Database")) header_layout.addWidget(self.db_combo_box) self.non_members_tree = QTreeWidget(self) self.non_members_tree.setHeaderLabel("Non members") self.non_members_tree.setSelectionMode(QTreeWidget.ExtendedSelection) self.non_members_tree.setColumnCount(1) self.non_members_tree.setIndentation(0) self.members_tree = QTreeWidget(self) self.members_tree.setHeaderLabel("Members") self.members_tree.setSelectionMode(QTreeWidget.ExtendedSelection) self.members_tree.setColumnCount(1) self.members_tree.setIndentation(0) self.add_button = QToolButton() self.add_button.setToolTip("<p>Add selected non-members.</p>") self.add_button.setIcon(QIcon(":/icons/menu_icons/cube_plus.svg")) self.add_button.setIconSize(QSize(24, 24)) self.add_button.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.add_button.setText(">>") self.remove_button = QToolButton() self.remove_button.setToolTip("<p>Remove selected members.</p>") self.remove_button.setIcon(QIcon(":/icons/menu_icons/cube_minus.svg")) self.remove_button.setIconSize(QSize(24, 24)) self.remove_button.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.remove_button.setText("<<") self.vertical_button_widget = QWidget() vertical_button_layout = QVBoxLayout(self.vertical_button_widget) vertical_button_layout.addStretch() vertical_button_layout.addWidget(self.add_button) vertical_button_layout.addWidget(self.remove_button) vertical_button_layout.addStretch() self.button_box = QDialogButtonBox(self) self.button_box.setStandardButtons(QDialogButtonBox.Cancel | QDialogButtonBox.Ok) layout = QGridLayout(self) layout.addWidget(self.header_widget, 0, 0, 1, 3, Qt.AlignHCenter) layout.addWidget(self.non_members_tree, 1, 0) layout.addWidget(self.vertical_button_widget, 1, 1) layout.addWidget(self.members_tree, 1, 2) layout.addWidget(self.button_box, 2, 0, 1, 3) self.setAttribute(Qt.WA_DeleteOnClose) self.db_combo_box.addItems(list(self.db_maps_by_codename)) self.db_map_object_ids = { db_map: { x["name"]: x["id"] for x in self.db_mngr.get_items_by_field( self.db_map, "object", "class_id", self.object_class_item.db_map_id(db_map)) } for db_map in db_maps } self.reset_list_widgets(db_maps[0].codename) self.connect_signals()