Some more UI tweaks

This commit is contained in:
Olivier Keshavjee 2016-04-11 23:54:47 +02:00
parent 282e976aa1
commit 7f9ea9e513
12 changed files with 526 additions and 399 deletions

View file

@ -12,6 +12,7 @@ FORMS += ../manuskript/ui/editors/textFormat_ui.ui
FORMS += ../manuskript/ui/editors/locker_ui.ui
FORMS += ../manuskript/ui/editors/completer_ui.ui
FORMS += ../manuskript/ui/editors/mainEditor_ui.ui
FORMS += ../manuskript/ui/editors/tabSplitter_ui.ui
FORMS += ../manuskript/ui/views/propertiesView_ui.ui
FORMS += ../manuskript/ui/views/metadataView_ui.ui
@ -39,6 +40,7 @@ SOURCES += ../manuskript/ui/editors/fullScreenEditor.py
SOURCES += ../manuskript/ui/editors/locker.py
SOURCES += ../manuskript/ui/editors/mainEditor.py
SOURCES += ../manuskript/ui/editors/textFormat.py
SOURCES += ../manuskript/ui/editors/tabSplitter.py
SOURCES += ../manuskript/ui/helpLabel.py
SOURCES += ../manuskript/ui/revisions.py
SOURCES += ../manuskript/ui/search.py

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -8,6 +8,7 @@ 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.cheatSheet_ui import Ui_cheatSheet
from manuskript.models import references as Ref
from manuskript.ui.editors.completer import completer
@ -19,6 +20,7 @@ class cheatSheet(QWidget, Ui_cheatSheet):
def __init__(self, parent=None):
QWidget.__init__(self, parent)
self.setupUi(self)
self.txtFilter.setStyleSheet(style.lineEditSS())
self.splitter.setStretchFactor(0, 5)
self.splitter.setStretchFactor(1, 70)

View file

@ -9,7 +9,7 @@ from PyQt5.QtWidgets import QWidget, qApp
from manuskript import settings
from manuskript.enums import Outline
from manuskript.functions import AUC, mainWindow, drawProgress
from manuskript.functions import AUC, mainWindow, drawProgress, appPath
from manuskript.ui import style
from manuskript.ui.editors.editorWidget import editorWidget
from manuskript.ui.editors.fullScreenEditor import fullScreenEditor
@ -49,11 +49,11 @@ class mainEditor(QWidget, Ui_mainEditor):
# Cf. https://github.com/qtproject/qtbase/commit/a8621a3f85e64f1252a80ae81a6e22554f7b3f44
# Since those are important, we provide fallback.
self.btnRedacFolderCork.setIcon(QIcon.fromTheme("view-cards",
QIcon("../icons/NumixMsk/256x256/actions/view-cards.svg")))
QIcon(appPath("icons/NumixMsk/256x256/actions/view-cards.svg"))))
self.btnRedacFolderOutline.setIcon(QIcon.fromTheme("view-outline",
QIcon("../icons/NumixMsk/256x256/actions/view-outline.svg")))
QIcon(appPath("icons/NumixMsk/256x256/actions/view-outline.svg"))))
self.btnRedacFolderText.setIcon(QIcon.fromTheme("view-text",
QIcon("../icons/NumixMsk/256x256/actions/view-text.svg")))
QIcon(appPath("icons/NumixMsk/256x256/actions/view-text.svg"))))
for btn in [self.btnRedacFolderCork, self.btnRedacFolderText, self.btnRedacFolderOutline]:
btn.setToolTip(btn.text())

View file

@ -6,7 +6,7 @@ from PyQt5.QtCore import QModelIndex, QRect, QPoint, Qt, QObject, QSize
from PyQt5.QtGui import QIcon, QPalette
from PyQt5.QtWidgets import QWidget, QPushButton, qApp
from manuskript.functions import mainWindow
from manuskript.functions import mainWindow, appPath
from manuskript.ui import style
from manuskript.ui.editors.tabSplitter_ui import Ui_tabSplitter
@ -42,6 +42,7 @@ class tabSplitter(QWidget, Ui_tabSplitter):
self.btnTarget.setFlat(True)
self.btnTarget.setObjectName("btnTarget")
self.btnTarget.clicked.connect(self.setTarget)
self.btnTarget.setToolTip(self.tr("Open selected items in that view."))
self.updateTargetIcon(self.isTarget)
self.mainEditor = mainEditor or parent
@ -89,8 +90,8 @@ class tabSplitter(QWidget, Ui_tabSplitter):
def restoreOpenIndexes(self, openIndexes):
try:
self.split(state=openIndexes[0])
if openIndexes[1]:
self.split(state=openIndexes[0])
for i in openIndexes[1]:
idx = mainWindow().mdlOutline.getIndexByID(i)
@ -114,7 +115,7 @@ class tabSplitter(QWidget, Ui_tabSplitter):
self.updateTargetIcon(self.isTarget)
def updateTargetIcon(self, val):
icon = QIcon.fromTheme("set-target", QIcon("../icons/NumixMsk/256x256/actions/set-target.svg"))
icon = QIcon.fromTheme("set-target", QIcon(appPath("icons/NumixMsk/256x256/actions/set-target.svg")))
if not val:
icon = QIcon(icon.pixmap(128, 128, icon.Disabled))
self.btnTarget.setIcon(icon)
@ -211,16 +212,22 @@ class tabSplitter(QWidget, Ui_tabSplitter):
def eventFilter(self, object, event):
if object == self.btnSplit and event.type() == event.HoverEnter:
self.setAutoFillBackground(True)
# self.setAutoFillBackground(True)
# self.setBackgroundRole(QPalette.Highlight)
# self.splitter.setAutoFillBackground(True)
# self.splitter.setStyleSheet("""QSplitter#{}{{
# border:1px solid darkblue;
# }}""".format(self.splitter.objectName()))
self.setBackgroundRole(QPalette.Highlight)
self.setStyleSheet(style.mainEditorTabSS() + "QWidget{{background:{};}}".format(style.bgHover))
elif object == self.btnSplit and event.type() == event.HoverLeave:
self.setAutoFillBackground(False)
# self.setAutoFillBackground(False)
# self.setBackgroundRole(QPalette.Window)
# self.splitter.setStyleSheet("""QSplitter#{}{{
# border: 1px solid transparent;
# }}""".format(self.splitter.objectName()))
self.setBackgroundRole(QPalette.Window)
self.setStyleSheet(style.mainEditorTabSS())
return QWidget.eventFilter(self, object, event)

View file

@ -2,8 +2,7 @@
# Form implementation generated from reading ui file 'manuskript/ui/mainWindow.ui'
#
# Created: Fri Apr 8 18:22:09 2016
# by: PyQt5 UI code generator 5.2.1
# Created by: PyQt5 UI code generator 5.4.2
#
# WARNING! All changes made in this file will be lost!
@ -17,8 +16,8 @@ class Ui_MainWindow(object):
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.centralwidget)
self.horizontalLayout_2.setSpacing(0)
self.horizontalLayout_2.setContentsMargins(0, 1, 0, 0)
self.horizontalLayout_2.setSpacing(0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.stack = QtWidgets.QStackedWidget(self.centralwidget)
self.stack.setObjectName("stack")
@ -822,7 +821,6 @@ class Ui_MainWindow(object):
self.layoutWidget = QtWidgets.QWidget(self.splitterOutlineH)
self.layoutWidget.setObjectName("layoutWidget")
self.verticalLayout_14 = QtWidgets.QVBoxLayout(self.layoutWidget)
self.verticalLayout_14.setContentsMargins(0, 0, 0, 0)
self.verticalLayout_14.setObjectName("verticalLayout_14")
self.splitterOutlineV = QtWidgets.QSplitter(self.layoutWidget)
self.splitterOutlineV.setOrientation(QtCore.Qt.Vertical)
@ -1326,18 +1324,18 @@ class Ui_MainWindow(object):
self.actCompile.setShortcut(_translate("MainWindow", "F6"))
self.actToolFrequency.setText(_translate("MainWindow", "&Frequency Analyzer"))
from manuskript.ui.cheatSheet import cheatSheet
from manuskript.ui.editors.mainEditor import mainEditor
from manuskript.ui.search import search
from manuskript.ui.views.basicItemView import basicItemView
from manuskript.ui.views.characterTreeView import characterTreeView
from manuskript.ui.views.lineEditView import lineEditView
from manuskript.ui.views.metadataView import metadataView
from manuskript.ui.views.outlineView import outlineView
from manuskript.ui.views.plotTreeView import plotTreeView
from manuskript.ui.views.sldImportance import sldImportance
from manuskript.ui.views.metadataView import metadataView
from manuskript.ui.search import search
from manuskript.ui.views.lineEditView import lineEditView
from manuskript.ui.views.basicItemView import basicItemView
from manuskript.ui.views.textEditView import textEditView
from manuskript.ui.welcome import welcome
from manuskript.ui.editors.mainEditor import mainEditor
from manuskript.ui.views.storylineView import storylineView
from manuskript.ui.views.textEditCompleter import textEditCompleter
from manuskript.ui.views.textEditView import textEditView
from manuskript.ui.views.treeView import treeView
from manuskript.ui.views.characterTreeView import characterTreeView
from manuskript.ui.views.outlineView import outlineView
from manuskript.ui.cheatSheet import cheatSheet
from manuskript.ui.welcome import welcome

View file

@ -6,6 +6,7 @@ from PyQt5.QtWidgets import QWidget, QMenu, QAction, qApp, QListWidgetItem, QSty
from manuskript.enums import Outline
from manuskript.functions import mainWindow
from manuskript.ui import style
from manuskript.ui.search_ui import Ui_search
from manuskript.models import references as Ref
@ -34,6 +35,9 @@ class search(QWidget, Ui_search):
self.result.setItemDelegate(self.delegate)
self.result.itemActivated.connect(self.openItem)
self.result.setStyleSheet(style.searchResultSS())
self.text.setStyleSheet(style.lineEditSS())
def generateOptionMenu(self):
self.menu = QMenu(self)
a = QAction(self.tr("Search in:"), self.menu)

View file

@ -2,8 +2,7 @@
# Form implementation generated from reading ui file 'manuskript/ui/search_ui.ui'
#
# Created: Fri Apr 8 18:15:49 2016
# by: PyQt5 UI code generator 5.2.1
# Created by: PyQt5 UI code generator 5.4.2
#
# WARNING! All changes made in this file will be lost!
@ -14,13 +13,14 @@ class Ui_search(object):
search.setObjectName("search")
search.resize(400, 300)
self.verticalLayout = QtWidgets.QVBoxLayout(search)
self.verticalLayout.setSpacing(0)
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
self.verticalLayout.setSpacing(0)
self.verticalLayout.setObjectName("verticalLayout")
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setSpacing(0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.text = QtWidgets.QLineEdit(search)
self.text.setInputMask("")
self.text.setFrame(False)
self.text.setClearButtonEnabled(True)
self.text.setObjectName("text")
@ -45,4 +45,5 @@ class Ui_search(object):
def retranslateUi(self, search):
_translate = QtCore.QCoreApplication.translate
search.setWindowTitle(_translate("search", "Form"))
self.text.setPlaceholderText(_translate("search", "Search for..."))

View file

@ -36,9 +36,15 @@
</property>
<item>
<widget class="QLineEdit" name="text">
<property name="inputMask">
<string/>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="placeholderText">
<string>Search for...</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
</property>

View file

@ -9,11 +9,13 @@ from PyQt5.QtWidgets import qApp
from manuskript import settings
window = "#d6d2d0" #"#eee" / #eff0f1
# window = "#d6d2d0" #"#eee" / #eff0f1
window = qApp.palette().color(QPalette.Window).name()
bgHover = "#ccc"
bgChecked = "#bbb"
borderColor = "darkGray"
blue = "#268bd2"
def mainWindowSS():
return """
@ -89,7 +91,7 @@ def collapsibleGroupBoxButton():
QPushButton{{
background-color: transparent;
border: none;
border-top: 1px solid {bgChecked};
border-top: 1px solid darkGray;
padding: 4px 0px;
font-weight: bold;
}}
@ -119,11 +121,10 @@ def mainEditorTabSS():
border: 0px;
}}
QTabBar::tab{{
margin: 2px 0 0 0;
margin: 3px 0 -3px 0;
padding: 2px 9px;
border: 1px solid #999;
border-bottom: 0px;
margin-top: 3px;
}}
QTabBar::tab:selected{{
border: 1px solid #999;
@ -201,13 +202,45 @@ def verticalToolButtonSS():
def dockSS():
return """
QDockWidget::title {
text-align: left; /* align the text to the left */
background: lightBlue;
padding: 5px;
}
QDockWidget::title {{
text-align: left; /* align the text to the left */
background: {bgChecked};
padding: 5px;
}}
QDockWidget::close-button, QDockWidget::float-button {
background: lightBlue;
}
"""
QDockWidget::close-button, QDockWidget::float-button {{
background: {bgChecked};
}}
""".format(
bgChecked=bgChecked
)
def searchResultSS():
return """
QListWidget{{
background: {window};
}}
""".format(
window=window
)
def lineEditSS():
# return "border-radius: 6px;"
return """QLineEdit{{
border: none;
border-bottom: 1px solid {checked};
background:{window};
}}
QLineEdit:focus{{
border-bottom: 1px solid {blue};
}}
""".format(window=window,
checked=bgChecked,
blue=blue)
def transparentSS():
return """background: transparent;
border:none;"""

View file

@ -4,7 +4,7 @@ from PyQt5.QtWidgets import QWidget, QAbstractItemView
from manuskript.enums import Outline
from manuskript.ui.views.metadataView_ui import Ui_metadataView
from manuskript.ui import style
class metadataView(QWidget, Ui_metadataView):
def __init__(self, parent=None):
@ -15,6 +15,10 @@ class metadataView(QWidget, Ui_metadataView):
self.txtSummaryFull.setColumn(Outline.summaryFull.value)
self.txtNotes.setColumn(Outline.notes.value)
self.revisions.setEnabled(False)
self.txtSummarySentence.setStyleSheet(style.lineEditSS())
self.txtSummaryFull.setStyleSheet(style.transparentSS())
self.txtNotes.setStyleSheet(style.transparentSS())
def setModels(self, mdlOutline, mdlCharacter, mdlLabels, mdlStatus):
self.properties.setModels(mdlOutline, mdlCharacter, mdlLabels, mdlStatus)