From ee212db39c2f95b6b84bec12ab7304491427bd93 Mon Sep 17 00:00:00 2001 From: Olivier Keshavjee Date: Tue, 14 Nov 2017 14:48:28 +0100 Subject: [PATCH] Removes most of hard-coded colors --- manuskript/functions.py | 17 +- manuskript/models/persosProxyModel.py | 89 ++++---- manuskript/models/plotsProxyModel.py | 5 +- manuskript/models/worldModel.py | 9 +- manuskript/settingsWindow.py | 9 + manuskript/ui/cheatSheet.py | 11 +- manuskript/ui/collapsibleGroupBox.py | 5 +- manuskript/ui/collapsibleGroupBox2.py | 2 - manuskript/ui/editors/completer.py | 14 +- manuskript/ui/editors/tabSplitter.py | 8 +- manuskript/ui/editors/tabSplitter_ui.py | 5 +- manuskript/ui/exporters/exporter.py | 9 +- manuskript/ui/exporters/exportersManager.py | 3 + .../ui/exporters/exportersManager_ui.py | 12 +- .../ui/exporters/exportersManager_ui.ui | 9 - .../exporters/manuskript/plainTextSettings.py | 2 + .../manuskript/plainTextSettings_ui.py | 17 +- .../manuskript/plainTextSettings_ui.ui | 55 ++--- manuskript/ui/importers/generalSettings.py | 1 + manuskript/ui/importers/generalSettings_ui.py | 11 +- manuskript/ui/importers/generalSettings_ui.ui | 13 +- manuskript/ui/importers/importer.py | 6 +- manuskript/ui/mainWindow.py | 39 ++-- manuskript/ui/mainWindow.ui | 97 ++++----- manuskript/ui/settings_ui.py | 58 +----- manuskript/ui/settings_ui.ui | 58 +----- manuskript/ui/style.py | 194 +++++++++++------- manuskript/ui/views/characterTreeView.py | 5 +- .../ui/views/cmbOutlineCharacterChoser.py | 5 +- manuskript/ui/views/outlineDelegates.py | 5 +- manuskript/ui/views/plotTreeView.py | 5 +- manuskript/ui/views/treeDelegates.py | 9 +- manuskript/ui/welcome.py | 6 +- 33 files changed, 342 insertions(+), 451 deletions(-) diff --git a/manuskript/functions.py b/manuskript/functions.py index 8931cc62..aeb7483d 100644 --- a/manuskript/functions.py +++ b/manuskript/functions.py @@ -146,11 +146,18 @@ def randomColor(mix=None): def mixColors(col1, col2, f=.5): + fromString = False + if type(col1) == str: + fromString = True + col1 = QColor(col1) + if type(col2) == str: + col2 = QColor(col2) f2 = 1-f r = col1.red() * f + col2.red() * f2 g = col1.green() * f + col2.green() * f2 b = col1.blue() * f + col2.blue() * f2 - return QColor(r, g, b) + + return QColor(r, g, b) if not fromString else QColor(r, g, b).name() def outlineItemColors(item): @@ -236,14 +243,6 @@ def tempFile(name): return os.path.join(QDir.tempPath(), name) -def lightBlue(): - """ - A light blue used in several places in manuskript. - @return: QColor - """ - return QColor(Qt.blue).lighter(190) - - def totalObjects(): return len(mainWindow().findChildren(QObject)) diff --git a/manuskript/models/persosProxyModel.py b/manuskript/models/persosProxyModel.py index 48aa637c..ba3d2e43 100644 --- a/manuskript/models/persosProxyModel.py +++ b/manuskript/models/persosProxyModel.py @@ -2,107 +2,108 @@ #--!-- coding: utf8 --!-- from manuskript import enums +from manuskript.ui import style as S class persosProxyModel(QSortFilterProxyModel): - + newStatuses = pyqtSignal() - + def __init__(self, parent=None): QSortFilterProxyModel.__init__(self, parent) - + #self.rootItem = QStandardItem() self.p1 = QStandardItem(self.tr("Main")) self.p2 = QStandardItem(self.tr("Secundary")) self.p3 = QStandardItem(self.tr("Minors")) - + self._cats = [ self.p1, self.p2, self.p3 ] - + def mapFromSource(self, sourceIndex): if not sourceIndex.isValid(): return QModelIndex() - + row = self._map.index(sourceIndex.row()) #item = sourceIndex.internalPointer() item = self.sourceModel().itemFromIndex(sourceIndex) - + return self.createIndex(row, sourceIndex.column(), item) - + def flags(self, index): if not index.isValid(): return Qt.NoItemFlags - + if index.isValid() and not self.mapToSource(index).isValid(): return Qt.NoItemFlags#Qt.ItemIsEnabled else: return Qt.ItemIsEnabled | Qt.ItemIsSelectable - + def mapToSource(self, proxyIndex): if not proxyIndex.isValid(): return QModelIndex() - + row = self._map[proxyIndex.row()] - + if type(row) != int: return QModelIndex() - + #item = proxyIndex.internalPointer() item = self.sourceModel().item(row, proxyIndex.column()) - + return self.sourceModel().indexFromItem(item) - + def setSourceModel(self, model): QSortFilterProxyModel.setSourceModel(self, model) self.sourceModel().dataChanged.connect(self.mapModelMaybe) self.sourceModel().rowsInserted.connect(self.mapModel) self.sourceModel().rowsRemoved.connect(self.mapModel) self.sourceModel().rowsMoved.connect(self.mapModel) - + self.mapModel() - + def mapModelMaybe(self, topLeft, bottomRight): if topLeft.column() <= Perso.importance.value <= bottomRight.column(): self.mapModel() - + def mapModel(self): self.beginResetModel() src = self.sourceModel() - + self._map = [] - + for i, cat in enumerate(self._cats): self._map.append(cat) - + for p in range(src.rowCount()): item = src.item(p, Perso.importance.value) - + if item and item.text(): imp = int(item.text()) else: imp = 0 - + if 2-imp == i: self._map.append(p) - + self.endResetModel() - - + + def data(self, index, role=Qt.DisplayRole): - + if index.isValid() and not self.mapToSource(index).isValid(): row = index.row() - + if role == Qt.DisplayRole: return self._map[row].text() - + elif role == Qt.ForegroundRole: - return QBrush(Qt.darkBlue) + return QBrush(QColor(S.highlightedTextDark)) elif role == Qt.BackgroundRole: - return QBrush(QColor(Qt.blue).lighter(190)) + return QBrush(QColor(S.highlightLight)) elif role == Qt.TextAlignmentRole: return Qt.AlignCenter elif role == Qt.FontRole: @@ -113,32 +114,32 @@ class persosProxyModel(QSortFilterProxyModel): else: #FIXME: sometimes, the name of the character is not displayed return self.sourceModel().data(self.mapToSource(index), role) - + def index(self, row, column, parent): - + i = self._map[row] - + if type(i) != int: - + return self.createIndex(row, column, i) - + else: - + return self.mapFromSource(self.sourceModel().index(i, column, QModelIndex())) - + def parent(self, index=QModelIndex()): return QModelIndex() - + def rowCount(self, parent=QModelIndex()): return len(self._map) - + def columnCount(self, parent=QModelIndex()): return self.sourceModel().columnCount(QModelIndex()) - + def item(self, row, col, parent=QModelIndex()): idx = self.mapToSource(self.index(row, col, parent)) return self.sourceModel().item(idx.row(), idx.column()) - - + + #def setData(self, index, value, role=Qt.EditRole): - #pass \ No newline at end of file + #pass diff --git a/manuskript/models/plotsProxyModel.py b/manuskript/models/plotsProxyModel.py index f1827954..f0063eed 100644 --- a/manuskript/models/plotsProxyModel.py +++ b/manuskript/models/plotsProxyModel.py @@ -9,6 +9,7 @@ from PyQt5.QtGui import QColor from PyQt5.QtGui import QStandardItem from manuskript.enums import Plot +from manuskript.ui import style as S class plotsProxyModel(QSortFilterProxyModel): @@ -105,9 +106,9 @@ class plotsProxyModel(QSortFilterProxyModel): return self._map[row].text() elif role == Qt.ForegroundRole: - return QBrush(Qt.darkBlue) + return QBrush(QColor(S.highlightedTextDark)) elif role == Qt.BackgroundRole: - return QBrush(QColor(Qt.blue).lighter(190)) + return QBrush(QColor(S.highlightLight)) elif role == Qt.TextAlignmentRole: return Qt.AlignCenter elif role == Qt.FontRole: diff --git a/manuskript/models/worldModel.py b/manuskript/models/worldModel.py index 5f600e69..45692d4d 100644 --- a/manuskript/models/worldModel.py +++ b/manuskript/models/worldModel.py @@ -4,11 +4,12 @@ from PyQt5.QtCore import QModelIndex from PyQt5.QtCore import QSize from PyQt5.QtCore import Qt from PyQt5.QtGui import QStandardItem, QBrush, QFontMetrics -from PyQt5.QtGui import QStandardItemModel +from PyQt5.QtGui import QStandardItemModel, QColor from PyQt5.QtWidgets import QMenu, QAction, qApp from manuskript.enums import World -from manuskript.functions import mainWindow, lightBlue +from manuskript.functions import mainWindow +from manuskript.ui import style as S class worldModel(QStandardItemModel): @@ -254,7 +255,7 @@ class worldModel(QStandardItemModel): if role == Qt.BackgroundRole: if level == 0: - return QBrush(lightBlue()) + return QBrush(QColor(S.highlightLight)) if role == Qt.TextAlignmentRole: if level == 0: @@ -268,7 +269,7 @@ class worldModel(QStandardItemModel): if role == Qt.ForegroundRole: if level == 0: - return QBrush(Qt.darkBlue) + return QBrush(QColor(S.highlightedTextDark)) if role == Qt.SizeHintRole: fm = QFontMetrics(qApp.font()) diff --git a/manuskript/settingsWindow.py b/manuskript/settingsWindow.py index 05de838e..688d7dea 100644 --- a/manuskript/settingsWindow.py +++ b/manuskript/settingsWindow.py @@ -38,6 +38,15 @@ class settingsWindow(QWidget, Ui_Settings): self.mw = mainWindow # UI + for l in [self.lblTitleGeneral, + self.lblTitleGeneral_2, + self.lblTitleViews, + self.lblTitleLabels, + self.lblTitleStatus, + self.lblTitleFullscreen, + ]: + l.setStyleSheet(S.titleLabelSS()) + icons = [QIcon.fromTheme("configure"), QIcon.fromTheme("history-view"), QIcon.fromTheme("gnome-settings"), diff --git a/manuskript/ui/cheatSheet.py b/manuskript/ui/cheatSheet.py index 6deb4a58..b44038d4 100644 --- a/manuskript/ui/cheatSheet.py +++ b/manuskript/ui/cheatSheet.py @@ -1,14 +1,13 @@ #!/usr/bin/env python # --!-- coding: utf8 --!-- from PyQt5.QtCore import pyqtSignal, Qt, QTimer, QRect -from PyQt5.QtGui import QBrush, QCursor, QPalette, QFontMetrics +from PyQt5.QtGui import QBrush, QCursor, QPalette, QFontMetrics, QColor from PyQt5.QtWidgets import QWidget, QListWidgetItem, QToolTip, QStyledItemDelegate, QStyle from manuskript.enums import Character from manuskript.enums import Plot -from manuskript.functions import lightBlue from manuskript.functions import mainWindow -from manuskript.ui import style +from manuskript.ui import style as S from manuskript.ui.cheatSheet_ui import Ui_cheatSheet from manuskript.models import references as Ref from manuskript.ui.editors.completer import completer @@ -20,7 +19,7 @@ class cheatSheet(QWidget, Ui_cheatSheet): def __init__(self, parent=None): QWidget.__init__(self, parent) self.setupUi(self) - self.txtFilter.setStyleSheet(style.lineEditSS()) + self.txtFilter.setStyleSheet(S.lineEditSS()) self.splitter.setStretchFactor(0, 5) self.splitter.setStretchFactor(1, 70) @@ -122,8 +121,8 @@ class cheatSheet(QWidget, Ui_cheatSheet): def addCategory(self, title): item = QListWidgetItem(title) - item.setBackground(QBrush(lightBlue())) - item.setForeground(QBrush(Qt.darkBlue)) + item.setBackground(QBrush(QColor(S.highlightLight))) + item.setForeground(QBrush(QColor(S.highlightedTextDark))) item.setFlags(Qt.ItemIsEnabled) f = item.font() f.setBold(True) diff --git a/manuskript/ui/collapsibleGroupBox.py b/manuskript/ui/collapsibleGroupBox.py index dac9cfcb..2b3cc042 100644 --- a/manuskript/ui/collapsibleGroupBox.py +++ b/manuskript/ui/collapsibleGroupBox.py @@ -4,6 +4,7 @@ from PyQt5.QtCore import Qt, QRect, QRectF from PyQt5.QtGui import QColor, QBrush, QRegion, QTextOption, QFont from PyQt5.QtWidgets import QSizePolicy, QGroupBox, QWidget, QStylePainter, QStyleOptionGroupBox, qApp, QVBoxLayout, \ QStyle, QStyleOptionFrame, QStyleOptionFocusRect +from manuskript.ui import style as S class collapsibleGroupBox(QGroupBox): @@ -57,7 +58,7 @@ class collapsibleGroupBox(QGroupBox): titleRect.setHeight(textRect.height()) titleRect.moveTop(textRect.top()) - p.setBrush(QBrush(QColor(Qt.blue).lighter(190))) + p.setBrush(QBrush(QColor(S.highlightLight))) p.setPen(Qt.NoPen) p.drawRoundedRect(titleRect, 10, 10) p.restore() @@ -105,7 +106,7 @@ class collapsibleGroupBox(QGroupBox): f = QFont() f.setBold(True) p.setFont(f) - p.setPen(Qt.darkBlue) + p.setPen(QColor(S.highlightedTextDark)) p.drawText(QRectF(titleRect), groupBox.text.replace("&", ""), topt) p.restore() diff --git a/manuskript/ui/collapsibleGroupBox2.py b/manuskript/ui/collapsibleGroupBox2.py index 96f594ff..b52e1eeb 100644 --- a/manuskript/ui/collapsibleGroupBox2.py +++ b/manuskript/ui/collapsibleGroupBox2.py @@ -3,7 +3,6 @@ from PyQt5.QtCore import Qt from PyQt5.QtWidgets import QWidget, QFrame, QPushButton, QVBoxLayout, QSizePolicy, qApp -from manuskript.functions import lightBlue from manuskript.ui import style @@ -16,7 +15,6 @@ class collapsibleGroupBox2(QWidget): self.button.setChecked(True) self.switched = False self.vPolicy = None - # self.button.setStyleSheet("background-color: lightBlue;") self.button.setStyleSheet(style.collapsibleGroupBoxButton()) diff --git a/manuskript/ui/editors/completer.py b/manuskript/ui/editors/completer.py index 70e0b43d..0840b9ec 100644 --- a/manuskript/ui/editors/completer.py +++ b/manuskript/ui/editors/completer.py @@ -1,13 +1,13 @@ #!/usr/bin/env python # --!-- coding: utf8 --!-- from PyQt5.QtCore import pyqtSignal, Qt, QRect -from PyQt5.QtGui import QBrush, QFontMetrics, QPalette +from PyQt5.QtGui import QBrush, QFontMetrics, QPalette, QColor from PyQt5.QtWidgets import QWidget, QListWidgetItem, QStyledItemDelegate, QStyle -from manuskript.functions import lightBlue from manuskript.functions import mainWindow from manuskript.ui.editors.completer_ui import Ui_completer from manuskript.models import references as Ref +from manuskript.ui import style as S class completer(QWidget, Ui_completer): @@ -33,8 +33,8 @@ class completer(QWidget, Ui_completer): def addCategory(self, title): item = QListWidgetItem(title) - item.setBackground(QBrush(lightBlue())) - item.setForeground(QBrush(Qt.darkBlue)) + item.setBackground(QBrush(QColor(S.highlightLight))) + item.setForeground(QBrush(QColor(S.highlightedTextDark))) item.setFlags(Qt.ItemIsEnabled) self.list.addItem(item) @@ -88,6 +88,10 @@ class listCompleterDelegate(QStyledItemDelegate): r = QRect(option.rect) r.setLeft(r.left() + w) painter.save() - painter.setPen(Qt.gray) + if option.state & QStyle.State_Selected: + painter.setPen(QColor(S.highlightedTextLight)) + else: + painter.setPen(QColor(S.textLight)) + painter.drawText(r, Qt.AlignLeft, extra) painter.restore() diff --git a/manuskript/ui/editors/tabSplitter.py b/manuskript/ui/editors/tabSplitter.py index c543e774..751ea9a5 100644 --- a/manuskript/ui/editors/tabSplitter.py +++ b/manuskript/ui/editors/tabSplitter.py @@ -239,7 +239,13 @@ class tabSplitter(QWidget, Ui_tabSplitter): # border:1px solid darkblue; # }}""".format(self.splitter.objectName())) - self.setStyleSheet(style.mainEditorTabSS() + "QWidget{{background:{};}}".format(style.bgHover)) + self.setStyleSheet(style.mainEditorTabSS() + """ + QSplitter#{name}, + QSplitter#{name} > QWidget > QSplitter{{ + border:3px solid {color}; + }}""".format( + name=self.splitter.objectName(), + color=style.highlight)) elif object == self.btnSplit and event.type() == event.HoverLeave: # self.setAutoFillBackground(False) # self.setBackgroundRole(QPalette.Window) diff --git a/manuskript/ui/editors/tabSplitter_ui.py b/manuskript/ui/editors/tabSplitter_ui.py index 3b20b1d5..eac583dd 100644 --- a/manuskript/ui/editors/tabSplitter_ui.py +++ b/manuskript/ui/editors/tabSplitter_ui.py @@ -2,8 +2,7 @@ # Form implementation generated from reading ui file 'manuskript/ui/editors/tabSplitter_ui.ui' # -# Created: Sun Apr 10 16:27:03 2016 -# by: PyQt5 UI code generator 5.2.1 +# Created by: PyQt5 UI code generator 5.9 # # WARNING! All changes made in this file will be lost! @@ -20,8 +19,8 @@ class Ui_tabSplitter(object): tabSplitter.setSizePolicy(sizePolicy) tabSplitter.setWindowTitle("tabSPlitter") self.verticalLayout = QtWidgets.QVBoxLayout(tabSplitter) - self.verticalLayout.setSpacing(0) self.verticalLayout.setContentsMargins(0, 0, 0, 0) + self.verticalLayout.setSpacing(0) self.verticalLayout.setObjectName("verticalLayout") self.splitter = QtWidgets.QSplitter(tabSplitter) self.splitter.setMinimumSize(QtCore.QSize(30, 30)) diff --git a/manuskript/ui/exporters/exporter.py b/manuskript/ui/exporters/exporter.py index da1628c2..3340ae42 100644 --- a/manuskript/ui/exporters/exporter.py +++ b/manuskript/ui/exporters/exporter.py @@ -8,9 +8,10 @@ from PyQt5.QtGui import QBrush, QColor, QIcon from PyQt5.QtWidgets import QWidget from manuskript import exporter -from manuskript.functions import lightBlue, writablePath +from manuskript.functions import writablePath from manuskript.ui.exporters.exporter_ui import Ui_exporter from manuskript.ui.exporters.exportersManager import exportersManager +from manuskript.ui import style as S class exporterDialog(QWidget, Ui_exporter): @@ -46,8 +47,8 @@ class exporterDialog(QWidget, Ui_exporter): continue self.cmbExporters.addItem(QIcon(E.icon), E.name) - self.cmbExporters.setItemData(self.cmbExporters.count() - 1, QBrush(QColor(Qt.darkBlue)), Qt.ForegroundRole) - self.cmbExporters.setItemData(self.cmbExporters.count() - 1, QBrush(lightBlue()), Qt.BackgroundRole) + self.cmbExporters.setItemData(self.cmbExporters.count() - 1, QBrush(QColor(S.highlightedTextDark)), Qt.ForegroundRole) + self.cmbExporters.setItemData(self.cmbExporters.count() - 1, QBrush(QColor(S.highlightLight)), Qt.BackgroundRole) item = self.cmbExporters.model().item(self.cmbExporters.count() - 1) item.setFlags(Qt.ItemIsEnabled) @@ -142,4 +143,4 @@ class exporterDialog(QWidget, Ui_exporter): item.widget().deleteLater() l.addWidget(widget) - widget.setParent(group) \ No newline at end of file + widget.setParent(group) diff --git a/manuskript/ui/exporters/exportersManager.py b/manuskript/ui/exporters/exportersManager.py index bebfc250..60b3ef9e 100644 --- a/manuskript/ui/exporters/exportersManager.py +++ b/manuskript/ui/exporters/exportersManager.py @@ -10,6 +10,8 @@ from PyQt5.QtWidgets import QWidget, QListWidgetItem, QFileDialog from manuskript import exporter from manuskript.ui.exporters.exportersManager_ui import Ui_ExportersManager +from manuskript.ui import style as S + class exportersManager(QWidget, Ui_ExportersManager): @@ -18,6 +20,7 @@ class exportersManager(QWidget, Ui_ExportersManager): def __init__(self, parent=None): QWidget.__init__(self, parent) self.setupUi(self) + self.lblExporterName.setStyleSheet(S.titleLabelSS()) # Var self.currentExporter = None diff --git a/manuskript/ui/exporters/exportersManager_ui.py b/manuskript/ui/exporters/exportersManager_ui.py index e98859db..1e4d5052 100644 --- a/manuskript/ui/exporters/exportersManager_ui.py +++ b/manuskript/ui/exporters/exportersManager_ui.py @@ -2,8 +2,7 @@ # Form implementation generated from reading ui file 'manuskript/ui/exporters/exportersManager_ui.ui' # -# Created: Fri Apr 8 12:47:11 2016 -# by: PyQt5 UI code generator 5.2.1 +# Created by: PyQt5 UI code generator 5.9 # # WARNING! All changes made in this file will be lost! @@ -31,13 +30,6 @@ class Ui_ExportersManager(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lblExporterName.sizePolicy().hasHeightForWidth()) self.lblExporterName.setSizePolicy(sizePolicy) - self.lblExporterName.setStyleSheet("background-color:lightBlue;\n" -"border:none;\n" -"padding:10px;\n" -"color:darkBlue;\n" -"font-size:16px;\n" -"font-weight:bold;\n" -"text-align:center;") self.lblExporterName.setText("{Exporter Name}") self.lblExporterName.setAlignment(QtCore.Qt.AlignCenter) self.lblExporterName.setObjectName("lblExporterName") @@ -82,8 +74,8 @@ class Ui_ExportersManager(object): self.frame.setFrameShadow(QtWidgets.QFrame.Raised) self.frame.setObjectName("frame") self.verticalLayout = QtWidgets.QVBoxLayout(self.frame) - self.verticalLayout.setSpacing(0) self.verticalLayout.setContentsMargins(0, 0, 0, 0) + self.verticalLayout.setSpacing(0) self.verticalLayout.setObjectName("verticalLayout") self.lblExportToDescription = QtWidgets.QLabel(self.frame) font = QtGui.QFont() diff --git a/manuskript/ui/exporters/exportersManager_ui.ui b/manuskript/ui/exporters/exportersManager_ui.ui index c5d0c0ef..1f275cc7 100644 --- a/manuskript/ui/exporters/exportersManager_ui.ui +++ b/manuskript/ui/exporters/exportersManager_ui.ui @@ -46,15 +46,6 @@ 0 - - background-color:lightBlue; -border:none; -padding:10px; -color:darkBlue; -font-size:16px; -font-weight:bold; -text-align:center; - {Exporter Name} diff --git a/manuskript/ui/exporters/manuskript/plainTextSettings.py b/manuskript/ui/exporters/manuskript/plainTextSettings.py index 23a35569..78fd0017 100644 --- a/manuskript/ui/exporters/manuskript/plainTextSettings.py +++ b/manuskript/ui/exporters/manuskript/plainTextSettings.py @@ -9,12 +9,14 @@ from PyQt5.QtWidgets import QWidget, QTableWidgetItem, QListWidgetItem, QTreeVie from manuskript.functions import mainWindow, writablePath from manuskript.ui.exporters.manuskript.plainTextSettings_ui import Ui_exporterSettings +from manuskript.ui import style as S class exporterSettings(QWidget, Ui_exporterSettings): def __init__(self, _format, parent=None): QWidget.__init__(self, parent) self.setupUi(self) + self.toolBox.setStyleSheet(S.toolBoxSS()) self.mw = mainWindow() self._format = _format diff --git a/manuskript/ui/exporters/manuskript/plainTextSettings_ui.py b/manuskript/ui/exporters/manuskript/plainTextSettings_ui.py index a6c8f98c..e8f36c72 100644 --- a/manuskript/ui/exporters/manuskript/plainTextSettings_ui.py +++ b/manuskript/ui/exporters/manuskript/plainTextSettings_ui.py @@ -17,18 +17,9 @@ class Ui_exporterSettings(object): self.verticalLayout_2.setSpacing(10) self.verticalLayout_2.setObjectName("verticalLayout_2") self.toolBox = QtWidgets.QToolBox(exporterSettings) - self.toolBox.setStyleSheet("QToolBox::tab{\n" -" background-color: #BBB;\n" -" padding: 2px;\n" -" border: none;\n" -"}\n" -"\n" -"QToolBox::tab:selected, QToolBox::tab:hover{\n" -" background-color:skyblue;\n" -"}") self.toolBox.setObjectName("toolBox") self.content = QtWidgets.QWidget() - self.content.setGeometry(QtCore.QRect(0, 0, 497, 834)) + self.content.setGeometry(QtCore.QRect(0, 0, 349, 842)) self.content.setObjectName("content") self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.content) self.verticalLayout_5.setContentsMargins(0, 0, 0, 0) @@ -112,7 +103,7 @@ class Ui_exporterSettings(object): self.verticalLayout_5.addItem(spacerItem1) self.toolBox.addItem(self.content, "") self.separations = QtWidgets.QWidget() - self.separations.setGeometry(QtCore.QRect(0, 0, 511, 534)) + self.separations.setGeometry(QtCore.QRect(0, 0, 173, 336)) self.separations.setObjectName("separations") self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.separations) self.verticalLayout_8.setContentsMargins(0, 0, 0, 0) @@ -321,7 +312,7 @@ class Ui_exporterSettings(object): self.verticalLayout_8.addItem(spacerItem6) self.toolBox.addItem(self.separations, "") self.transformations = QtWidgets.QWidget() - self.transformations.setGeometry(QtCore.QRect(0, 0, 511, 534)) + self.transformations.setGeometry(QtCore.QRect(0, 0, 511, 522)) self.transformations.setStyleSheet("QGroupBox{font-weight:bold;}") self.transformations.setObjectName("transformations") self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.transformations) @@ -484,7 +475,7 @@ class Ui_exporterSettings(object): self.verticalLayout_6.addItem(spacerItem10) self.toolBox.addItem(self.transformations, "") self.preview = QtWidgets.QWidget() - self.preview.setGeometry(QtCore.QRect(0, 0, 511, 534)) + self.preview.setGeometry(QtCore.QRect(0, 0, 369, 130)) self.preview.setStyleSheet("QGroupBox{font-weight:bold;}") self.preview.setObjectName("preview") self.verticalLayout_11 = QtWidgets.QVBoxLayout(self.preview) diff --git a/manuskript/ui/exporters/manuskript/plainTextSettings_ui.ui b/manuskript/ui/exporters/manuskript/plainTextSettings_ui.ui index 15c1a5e4..13348794 100644 --- a/manuskript/ui/exporters/manuskript/plainTextSettings_ui.ui +++ b/manuskript/ui/exporters/manuskript/plainTextSettings_ui.ui @@ -31,17 +31,6 @@ - - QToolBox::tab{ - background-color: #BBB; - padding: 2px; - border: none; -} - -QToolBox::tab:selected, QToolBox::tab:hover{ - background-color:skyblue; -} - 2 @@ -53,8 +42,8 @@ QToolBox::tab:selected, QToolBox::tab:hover{ 0 0 - 497 - 834 + 349 + 842 @@ -232,8 +221,8 @@ QToolBox::tab:selected, QToolBox::tab:hover{ 0 0 - 511 - 534 + 173 + 336 @@ -295,8 +284,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -332,8 +320,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -423,8 +410,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -460,8 +446,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -551,8 +536,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -588,8 +572,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -679,8 +662,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -716,8 +698,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -773,7 +754,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ 0 0 511 - 534 + 522 @@ -1113,8 +1094,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -1128,8 +1108,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ - - + .. true @@ -1161,8 +1140,8 @@ QToolBox::tab:selected, QToolBox::tab:hover{ 0 0 - 511 - 534 + 369 + 130 diff --git a/manuskript/ui/importers/generalSettings.py b/manuskript/ui/importers/generalSettings.py index 3940aab7..cd94d2fd 100644 --- a/manuskript/ui/importers/generalSettings.py +++ b/manuskript/ui/importers/generalSettings.py @@ -17,6 +17,7 @@ class generalSettings(QWidget, Ui_generalSettings): def __init__(self, parent=None): QWidget.__init__(self, parent) self.setupUi(self) + self.toolBox.setStyleSheet(style.toolBoxSS()) self.mw = mainWindow() self.txtGeneralSplitScenes.setStyleSheet(style.lineEditSS()) diff --git a/manuskript/ui/importers/generalSettings_ui.py b/manuskript/ui/importers/generalSettings_ui.py index 6ca528a9..d4bb2c5a 100644 --- a/manuskript/ui/importers/generalSettings_ui.py +++ b/manuskript/ui/importers/generalSettings_ui.py @@ -17,18 +17,9 @@ class Ui_generalSettings(object): self.verticalLayout_2.setSpacing(10) self.verticalLayout_2.setObjectName("verticalLayout_2") self.toolBox = QtWidgets.QToolBox(generalSettings) - self.toolBox.setStyleSheet("QToolBox::tab{\n" -" background-color: #BBB;\n" -" padding: 2px;\n" -" border: none;\n" -"}\n" -"\n" -"QToolBox::tab:selected, QToolBox::tab:hover{\n" -" background-color:skyblue;\n" -"}") self.toolBox.setObjectName("toolBox") self.general = QtWidgets.QWidget() - self.general.setGeometry(QtCore.QRect(0, 0, 267, 378)) + self.general.setGeometry(QtCore.QRect(0, 0, 267, 375)) self.general.setObjectName("general") self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.general) self.verticalLayout_5.setContentsMargins(6, 6, 6, 6) diff --git a/manuskript/ui/importers/generalSettings_ui.ui b/manuskript/ui/importers/generalSettings_ui.ui index 955fc21a..8bb2f71f 100644 --- a/manuskript/ui/importers/generalSettings_ui.ui +++ b/manuskript/ui/importers/generalSettings_ui.ui @@ -31,17 +31,6 @@ - - QToolBox::tab{ - background-color: #BBB; - padding: 2px; - border: none; -} - -QToolBox::tab:selected, QToolBox::tab:hover{ - background-color:skyblue; -} - 0 @@ -54,7 +43,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{ 0 0 267 - 378 + 375 diff --git a/manuskript/ui/importers/importer.py b/manuskript/ui/importers/importer.py index f09ae44b..49d15830 100644 --- a/manuskript/ui/importers/importer.py +++ b/manuskript/ui/importers/importer.py @@ -7,7 +7,7 @@ from PyQt5.QtCore import Qt, QTimer, QUrl from PyQt5.QtGui import QBrush, QColor, QIcon, QDesktopServices from PyQt5.QtWidgets import QWidget, QFileDialog, QMessageBox, QStyle -from manuskript.functions import lightBlue, writablePath, appPath +from manuskript.functions import writablePath, appPath from manuskript.ui.importers.importer_ui import Ui_importer from manuskript.ui.importers.generalSettings import generalSettings from manuskript.ui import style @@ -71,8 +71,8 @@ class importerDialog(QWidget, Ui_importer): def addHeader(name): self.cmbImporters.addItem(name, "header") - self.cmbImporters.setItemData(self.cmbImporters.count() - 1, QBrush(QColor(Qt.darkBlue)), Qt.ForegroundRole) - self.cmbImporters.setItemData(self.cmbImporters.count() - 1, QBrush(lightBlue()), Qt.BackgroundRole) + self.cmbImporters.setItemData(self.cmbImporters.count() - 1, QBrush(QColor(style.highlightedTextDark)), Qt.ForegroundRole) + self.cmbImporters.setItemData(self.cmbImporters.count() - 1, QBrush(QColor(style.highlightLight)), Qt.BackgroundRole) item = self.cmbImporters.model().item(self.cmbImporters.count() - 1) item.setFlags(Qt.ItemIsEnabled) diff --git a/manuskript/ui/mainWindow.py b/manuskript/ui/mainWindow.py index d0005c49..775dca61 100644 --- a/manuskript/ui/mainWindow.py +++ b/manuskript/ui/mainWindow.py @@ -383,7 +383,7 @@ class Ui_MainWindow(object): self.scrollAreaPersoInfos.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop) self.scrollAreaPersoInfos.setObjectName("scrollAreaPersoInfos") self.scrollAreaPersoInfosWidget = QtWidgets.QWidget() - self.scrollAreaPersoInfosWidget.setGeometry(QtCore.QRect(0, 0, 444, 709)) + self.scrollAreaPersoInfosWidget.setGeometry(QtCore.QRect(0, 0, 426, 688)) self.scrollAreaPersoInfosWidget.setObjectName("scrollAreaPersoInfosWidget") self.formLayout_8 = QtWidgets.QFormLayout(self.scrollAreaPersoInfosWidget) self.formLayout_8.setFieldGrowthPolicy(QtWidgets.QFormLayout.AllNonFixedFieldsGrow) @@ -1036,7 +1036,7 @@ class Ui_MainWindow(object): self.horizontalLayout_2.addWidget(self.stack) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtWidgets.QMenuBar(MainWindow) - self.menubar.setGeometry(QtCore.QRect(0, 0, 1112, 20)) + self.menubar.setGeometry(QtCore.QRect(0, 0, 1112, 30)) self.menubar.setObjectName("menubar") self.menuFile = QtWidgets.QMenu(self.menubar) self.menuFile.setObjectName("menuFile") @@ -1101,21 +1101,6 @@ class Ui_MainWindow(object): self.verticalLayout_16.setContentsMargins(0, 0, 0, 0) self.verticalLayout_16.setObjectName("verticalLayout_16") self.lstTabs = QtWidgets.QListWidget(self.dockWidgetContents) - self.lstTabs.setStyleSheet("QListView {\n" -" show-decoration-selected: 0;\n" -" outline: none;\n" -" background-color: transparent;\n" -"}\n" -"\n" -"QListView::item:selected {\n" -" background: #DCDEF1;\n" -" color: black;\n" -"}\n" -"\n" -"QListView::item:hover {\n" -" background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\n" -" stop: 0 #FAFBFE, stop: 1 #DCDEF1);\n" -"}") self.lstTabs.setFrameShape(QtWidgets.QFrame.NoFrame) self.lstTabs.setObjectName("lstTabs") self.verticalLayout_16.addWidget(self.lstTabs) @@ -1421,27 +1406,27 @@ class Ui_MainWindow(object): self.actToolFrequency.setText(_translate("MainWindow", "&Frequency Analyzer")) self.actAbout.setText(_translate("MainWindow", "&About")) self.actAbout.setToolTip(_translate("MainWindow", "About Manuskript")) - self.actImport.setText(_translate("MainWindow", "Import…")) + self.actImport.setText(_translate("MainWindow", "&Import…")) self.actImport.setShortcut(_translate("MainWindow", "F7")) - self.actCopy.setText(_translate("MainWindow", "Copy")) + self.actCopy.setText(_translate("MainWindow", "&Copy")) self.actCopy.setShortcut(_translate("MainWindow", "Ctrl+C")) - self.actCut.setText(_translate("MainWindow", "Cut")) + self.actCut.setText(_translate("MainWindow", "C&ut")) self.actCut.setShortcut(_translate("MainWindow", "Ctrl+X")) - self.actPaste.setText(_translate("MainWindow", "Paste")) + self.actPaste.setText(_translate("MainWindow", "&Paste")) self.actPaste.setShortcut(_translate("MainWindow", "Ctrl+V")) - self.actSplitDialog.setText(_translate("MainWindow", "Split…")) + self.actSplitDialog.setText(_translate("MainWindow", "&Split…")) self.actSplitDialog.setShortcut(_translate("MainWindow", "Ctrl+Shift+K")) - self.actSplitCursor.setText(_translate("MainWindow", "Split at cursor")) + self.actSplitCursor.setText(_translate("MainWindow", "Sp&lit at cursor")) self.actSplitCursor.setShortcut(_translate("MainWindow", "Ctrl+K")) - self.actMerge.setText(_translate("MainWindow", "Merge")) + self.actMerge.setText(_translate("MainWindow", "Me&rge")) self.actMerge.setShortcut(_translate("MainWindow", "Ctrl+M")) self.actDuplicate.setText(_translate("MainWindow", "&Duplicate")) self.actDuplicate.setShortcut(_translate("MainWindow", "Ctrl+D")) - self.actDelete.setText(_translate("MainWindow", "Delete")) + self.actDelete.setText(_translate("MainWindow", "D&elete")) self.actDelete.setShortcut(_translate("MainWindow", "Del")) - self.actMoveUp.setText(_translate("MainWindow", "Move Up")) + self.actMoveUp.setText(_translate("MainWindow", "&Move Up")) self.actMoveUp.setShortcut(_translate("MainWindow", "Ctrl+Shift+Up")) - self.actMoveDown.setText(_translate("MainWindow", "Move Down")) + self.actMoveDown.setText(_translate("MainWindow", "M&ove Down")) self.actMoveDown.setShortcut(_translate("MainWindow", "Ctrl+Shift+Down")) from manuskript.ui.cheatSheet import cheatSheet diff --git a/manuskript/ui/mainWindow.ui b/manuskript/ui/mainWindow.ui index e87bd792..7a51fa52 100644 --- a/manuskript/ui/mainWindow.ui +++ b/manuskript/ui/mainWindow.ui @@ -815,8 +815,8 @@ 0 0 - 444 - 709 + 426 + 688 @@ -1601,8 +1601,7 @@ - - + .. true @@ -2093,7 +2092,7 @@ 0 0 1112 - 20 + 30 @@ -2106,8 +2105,7 @@ - - + .. @@ -2277,23 +2275,6 @@ - - QListView { - show-decoration-selected: 0; - outline: none; - background-color: transparent; -} - -QListView::item:selected { - background: #DCDEF1; - color: black; -} - -QListView::item:hover { - background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, - stop: 0 #FAFBFE, stop: 1 #DCDEF1); -} - QFrame::NoFrame @@ -2389,8 +2370,7 @@ QListView::item:hover { - - + .. &Labels... @@ -2399,8 +2379,7 @@ QListView::item:hover { - - + .. &Status... @@ -2463,8 +2442,7 @@ QListView::item:hover { - - + .. &Close project @@ -2473,8 +2451,7 @@ QListView::item:hover { - - + .. Co&mpile @@ -2491,8 +2468,7 @@ QListView::item:hover { - - + .. &About @@ -2504,11 +2480,10 @@ QListView::item:hover { - - + .. - Import… + &Import… F7 @@ -2516,10 +2491,11 @@ QListView::item:hover { - + + .. - Copy + &Copy Ctrl+C @@ -2527,10 +2503,11 @@ QListView::item:hover { - + + .. - Cut + C&ut Ctrl+X @@ -2538,10 +2515,11 @@ QListView::item:hover { - + + .. - Paste + &Paste Ctrl+V @@ -2549,10 +2527,11 @@ QListView::item:hover { - + + .. - Split… + &Split… Ctrl+Shift+K @@ -2560,10 +2539,11 @@ QListView::item:hover { - + + .. - Split at cursor + Sp&lit at cursor Ctrl+K @@ -2571,10 +2551,11 @@ QListView::item:hover { - + + .. - Merge + Me&rge Ctrl+M @@ -2582,7 +2563,8 @@ QListView::item:hover { - + + .. &Duplicate @@ -2593,10 +2575,11 @@ QListView::item:hover { - + + .. - Delete + D&elete Del @@ -2604,10 +2587,11 @@ QListView::item:hover { - + + .. - Move Up + &Move Up Ctrl+Shift+Up @@ -2615,10 +2599,11 @@ QListView::item:hover { - + + .. - Move Down + M&ove Down Ctrl+Shift+Down diff --git a/manuskript/ui/settings_ui.py b/manuskript/ui/settings_ui.py index ab725538..1fc7ec65 100644 --- a/manuskript/ui/settings_ui.py +++ b/manuskript/ui/settings_ui.py @@ -43,13 +43,6 @@ class Ui_Settings(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lblTitleGeneral.sizePolicy().hasHeightForWidth()) self.lblTitleGeneral.setSizePolicy(sizePolicy) - self.lblTitleGeneral.setStyleSheet("background-color:lightBlue;\n" -"border:none;\n" -"padding:10px;\n" -"color:darkBlue;\n" -"font-size:16px;\n" -"font-weight:bold;\n" -"text-align:center;") self.lblTitleGeneral.setAlignment(QtCore.Qt.AlignCenter) self.lblTitleGeneral.setObjectName("lblTitleGeneral") self.verticalLayout_7.addWidget(self.lblTitleGeneral) @@ -230,13 +223,6 @@ class Ui_Settings(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lblTitleGeneral_2.sizePolicy().hasHeightForWidth()) self.lblTitleGeneral_2.setSizePolicy(sizePolicy) - self.lblTitleGeneral_2.setStyleSheet("background-color:lightBlue;\n" -"border:none;\n" -"padding:10px;\n" -"color:darkBlue;\n" -"font-size:16px;\n" -"font-weight:bold;\n" -"text-align:center;") self.lblTitleGeneral_2.setAlignment(QtCore.Qt.AlignCenter) self.lblTitleGeneral_2.setObjectName("lblTitleGeneral_2") self.verticalLayout.addWidget(self.lblTitleGeneral_2) @@ -397,13 +383,6 @@ class Ui_Settings(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lblTitleViews.sizePolicy().hasHeightForWidth()) self.lblTitleViews.setSizePolicy(sizePolicy) - self.lblTitleViews.setStyleSheet("background-color:lightBlue;\n" -"border:none;\n" -"padding:10px;\n" -"color:darkBlue;\n" -"font-size:16px;\n" -"font-weight:bold;\n" -"text-align:center;") self.lblTitleViews.setAlignment(QtCore.Qt.AlignCenter) self.lblTitleViews.setObjectName("lblTitleViews") self.verticalLayout_9.addWidget(self.lblTitleViews) @@ -1329,13 +1308,6 @@ class Ui_Settings(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lblTitleLabels.sizePolicy().hasHeightForWidth()) self.lblTitleLabels.setSizePolicy(sizePolicy) - self.lblTitleLabels.setStyleSheet("background-color:lightBlue;\n" -"border:none;\n" -"padding:10px;\n" -"color:darkBlue;\n" -"font-size:16px;\n" -"font-weight:bold;\n" -"text-align:center;") self.lblTitleLabels.setAlignment(QtCore.Qt.AlignCenter) self.lblTitleLabels.setObjectName("lblTitleLabels") self.verticalLayout_3.addWidget(self.lblTitleLabels) @@ -1392,13 +1364,6 @@ class Ui_Settings(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lblTitleStatus.sizePolicy().hasHeightForWidth()) self.lblTitleStatus.setSizePolicy(sizePolicy) - self.lblTitleStatus.setStyleSheet("background-color:lightBlue;\n" -"border:none;\n" -"padding:10px;\n" -"color:darkBlue;\n" -"font-size:16px;\n" -"font-weight:bold;\n" -"text-align:center;") self.lblTitleStatus.setAlignment(QtCore.Qt.AlignCenter) self.lblTitleStatus.setObjectName("lblTitleStatus") self.verticalLayout_4.addWidget(self.lblTitleStatus) @@ -1428,22 +1393,15 @@ class Ui_Settings(object): self.verticalLayout_10 = QtWidgets.QVBoxLayout(self.page) self.verticalLayout_10.setContentsMargins(0, 0, 0, 0) self.verticalLayout_10.setObjectName("verticalLayout_10") - self.lblTitleStatus_2 = QtWidgets.QLabel(self.page) + self.lblTitleFullscreen = QtWidgets.QLabel(self.page) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lblTitleStatus_2.sizePolicy().hasHeightForWidth()) - self.lblTitleStatus_2.setSizePolicy(sizePolicy) - self.lblTitleStatus_2.setStyleSheet("background-color:lightBlue;\n" -"border:none;\n" -"padding:10px;\n" -"color:darkBlue;\n" -"font-size:16px;\n" -"font-weight:bold;\n" -"text-align:center;") - self.lblTitleStatus_2.setAlignment(QtCore.Qt.AlignCenter) - self.lblTitleStatus_2.setObjectName("lblTitleStatus_2") - self.verticalLayout_10.addWidget(self.lblTitleStatus_2) + sizePolicy.setHeightForWidth(self.lblTitleFullscreen.sizePolicy().hasHeightForWidth()) + self.lblTitleFullscreen.setSizePolicy(sizePolicy) + self.lblTitleFullscreen.setAlignment(QtCore.Qt.AlignCenter) + self.lblTitleFullscreen.setObjectName("lblTitleFullscreen") + self.verticalLayout_10.addWidget(self.lblTitleFullscreen) self.themeStack = QtWidgets.QStackedWidget(self.page) self.themeStack.setObjectName("themeStack") self.stackedWidgetPage1_3 = QtWidgets.QWidget() @@ -1820,7 +1778,7 @@ class Ui_Settings(object): self.horizontalLayout_8.addWidget(self.stack) self.retranslateUi(Settings) - self.stack.setCurrentIndex(2) + self.stack.setCurrentIndex(5) self.tabViews.setCurrentIndex(3) self.themeStack.setCurrentIndex(1) self.themeEditStack.setCurrentIndex(3) @@ -2016,7 +1974,7 @@ class Ui_Settings(object): self.lblTitleLabels.setText(_translate("Settings", "Labels")) self.btnLabelColor.setShortcut(_translate("Settings", "Ctrl+S")) self.lblTitleStatus.setText(_translate("Settings", "Status")) - self.lblTitleStatus_2.setText(_translate("Settings", "Fullscreen")) + self.lblTitleFullscreen.setText(_translate("Settings", "Fullscreen")) self.btnThemeAdd.setText(_translate("Settings", "New")) self.btnThemeEdit.setText(_translate("Settings", "Edit")) self.btnThemeRemove.setText(_translate("Settings", "Delete")) diff --git a/manuskript/ui/settings_ui.ui b/manuskript/ui/settings_ui.ui index ce00565d..194161de 100644 --- a/manuskript/ui/settings_ui.ui +++ b/manuskript/ui/settings_ui.ui @@ -54,7 +54,7 @@ - 2 + 5 @@ -78,15 +78,6 @@ 0 - - background-color:lightBlue; -border:none; -padding:10px; -color:darkBlue; -font-size:16px; -font-weight:bold; -text-align:center; - General settings @@ -464,15 +455,6 @@ text-align:center; 0 - - background-color:lightBlue; -border:none; -padding:10px; -color:darkBlue; -font-size:16px; -font-weight:bold; -text-align:center; - Revisions @@ -775,15 +757,6 @@ text-align:center; 0 - - background-color:lightBlue; -border:none; -padding:10px; -color:darkBlue; -font-size:16px; -font-weight:bold; -text-align:center; - Views settings @@ -2679,15 +2652,6 @@ text-align:center; 0 - - background-color:lightBlue; -border:none; -padding:10px; -color:darkBlue; -font-size:16px; -font-weight:bold; -text-align:center; - Labels @@ -2820,15 +2784,6 @@ text-align:center; 0 - - background-color:lightBlue; -border:none; -padding:10px; -color:darkBlue; -font-size:16px; -font-weight:bold; -text-align:center; - Status @@ -2896,22 +2851,13 @@ text-align:center; 0 - + 0 0 - - background-color:lightBlue; -border:none; -padding:10px; -color:darkBlue; -font-size:16px; -font-weight:bold; -text-align:center; - Fullscreen diff --git a/manuskript/ui/style.py b/manuskript/ui/style.py index 042d7b52..ba1d72fe 100644 --- a/manuskript/ui/style.py +++ b/manuskript/ui/style.py @@ -8,6 +8,7 @@ from PyQt5.QtGui import QColor, QPalette from PyQt5.QtWidgets import qApp from manuskript import settings +from manuskript import functions as F # Loading palette colors. # Manuskript as to restart to reload @@ -16,6 +17,7 @@ p = qApp.palette() window = p.color(QPalette.Window).name() # General background windowText = p.color(QPalette.WindowText).name() # General foregroung base = p.color(QPalette.Base).name() # Other background +alternateBase = p.color(QPalette.AlternateBase).name() # Other background text = p.color(QPalette.Text).name() # Base Text brightText = p.color(QPalette.BrightText).name() # Contrast Text button = p.color(QPalette.Button).name() # Button background @@ -29,11 +31,17 @@ dark = p.color(QPalette.Dark).name() # Darker than Button mid = p.color(QPalette.Mid).name() # Between Button and Dark shadow = p.color(QPalette.Shadow).name() # A very dark color +highlightLight = F.mixColors(highlight, window, .3) +highlightedTextDark = F.mixColors(highlight, text, .3) +highlightedTextLight = F.mixColors(highlight, highlightedText) +midlighter = F.mixColors(mid, window, .4) +textLight = F.mixColors(window, text) + + +#from manuskript.ui import style as S +#QColor(S.highlightedTextDark) +#QColor(S.highlightLight) -bgHover = "#ccc" -bgChecked = "#bbb" -borderColor = "darkGray" -blue = "#268bd2" def mainWindowSS(): return """ @@ -44,13 +52,13 @@ def mainWindowSS(): border: none; }} QPushButton:flat:hover, QToolButton:hover{{ - border: 1px solid {borderColor}; + border: 1px solid {borderHover}; border-radius: 3px; - background: {bgHover}; + background: {backgroundHover}; }} """.format( - bgHover=bgHover, - borderColor=borderColor + backgroundHover=highlightLight, + borderHover=mid ) def styleMainWindow(mw): @@ -58,13 +66,34 @@ def styleMainWindow(mw): mw.lstTabs.verticalScrollBar().setStyleSheet(simpleScrollBarV()) # Custon palette? - qApp.setPalette(appPalette()) + #qApp.setPalette(appPalette()) mw.treeRedacOutline.setStyleSheet(""" QTreeView{ background: transparent; margin-top: 30px; - }""") + }""" + simpleScrollBarV()) + + mw.lstTabs.setStyleSheet(""" + QListView {{ + show-decoration-selected: 0; + outline: none; + background-color: transparent; + }} + + QListView::item:selected {{ + background: {highlight}; + color: {textSelected} + }} + + QListView::item:hover {{ + background: {hover}; + }} + """.format( + hover=highlight, + highlight=highlightLight, + textSelected=text, + )) def appPalette(): @@ -96,30 +125,30 @@ def appPalette(): def collapsibleGroupBoxButton(): s1 = """ - QPushButton{ + QPushButton{{ background-color: #BBB; border: none; padding: 2px; - } - QPushButton:checked, QPushButton:hover{ + }} + QPushButton:checked, QPushButton:hover{{ font-style:italic; - background-color:lightBlue; - }""" + background-color:{bg}; + }}""".format(bg=highlightLight) s2 = """ QPushButton{{ background-color: transparent; border: none; - border-top: 1px solid darkGray; + border-top: 1px solid {border}; padding: 4px 0px; font-weight: bold; }} QPushButton:hover{{ - background-color:{bgHover}; + background-color:{hover}; }} """.format( - bgHover=bgHover, - bgChecked=bgChecked + hover=highlightLight, + border=mid, ) return s2 @@ -183,7 +212,7 @@ def mainEditorTabSS(): QTabBar::tab:selected{{ border: 1px solid {borderColor}; background: {highlight}; - color: {text}; + color: {highlightedText}; }} QTabBar::tab:!selected:hover{{ background:{highlight}; @@ -197,45 +226,25 @@ def mainEditorTabSS(): ) # Add scrollbar - SS += """ - QScrollBar:vertical {{ - border: none; - background: transparent; - width: 10px; - }} - QScrollBar::handle {{ - background: {scrollBG}; - }} - QScrollBar::add-line:vertical {{ - width:0; - height: 0; - border: none; - background: none; - }} - - QScrollBar::sub-line:vertical {{ - width:0; - height: 0; - border: none; - background: none; - }} - """.format(scrollBG=button) + SS += simpleScrollBarV(handle=mid, width=10) return SS def toolBarSS(): return """ - QToolBar{ + QToolBar{{ background:transparent; border: 0; - border-left: 1px solid darkgray; + border-left: 1px solid {border}; spacing: 0px; - } - QToolBar:separator{ + }} + QToolBar:separator{{ border: none; - } - """ + }} + """.format( + border=midlighter, + ) def verticalToolButtonSS(): return """ @@ -255,25 +264,27 @@ def verticalToolButtonSS(): background: {bgHover}; }} """.format( - borderColor=borderColor, - bgChecked=bgChecked, - bgHover=bgHover + borderColor=mid, + bgChecked=midlighter, + bgHover=highlightLight, ) def dockSS(): + return """ QDockWidget::title {{ text-align: left; /* align the text to the left */ - background: {bgChecked}; + background: {header}; padding: 5px; }} QDockWidget::close-button, QDockWidget::float-button {{ - background: {bgChecked}; + background: {header}; }} """.format( - bgChecked=bgChecked + header=highlightLight, + button=button ) @@ -291,15 +302,15 @@ def lineEditSS(): # return "border-radius: 6px;" return """QLineEdit{{ border: none; - border-bottom: 1px solid {checked}; + border-bottom: 1px solid {line}; background:{window}; }} QLineEdit:focus{{ - border-bottom: 1px solid {blue}; + border-bottom: 1px solid {highlight}; }} """.format(window=window, - checked=bgChecked, - blue=blue) + line=mid, + highlight=highlight) def transparentSS(): @@ -309,25 +320,66 @@ def transparentSS(): border:none; }""" -def simpleScrollBarV(): +def simpleScrollBarV(handle=None, width=8): + # system default is (i think): mid background, dark handle + + default = midlighter + + handle = handle or default return """ - QScrollBar:vertical { + QScrollBar:vertical {{ border: none; - background: transparent; - width: 8px; - } - QScrollBar::handle { - background: rgba(180, 180, 180, 60%); - } - QScrollBar::add-line:vertical { + background: {background}; + width: {width}px; + }} + QScrollBar::handle {{ + background: {handle}; + }} + QScrollBar::add-line:vertical {{ width:0; height: 0; border: none; background: none; - } - QScrollBar::sub-line:vertical { + }} + + QScrollBar::sub-line:vertical {{ width:0; height: 0; border: none; background: none; - }""" + }}""".format( + background="transparent", + handle=handle, + width=width) + +def toolBoxSS(): + return """ + QToolBox::tab{{ + background-color: {background}; + padding: 2px; + border: none; + }} + + QToolBox::tab:selected, QToolBox::tab:hover{{ + background-color:{backgroundHover}; + color: {colorHover}; + }}""".format( + background=highlightLight, + backgroundHover=highlight, + colorHover=highlightedText, + ) + +def titleLabelSS(): + return """ + QLabel{{ + background-color:{bg}; + border:none; + padding:10px; + color:{text}; + font-size:16px; + font-weight:bold; + text-align:center; + }}""".format( + bg=highlightLight, + text=highlightedTextDark, + ) diff --git a/manuskript/ui/views/characterTreeView.py b/manuskript/ui/views/characterTreeView.py index 2bfbe55d..a2a50255 100644 --- a/manuskript/ui/views/characterTreeView.py +++ b/manuskript/ui/views/characterTreeView.py @@ -6,6 +6,7 @@ from PyQt5.QtWidgets import QTreeWidget, QTreeWidgetItem, QColorDialog from manuskript.enums import Character from manuskript.functions import iconColor, mainWindow +from manuskript.ui import style as S class characterTreeView(QTreeWidget): @@ -90,8 +91,8 @@ class characterTreeView(QTreeWidget): for i in range(3): # Create category item cat = QTreeWidgetItem(self, [h[i]]) - cat.setBackground(0, QBrush(QColor(Qt.blue).lighter(190))) - cat.setForeground(0, QBrush(Qt.darkBlue)) + cat.setBackground(0, QBrush(QColor(S.highlightLight))) + cat.setForeground(0, QBrush(QColor(S.highlightedTextDark))) cat.setTextAlignment(0, Qt.AlignCenter) f = cat.font(0) f.setBold(True) diff --git a/manuskript/ui/views/cmbOutlineCharacterChoser.py b/manuskript/ui/views/cmbOutlineCharacterChoser.py index 4185aca9..cfe07f82 100644 --- a/manuskript/ui/views/cmbOutlineCharacterChoser.py +++ b/manuskript/ui/views/cmbOutlineCharacterChoser.py @@ -6,6 +6,7 @@ from PyQt5.QtWidgets import QComboBox from manuskript.enums import Outline from manuskript.functions import toInt +from manuskript.ui import style as S class cmbOutlineCharacterChoser(QComboBox): @@ -36,8 +37,8 @@ class cmbOutlineCharacterChoser(QComboBox): for importance in range(3): self.addItem(l[importance]) - self.setItemData(self.count() - 1, QBrush(QColor(Qt.darkBlue)), Qt.ForegroundRole) - self.setItemData(self.count() - 1, QBrush(QColor(Qt.blue).lighter(190)), Qt.BackgroundRole) + self.setItemData(self.count() - 1, QBrush(QColor(S.highlightedTextDark)), Qt.ForegroundRole) + self.setItemData(self.count() - 1, QBrush(QColor(S.highlightLight)), Qt.BackgroundRole) item = self.model().item(self.count() - 1) item.setFlags(Qt.ItemIsEnabled) for i in range(self.mdlCharacters.rowCount()): diff --git a/manuskript/ui/views/outlineDelegates.py b/manuskript/ui/views/outlineDelegates.py index 215f99a6..8995ec9d 100644 --- a/manuskript/ui/views/outlineDelegates.py +++ b/manuskript/ui/views/outlineDelegates.py @@ -10,6 +10,7 @@ from manuskript.enums import Character, Outline from manuskript.functions import outlineItemColors, mixColors, colorifyPixmap, toInt, toFloat, drawProgress from manuskript.ui import style as S + class outlineTitleDelegate(QStyledItemDelegate): def __init__(self, parent=None): QStyledItemDelegate.__init__(self, parent) @@ -142,8 +143,8 @@ class outlineCharacterDelegate(QStyledItemDelegate): l = [self.tr("Main"), self.tr("Secondary"), self.tr("Minor")] for importance in range(3): editor.addItem(l[importance]) - editor.setItemData(editor.count() - 1, QBrush(Qt.darkBlue), Qt.ForegroundRole) - editor.setItemData(editor.count() - 1, QBrush(QColor(Qt.blue).lighter(190)), Qt.BackgroundRole) + editor.setItemData(editor.count() - 1, QBrush(QColor(S.highlightedTextDark)), Qt.ForegroundRole) + editor.setItemData(editor.count() - 1, QBrush(QColor(S.highlightLight)), Qt.BackgroundRole) item = editor.model().item(editor.count() - 1) item.setFlags(Qt.ItemIsEnabled) for i in range(self.mdlCharacter.rowCount()): diff --git a/manuskript/ui/views/plotTreeView.py b/manuskript/ui/views/plotTreeView.py index 31d4cfe0..460aab10 100644 --- a/manuskript/ui/views/plotTreeView.py +++ b/manuskript/ui/views/plotTreeView.py @@ -8,6 +8,7 @@ from lxml import etree as ET from manuskript import settings from manuskript.enums import Plot, Outline, PlotStep from manuskript.models import references as Ref +from manuskript.ui import style as S class plotTreeView(QTreeWidget): @@ -126,8 +127,8 @@ class plotTreeView(QTreeWidget): h = [self.tr("Main"), self.tr("Secondary"), self.tr("Minor")] for i in range(3): cat = QTreeWidgetItem(self, [h[i]]) - cat.setBackground(0, QBrush(QColor(Qt.blue).lighter(190))) - cat.setForeground(0, QBrush(Qt.darkBlue)) + cat.setBackground(0, QBrush(QColor(S.highlightLight))) + cat.setForeground(0, QBrush(QColor(S.highlightedTextDark))) cat.setTextAlignment(0, Qt.AlignCenter) f = cat.font(0) f.setBold(True) diff --git a/manuskript/ui/views/treeDelegates.py b/manuskript/ui/views/treeDelegates.py index 6ed7a3b6..9e8179b4 100644 --- a/manuskript/ui/views/treeDelegates.py +++ b/manuskript/ui/views/treeDelegates.py @@ -142,10 +142,11 @@ class treeTitleDelegate(QStyledItemDelegate): f = painter.font() f.setWeight(QFont.Normal) painter.setFont(f) - col = mixColors( - QColor(S.window), - QColor(S.text)) - painter.setPen(col) #Qt.darkGray + if option.state & QStyle.State_Selected: + col = QColor(S.highlightedTextLight) + else: + col = QColor(S.textLight) + painter.setPen(col) painter.drawText(r, Qt.AlignLeft | Qt.AlignVCenter, extraText) painter.restore() diff --git a/manuskript/ui/welcome.py b/manuskript/ui/welcome.py index f0713dce..d48ebf46 100644 --- a/manuskript/ui/welcome.py +++ b/manuskript/ui/welcome.py @@ -20,6 +20,7 @@ from manuskript.models.outlineModel import outlineModel from manuskript.models.plotModel import plotModel from manuskript.models.worldModel import worldModel from manuskript.ui.welcome_ui import Ui_welcome +from manuskript.ui import style as S try: locale.setlocale(locale.LC_ALL, '') @@ -271,6 +272,7 @@ class welcome(QWidget, Ui_welcome): btn = QPushButton("", self) btn.setIcon(QIcon.fromTheme("edit-delete")) btn.setProperty("deleteRow", k) + btn.setFlat(True) btn.clicked.connect(self.deleteTemplateRow) self.lytTemplate.addWidget(btn, k, 3) @@ -335,8 +337,8 @@ class welcome(QWidget, Ui_welcome): def addTopLevelItem(self, name): item = QTreeWidgetItem(self.tree, [name]) - item.setBackground(0, QBrush(QColor(Qt.blue).lighter(190))) - item.setForeground(0, QBrush(Qt.darkBlue)) + item.setBackground(0, QBrush(QColor(S.highlightLight))) + item.setForeground(0, QBrush(QColor(S.highlightedTextDark))) item.setTextAlignment(0, Qt.AlignCenter) item.setFlags(Qt.ItemIsEnabled) f = item.font(0)