def setAppColors(self): """Set application to current colors. """ newPalette = QApplication.palette() for color in self.colors: color.updatePalette(newPalette) qApp.setPalette(newPalette)
def setThemeColors(): """Set the app colors based on options setting. """ if globalref.genOptions['ColorTheme'] == optiondefaults.colorThemes[1]: # dark theme myDarkGray = QColor(53, 53, 53) myVeryDarkGray = QColor(25, 25, 25) myBlue = QColor(42, 130, 218) palette = QPalette() palette.setColor(QPalette.Window, myDarkGray) palette.setColor(QPalette.WindowText, Qt.white) palette.setColor(QPalette.Base, myVeryDarkGray) palette.setColor(QPalette.AlternateBase, myDarkGray) palette.setColor(QPalette.ToolTipBase, Qt.white) palette.setColor(QPalette.ToolTipText, Qt.white) palette.setColor(QPalette.Text, Qt.white) palette.setColor(QPalette.Button, myDarkGray) palette.setColor(QPalette.ButtonText, Qt.white) palette.setColor(QPalette.BrightText, Qt.red) palette.setColor(QPalette.Link, myBlue) palette.setColor(QPalette.Highlight, myBlue) palette.setColor(QPalette.HighlightedText, Qt.black) palette.setColor(QPalette.Disabled, QPalette.Text, Qt.darkGray) palette.setColor(QPalette.Disabled, QPalette.ButtonText, Qt.darkGray) qApp.setPalette(palette)
def showDialog(self, parent): """Show a dialog for user color changes. Return True if changes were made. """ dialog = QDialog(parent) dialog.setWindowFlags(Qt.Dialog | Qt.WindowTitleHint | Qt.WindowSystemMenuHint) dialog.setWindowTitle(_('Color Settings')) topLayout = QVBoxLayout(dialog) dialog.setLayout(topLayout) themeBox = QGroupBox(_('Color Theme'), dialog) topLayout.addWidget(themeBox) themeLayout = QVBoxLayout(themeBox) self.themeControl = QComboBox(dialog) self.themeControl.addItem(_('Default system theme'), ThemeSetting.system) self.themeControl.addItem(_('Dark theme'), ThemeSetting.dark) self.themeControl.addItem(_('Custom theme'), ThemeSetting.custom) self.themeControl.setCurrentIndex( self.themeControl.findData(self.theme)) self.themeControl.currentIndexChanged.connect(self.updateThemeSetting) themeLayout.addWidget(self.themeControl) self.groupBox = QGroupBox(dialog) self.setBoxTitle() topLayout.addWidget(self.groupBox) gridLayout = QGridLayout(self.groupBox) row = 0 for color in self.colors: gridLayout.addWidget(color.getLabel(), row, 0) gridLayout.addWidget(color.getSwatch(), row, 1) row += 1 ctrlLayout = QHBoxLayout() topLayout.addLayout(ctrlLayout) ctrlLayout.addStretch(0) okButton = QPushButton(_('&OK'), dialog) ctrlLayout.addWidget(okButton) okButton.clicked.connect(dialog.accept) cancelButton = QPushButton(_('&Cancel'), dialog) ctrlLayout.addWidget(cancelButton) cancelButton.clicked.connect(dialog.reject) if dialog.exec_() == QDialog.Accepted: self.theme = ThemeSetting(self.themeControl.currentData()) self.option.changeData('ColorTheme', self.theme.name, True) if self.theme == ThemeSetting.system: qApp.setPalette(self.sysPalette) else: # dark theme or custom if self.theme == ThemeSetting.custom: for color in self.colors: color.updateOption(self.option) self.setAppColors() else: for color in self.colors: color.setFromPalette(self.sysPalette) if self.theme == ThemeSetting.dark: color.setFromTheme(darkColors) elif self.theme == ThemeSetting.custom: color.setFromOption(self.option)
def apply_theme(self): """ Note: Call themes() and set_theme() before calling apply_theme(). """ # self.apply_qss() self.qt_gui_palette = QApplication.style().standardPalette() if self.theme_name == "default": qApp.setPalette(self.qt_gui_palette) return self.skin_meta: ThemeMetaData = self.themes()[self.theme_name] skin_file = Path(self.skin_meta.filename) if self.skin_meta.filename.endswith(".yaml"): with skin_file.open("r") as f: base16 = yaml.load(f.read()) self._qt_palette_per_base16(base16) else: parser = GWConfigParser() parser.parse_file(skin_file) base16 = {} # We'll load the Base16 section first (if there is one), because the # Skin section can refer to the base16 definitions. section = "Base16" if parser.has_section(section): for option, _ in parser.items(section): base16[option] = parser[section].getqcolor(option) if len(base16) != 16: raise GruntWurkConfigError( f"Expected 16 colors in the [Base16] section but only found {len(base16)}." ) self._qt_palette_per_base16(base16) section = "Skin" if parser.has_section(section): for option in parser.items(section): if option not in QPALETTE_SLUGS: LOG.warning( f"Skin theme '{self.theme_name}' refers to an element '{option}' that doesn't exist." ) self._qt_palette_per_conf(section, parser, base16) section = "Custom" if parser.has_section(section): for option in parser.items(section): if option not in self.custom_color_map: LOG.warning( f"Skin theme {self.theme_name} refers to an custom color '{option}' that doesn't exist." ) else: self.custom_color_map[option] = parser[ section].getcolor(option) LOG.info(f"Loaded skin theme '{self.theme_name}'") qApp.setPalette(self.qt_gui_palette)
def styleMainWindow(mw): mw.setStyleSheet(mainWindowSS()) # Custon palette? qApp.setPalette(appPalette()) mw.treeRedacOutline.setStyleSheet(""" QTreeView{ background: transparent; margin-top: 30px; }""")
def apply_style(style_name): if style_name == 'LiSP': qApp.setStyleSheet(QLiSPTheme) # Change link color palette = qApp.palette() palette.setColor(QPalette.Link, QColor(65, 155, 230)) palette.setColor(QPalette.LinkVisited, QColor(43, 103, 153)) qApp.setPalette(palette) else: qApp.setStyleSheet('') qApp.setStyle(QStyleFactory.create(style_name))
def styleMainWindow(mw): mw.setStyleSheet(mainWindowSS()) mw.lstTabs.verticalScrollBar().setStyleSheet(simpleScrollBarV()) # Custon palette? qApp.setPalette(appPalette()) mw.treeRedacOutline.setStyleSheet(""" QTreeView{ background: transparent; margin-top: 30px; }""")
def apply(self): for k, v in self.newclr.items(): c1, c2, c3 = v if c1: self.p.setColor(QPalette.Active, self.tab[k], QColor(c1)) self.oldclr[k][0] = c1 if c2: self.p.setColor(QPalette.Inactive, self.tab[k], QColor(c2)) self.oldclr[k][1] = c2 if c3: self.p.setColor(QPalette.Disabled, self.tab[k], QColor(c3)) self.oldclr[k][2] = c3 qApp.setPalette(self.p) self.close()
def __init__(self): super(LightTheme, self).__init__() palette = qApp.palette() palette.setColor(QPalette.Window, QColor(239, 240, 241)) palette.setColor(QPalette.WindowText, QColor(49, 54, 59)) palette.setColor(QPalette.Base, QColor(252, 252, 252)) palette.setColor(QPalette.AlternateBase, QColor(239, 240, 241)) palette.setColor(QPalette.ToolTipBase, QColor(239, 240, 241)) palette.setColor(QPalette.ToolTipText, QColor(49, 54, 59)) palette.setColor(QPalette.Text, QColor(49, 54, 59)) palette.setColor(QPalette.Button, QColor(239, 240, 241)) palette.setColor(QPalette.ButtonText, QColor(49, 54, 59)) palette.setColor(QPalette.BrightText, QColor(255, 255, 255)) palette.setColor(QPalette.Link, QColor(41, 128, 185)) palette.setColor(QPalette.Highlight, QColor(126, 71, 130)) palette.setColor(QPalette.HighlightedText, Qt.white) palette.setColor(QPalette.Disabled, QPalette.Light, Qt.white) palette.setColor(QPalette.Disabled, QPalette.Shadow, QColor(234, 234, 234)) qApp.setPalette(palette)
def apply_style(name): """Load a style given its name.""" style = LiSPStyles.get(name.title()) if isinstance(style, Style): if style.has_py: __load_py_style(os.path.join(style.path, 'style.py')) if style.has_qss: __load_qss_style(os.path.join(style.path, 'style.qss')) # Change link color palette = qApp.palette() palette.setColor(QPalette.Link, QColor(65, 155, 230)) palette.setColor(QPalette.LinkVisited, QColor(43, 103, 153)) qApp.setPalette(palette) else: qApp.setStyleSheet('') qApp.setStyle(QStyleFactory.create(name))
def __init__(self): super(VideoStyleDark, self).__init__() palette = qApp.palette() palette.setColor(QPalette.Window, QColor(27, 35, 38)) palette.setColor(QPalette.WindowText, QColor(234, 234, 234)) palette.setColor(QPalette.Base, QColor(27, 35, 38)) palette.setColor(QPalette.AlternateBase, QColor(12, 15, 16)) palette.setColor(QPalette.ToolTipBase, QColor(27, 35, 38)) palette.setColor(QPalette.ToolTipText, Qt.white) palette.setColor(QPalette.Text, QColor(234, 234, 234)) palette.setColor(QPalette.Button, QColor(27, 35, 38)) palette.setColor(QPalette.ButtonText, Qt.white) palette.setColor(QPalette.BrightText, QColor(100, 215, 222)) palette.setColor(QPalette.Link, QColor(126, 71, 130)) # palette.setColor(QPalette.Highlight, QColor(126, 71, 130)) # palette.setColor(QPalette.HighlightedText, Qt.white) palette.setColor(QPalette.Disabled, QPalette.Light, Qt.black) palette.setColor(QPalette.Disabled, QPalette.Shadow, QColor(12, 15, 16)) qApp.setPalette(palette)
except Exception as err: print(err) if __name__ == '__main__': import sys from os.path import expanduser app = QApplication(sys.argv) app.setStyle("fusion") p = QtGui.QPalette p = qApp.palette() p.setColor(QtGui.QPalette.Highlight, QtGui.QColor(77, 98, 120)) qApp.setPalette(p) home = expanduser("~") db_file = "{}/family_finances.db".format(home) # Подключение к базе SQLite try: conn = sqlite3.connect(db_file) cur_db = conn.cursor() init_db(cur_db) cur_db.execute('SELECT * FROM users') result = cur_db.fetchone() if not result: create_user = CreateUser(db_file) if create_user.exec_() == QDialog.Accepted: login = Login(db_file)
def __init__(self): super().__init__() uic.loadUi("windows.ui", self) #self.arg = arg self.radioU.setChecked(True) self.widgetDownload.setEnabled(False) self.setWindowIcon(QIcon('img/pplogo.png')) self.setWindowTitle('TrivialPiper - Client') #Definiendo el tema o paleta de la ventana para el cliente qApp.setStyle("kvantum-dark") #qApp.setStyle("Fusion") dark_palette = QPalette() dark_palette.setColor(QPalette.Window, QColor(53, 53, 53)) dark_palette.setColor(QPalette.WindowText, Qt.white) dark_palette.setColor(QPalette.Base, QColor(25, 25, 25)) dark_palette.setColor(QPalette.AlternateBase, QColor(53, 53, 53)) dark_palette.setColor(QPalette.ToolTipBase, Qt.white) dark_palette.setColor(QPalette.ToolTipText, Qt.white) dark_palette.setColor(QPalette.Text, Qt.white) dark_palette.setColor(QPalette.Button, QColor(53, 53, 53)) dark_palette.setColor(QPalette.ButtonText, Qt.white) dark_palette.setColor(QPalette.BrightText, Qt.red) dark_palette.setColor(QPalette.Link, QColor(42, 130, 218)) dark_palette.setColor(QPalette.Highlight, QColor(42, 130, 218)) dark_palette.setColor(QPalette.HighlightedText, Qt.black) qApp.setPalette(dark_palette) qApp.setStyleSheet( "QToolTip { color: #ffffff; background-color: #2a82da; border: 1px solid white; }" ) #Definiendo el input port self.portValidate = QIntValidator(0, 1023, self) self.inputPort.setValidator(self.portValidate) self.inputPort.setEnabled(False) #Definiendo el input block self.blockValidate = QIntValidator( 8, 1468, self) #En practica definimos 1468 o 65464 como en el rfc 2348 self.inputBlocksize.setValidator(self.blockValidate) self.inputBlocksize.setEnabled(False) #Definiendo el input Window self.winValidate = QIntValidator(1, 65535, self) self.inputWindow.setValidator(self.winValidate) self.inputWindow.setEnabled(False) #Definiendo RadioButtons y CheckBox self.radioD.clicked.connect(self.activarDownload) self.radioU.clicked.connect(self.activarUpload) self.checkBoxPuerto.stateChanged.connect(self.activarPort) self.checkBoxBlocksize.stateChanged.connect(self.activarBlock) self.checkBoxWindowsize.stateChanged.connect(self.activarWind) #Definicion de los botones Upload y Download self.finalizarU.clicked.connect(self.finalizar_Up) self.finalizarD.clicked.connect(self.finalizar_Dw) self.model = QFileSystemModel() self.model.setRootPath('/home') self.arbolDir.setModel(self.model) self.arbolDir.clicked.connect(self.dummy) self.menusUI()
def loadTheme(self): """Load the currently specified GUI theme. """ logger.debug("Loading theme files") logger.debug("System icon theme is '%s'" % str(QIcon.themeName())) # CSS File cssData = "" try: if os.path.isfile(self.cssFile): with open(self.cssFile, mode="r", encoding="utf8") as inFile: cssData = inFile.read() except Exception: logger.error("Could not load theme css file") nw.logException() return False # Config File confParser = configparser.ConfigParser() try: with open(self.confFile, mode="r", encoding="utf8") as inFile: confParser.read_file(inFile) except Exception: logger.error("Could not load theme settings from: %s" % self.confFile) nw.logException() return False ## Main cnfSec = "Main" if confParser.has_section(cnfSec): self.themeName = self._parseLine(confParser, cnfSec, "name", "") self.themeDescription = self._parseLine(confParser, cnfSec, "description", "N/A") self.themeAuthor = self._parseLine(confParser, cnfSec, "author", "N/A") self.themeCredit = self._parseLine(confParser, cnfSec, "credit", "N/A") self.themeUrl = self._parseLine(confParser, cnfSec, "url", "") self.themeLicense = self._parseLine(confParser, cnfSec, "license", "N/A") self.themeLicenseUrl = self._parseLine(confParser, cnfSec, "licenseurl", "") ## Palette cnfSec = "Palette" if confParser.has_section(cnfSec): self._setPalette(confParser, cnfSec, "window", QPalette.Window) self._setPalette(confParser, cnfSec, "windowtext", QPalette.WindowText) self._setPalette(confParser, cnfSec, "base", QPalette.Base) self._setPalette(confParser, cnfSec, "alternatebase", QPalette.AlternateBase) self._setPalette(confParser, cnfSec, "text", QPalette.Text) self._setPalette(confParser, cnfSec, "tooltipbase", QPalette.ToolTipBase) self._setPalette(confParser, cnfSec, "tooltiptext", QPalette.ToolTipText) self._setPalette(confParser, cnfSec, "button", QPalette.Button) self._setPalette(confParser, cnfSec, "buttontext", QPalette.ButtonText) self._setPalette(confParser, cnfSec, "brighttext", QPalette.BrightText) self._setPalette(confParser, cnfSec, "highlight", QPalette.Highlight) self._setPalette(confParser, cnfSec, "highlightedtext", QPalette.HighlightedText) self._setPalette(confParser, cnfSec, "link", QPalette.Link) self._setPalette(confParser, cnfSec, "linkvisited", QPalette.LinkVisited) ## GUI cnfSec = "GUI" if confParser.has_section(cnfSec): self.statNone = self._loadColour(confParser, cnfSec, "statusnone") self.statUnsaved = self._loadColour(confParser, cnfSec, "statusunsaved") self.statSaved = self._loadColour(confParser, cnfSec, "statussaved") # Apply Styles qApp.setStyleSheet(cssData) qApp.setPalette(self.guiPalette) logger.info("Loaded theme '%s'" % self.guiTheme) return True
def load_palette(self, palette): qApp.setPalette(palette)
# This file is part of Linux Show Player # # Copyright 2012-2016 Francesco Ceruti <*****@*****.**> # # Linux Show Player is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # Linux Show Player is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Linux Show Player. If not, see <http://www.gnu.org/licenses/>. from PyQt5.QtGui import QColor from PyQt5.QtGui import QPalette from PyQt5.QtWidgets import qApp # Import resources # noinspection PyUnresolvedReferences from lisp.ui.styles.dark import assetes # Change link color palette = qApp.palette() palette.setColor(QPalette.Link, QColor(65, 155, 230)) palette.setColor(QPalette.LinkVisited, QColor(43, 103, 153)) qApp.setPalette(palette)
def loadTheme(self): logger.debug("Loading theme files") # CSS File cssData = "" try: if path.isfile(self.cssFile): with open(self.cssFile, mode="r") as inFile: cssData = inFile.read() except Exception as e: logger.error("Could not load theme css file") return False # Config File confParser = configparser.ConfigParser() try: confParser.read_file(open(self.confFile)) except Exception as e: logger.error("Could not load theme settings from: %s" % self.confFile) return False ## Main cnfSec = "Main" if confParser.has_section(cnfSec): self.themeName = self._parseLine(confParser, cnfSec, "name", "") self.themeAuthor = self._parseLine(confParser, cnfSec, "author", "") self.themeCredit = self._parseLine(confParser, cnfSec, "credit", "") self.themeUrl = self._parseLine(confParser, cnfSec, "url", "") ## Palette cnfSec = "Palette" if confParser.has_section(cnfSec): self._setPalette(confParser, cnfSec, "window", QPalette.Window) self._setPalette(confParser, cnfSec, "windowtext", QPalette.WindowText) self._setPalette(confParser, cnfSec, "base", QPalette.Base) self._setPalette(confParser, cnfSec, "alternatebase", QPalette.AlternateBase) self._setPalette(confParser, cnfSec, "text", QPalette.Text) self._setPalette(confParser, cnfSec, "tooltipbase", QPalette.ToolTipBase) self._setPalette(confParser, cnfSec, "tooltiptext", QPalette.ToolTipText) self._setPalette(confParser, cnfSec, "button", QPalette.Button) self._setPalette(confParser, cnfSec, "buttontext", QPalette.ButtonText) self._setPalette(confParser, cnfSec, "brighttext", QPalette.BrightText) self._setPalette(confParser, cnfSec, "highlight", QPalette.Highlight) self._setPalette(confParser, cnfSec, "highlightedtext", QPalette.HighlightedText) self._setPalette(confParser, cnfSec, "link", QPalette.Link) self._setPalette(confParser, cnfSec, "linkvisited", QPalette.LinkVisited) ## GUI cnfSec = "GUI" if confParser.has_section(cnfSec): self.treeWCount = self._loadColour(confParser, cnfSec, "treewordcount") self.statNone = self._loadColour(confParser, cnfSec, "statusnone") self.statUnsaved = self._loadColour(confParser, cnfSec, "statusunsaved") self.statSaved = self._loadColour(confParser, cnfSec, "statussaved") # Apply Styles qApp.setStyleSheet(cssData) qApp.setPalette(self.guiPalette) logger.info("Loaded theme '%s'" % self.guiTheme) return True