diff --git a/nw/assets/icons/typicons_colour_dark/document-text.svg b/nw/assets/icons/typicons_colour_dark/document-text.svg
index d0975bad..1fb9b11a 100644
--- a/nw/assets/icons/typicons_colour_dark/document-text.svg
+++ b/nw/assets/icons/typicons_colour_dark/document-text.svg
@@ -5,11 +5,11 @@
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- version="1.2"
- width="24"
- height="24"
+ id="svg2161"
viewBox="0 0 24 24"
- id="svg2161">
+ height="24"
+ width="24"
+ version="1.2">
@@ -25,11 +25,11 @@
+ id="rect12986" />
+ d="M 17.555555,22 H 6.4444443 C 4.6066666,22 3.111111,20.504444 3.111111,18.666667 V 5.3333333 C 3.111111,3.4955556 4.6066666,2 6.4444443,2 H 17.555555 c 1.837778,0 3.333334,1.4955556 3.333334,3.3333333 V 18.666667 C 20.888889,20.504444 19.393333,22 17.555555,22 Z M 6.4444443,4.2222222 c -0.6122222,0 -1.1111111,0.4988889 -1.1111111,1.1111111 V 18.666667 c 0,0.612222 0.4988889,1.111111 1.1111111,1.111111 H 17.555555 c 0.612223,0 1.111112,-0.498889 1.111112,-1.111111 V 5.3333333 c 0,-0.6122222 -0.498889,-1.1111111 -1.111112,-1.1111111 z M 16.444444,10.888889 H 7.5555554 c -0.3066666,0 -0.5555555,-0.248889 -0.5555555,-0.555556 0,-0.306666 0.2488889,-0.5555552 0.5555555,-0.5555552 H 16.444444 C 16.751111,9.7777778 17,10.026667 17,10.333333 17,10.64 16.751111,10.888889 16.444444,10.888889 Z m 0,-3.3333334 H 7.5555554 C 7.2488888,7.5555556 6.9999999,7.3066667 6.9999999,7 c 0,-0.3066667 0.2488889,-0.5555556 0.5555555,-0.5555556 H 16.444444 C 16.751111,6.4444444 17,6.6933333 17,7 17,7.3066667 16.751111,7.5555556 16.444444,7.5555556 Z m 0,6.6666664 H 7.5555554 c -0.3066666,0 -0.5555555,-0.248889 -0.5555555,-0.555555 0,-0.306667 0.2488889,-0.555556 0.5555555,-0.555556 H 16.444444 C 16.751111,13.111111 17,13.36 17,13.666667 c 0,0.306666 -0.248889,0.555555 -0.555556,0.555555 z m 0,3.333334 H 7.5555554 c -0.3066666,0 -0.5555555,-0.248889 -0.5555555,-0.555556 0,-0.306667 0.2488889,-0.555556 0.5555555,-0.555556 H 16.444444 C 16.751111,16.444444 17,16.693333 17,17 c 0,0.306667 -0.248889,0.555556 -0.555556,0.555556 z" />
diff --git a/nw/assets/icons/typicons_colour_dark/heading1.svg b/nw/assets/icons/typicons_colour_dark/heading1.svg
new file mode 100644
index 00000000..faad4e82
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_dark/heading1.svg
@@ -0,0 +1,37 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_dark/heading2.svg b/nw/assets/icons/typicons_colour_dark/heading2.svg
new file mode 100644
index 00000000..08c8ad09
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_dark/heading2.svg
@@ -0,0 +1,43 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_dark/heading3.svg b/nw/assets/icons/typicons_colour_dark/heading3.svg
new file mode 100644
index 00000000..b5a35871
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_dark/heading3.svg
@@ -0,0 +1,49 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_dark/heading4.svg b/nw/assets/icons/typicons_colour_dark/heading4.svg
new file mode 100644
index 00000000..718c0746
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_dark/heading4.svg
@@ -0,0 +1,59 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_dark/icons.conf b/nw/assets/icons/typicons_colour_dark/icons.conf
index cffe7329..f55adaa9 100644
--- a/nw/assets/icons/typicons_colour_dark/icons.conf
+++ b/nw/assets/icons/typicons_colour_dark/icons.conf
@@ -28,6 +28,11 @@ cls_custom = star.svg
cls_trash = trash.svg
proj_document = document-text.svg
proj_folder = folder.svg
+proj_orphan = warning.svg
+doc_h1 = heading1.svg
+doc_h2 = heading2.svg
+doc_h3 = heading3.svg
+doc_h4 = heading4.svg
delete = delete.svg
add = plus.svg
remove = minus.svg
diff --git a/nw/assets/icons/typicons_colour_dark/warning.svg b/nw/assets/icons/typicons_colour_dark/warning.svg
new file mode 100644
index 00000000..eef5a902
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_dark/warning.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_light/heading1.svg b/nw/assets/icons/typicons_colour_light/heading1.svg
new file mode 100644
index 00000000..89276c97
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_light/heading1.svg
@@ -0,0 +1,37 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_light/heading2.svg b/nw/assets/icons/typicons_colour_light/heading2.svg
new file mode 100644
index 00000000..5f69658e
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_light/heading2.svg
@@ -0,0 +1,43 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_light/heading3.svg b/nw/assets/icons/typicons_colour_light/heading3.svg
new file mode 100644
index 00000000..b7a33025
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_light/heading3.svg
@@ -0,0 +1,49 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_light/heading4.svg b/nw/assets/icons/typicons_colour_light/heading4.svg
new file mode 100644
index 00000000..50b0b351
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_light/heading4.svg
@@ -0,0 +1,55 @@
+
+
diff --git a/nw/assets/icons/typicons_colour_light/icons.conf b/nw/assets/icons/typicons_colour_light/icons.conf
index ac281962..af948e10 100644
--- a/nw/assets/icons/typicons_colour_light/icons.conf
+++ b/nw/assets/icons/typicons_colour_light/icons.conf
@@ -28,6 +28,11 @@ cls_custom = star.svg
cls_trash = trash.svg
proj_document = document-text.svg
proj_folder = folder.svg
+proj_orphan = warning.svg
+doc_h1 = heading1.svg
+doc_h2 = heading2.svg
+doc_h3 = heading3.svg
+doc_h4 = heading4.svg
delete = delete.svg
add = plus.svg
remove = minus.svg
diff --git a/nw/assets/icons/typicons_colour_light/warning.svg b/nw/assets/icons/typicons_colour_light/warning.svg
new file mode 100644
index 00000000..ad55f227
--- /dev/null
+++ b/nw/assets/icons/typicons_colour_light/warning.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_dark/document-text.svg b/nw/assets/icons/typicons_grey_dark/document-text.svg
index 848c0d8f..1fb9b11a 100644
--- a/nw/assets/icons/typicons_grey_dark/document-text.svg
+++ b/nw/assets/icons/typicons_grey_dark/document-text.svg
@@ -24,13 +24,12 @@
-
-
-
+
+
diff --git a/nw/assets/icons/typicons_grey_dark/heading1.svg b/nw/assets/icons/typicons_grey_dark/heading1.svg
new file mode 100644
index 00000000..28bcaaaa
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_dark/heading1.svg
@@ -0,0 +1,37 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_dark/heading2.svg b/nw/assets/icons/typicons_grey_dark/heading2.svg
new file mode 100644
index 00000000..0183b97f
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_dark/heading2.svg
@@ -0,0 +1,43 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_dark/heading3.svg b/nw/assets/icons/typicons_grey_dark/heading3.svg
new file mode 100644
index 00000000..498cc9a1
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_dark/heading3.svg
@@ -0,0 +1,49 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_dark/heading4.svg b/nw/assets/icons/typicons_grey_dark/heading4.svg
new file mode 100644
index 00000000..0470a292
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_dark/heading4.svg
@@ -0,0 +1,55 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_dark/icons.conf b/nw/assets/icons/typicons_grey_dark/icons.conf
index d03bec4d..b8b24e46 100644
--- a/nw/assets/icons/typicons_grey_dark/icons.conf
+++ b/nw/assets/icons/typicons_grey_dark/icons.conf
@@ -28,6 +28,11 @@ cls_custom = star.svg
cls_trash = trash.svg
proj_document = document-text.svg
proj_folder = folder.svg
+proj_orphan = warning.svg
+doc_h1 = heading1.svg
+doc_h2 = heading2.svg
+doc_h3 = heading3.svg
+doc_h4 = heading4.svg
delete = delete.svg
add = plus.svg
remove = minus.svg
diff --git a/nw/assets/icons/typicons_grey_dark/warning.svg b/nw/assets/icons/typicons_grey_dark/warning.svg
new file mode 100644
index 00000000..3753c9f4
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_dark/warning.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_light/document-text.svg b/nw/assets/icons/typicons_grey_light/document-text.svg
index 04b2bb7b..6b4722ec 100644
--- a/nw/assets/icons/typicons_grey_light/document-text.svg
+++ b/nw/assets/icons/typicons_grey_light/document-text.svg
@@ -5,11 +5,11 @@
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- version="1.2"
- width="24"
- height="24"
+ id="svg2161"
viewBox="0 0 24 24"
- id="svg2161">
+ height="24"
+ width="24"
+ version="1.2">
@@ -24,13 +24,12 @@
-
-
-
+
+
diff --git a/nw/assets/icons/typicons_grey_light/heading1.svg b/nw/assets/icons/typicons_grey_light/heading1.svg
new file mode 100644
index 00000000..4bb013d7
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_light/heading1.svg
@@ -0,0 +1,37 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_light/heading2.svg b/nw/assets/icons/typicons_grey_light/heading2.svg
new file mode 100644
index 00000000..25ec3e05
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_light/heading2.svg
@@ -0,0 +1,43 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_light/heading3.svg b/nw/assets/icons/typicons_grey_light/heading3.svg
new file mode 100644
index 00000000..942ceb60
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_light/heading3.svg
@@ -0,0 +1,49 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_light/heading4.svg b/nw/assets/icons/typicons_grey_light/heading4.svg
new file mode 100644
index 00000000..39613ceb
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_light/heading4.svg
@@ -0,0 +1,55 @@
+
+
diff --git a/nw/assets/icons/typicons_grey_light/icons.conf b/nw/assets/icons/typicons_grey_light/icons.conf
index 9f04ee61..9d99741c 100644
--- a/nw/assets/icons/typicons_grey_light/icons.conf
+++ b/nw/assets/icons/typicons_grey_light/icons.conf
@@ -28,6 +28,11 @@ cls_custom = star.svg
cls_trash = trash.svg
proj_document = document-text.svg
proj_folder = folder.svg
+proj_orphan = warning.svg
+doc_h1 = heading1.svg
+doc_h2 = heading2.svg
+doc_h3 = heading3.svg
+doc_h4 = heading4.svg
delete = delete.svg
add = plus.svg
remove = minus.svg
diff --git a/nw/assets/icons/typicons_grey_light/warning.svg b/nw/assets/icons/typicons_grey_light/warning.svg
new file mode 100644
index 00000000..86f67929
--- /dev/null
+++ b/nw/assets/icons/typicons_grey_light/warning.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/nw/config.py b/nw/config.py
index a8435188..ca9cab7b 100644
--- a/nw/config.py
+++ b/nw/config.py
@@ -83,7 +83,7 @@ class Config:
## General
self.guiTheme = "default"
self.guiSyntax = "default_light"
- self.guiIcons = "typicons_grey_light"
+ self.guiIcons = "typicons_colour_light"
self.guiDark = False
self.guiLang = "en" # Hardcoded for now
self.guiFont = ""
diff --git a/nw/gui/mainmenu.py b/nw/gui/mainmenu.py
index 7cd20565..ece05a58 100644
--- a/nw/gui/mainmenu.py
+++ b/nw/gui/mainmenu.py
@@ -360,21 +360,21 @@ class GuiMainMenu(QMenuBar):
self.viewMenu = self.addMenu("&View")
# View > TreeView
- self.aFocusTree = QAction("TreeView", self)
+ self.aFocusTree = QAction("Focus Project Tree", self)
self.aFocusTree.setStatusTip("Move focus to project tree")
self.aFocusTree.setShortcut("Alt+1")
self.aFocusTree.triggered.connect(lambda : self.theParent.setFocus(1))
self.viewMenu.addAction(self.aFocusTree)
# View > Document Pane 1
- self.aFocusEditor = QAction("Left Document Pane", self)
+ self.aFocusEditor = QAction("Focus Document Editor", self)
self.aFocusEditor.setStatusTip("Move focus to left document pane")
self.aFocusEditor.setShortcut("Alt+2")
self.aFocusEditor.triggered.connect(lambda : self.theParent.setFocus(2))
self.viewMenu.addAction(self.aFocusEditor)
# View > Document Pane 2
- self.aFocusView = QAction("Right Document Pane", self)
+ self.aFocusView = QAction("Focus Document Viewer", self)
self.aFocusView.setStatusTip("Move focus to right document pane")
self.aFocusView.setShortcut("Alt+3")
self.aFocusView.triggered.connect(lambda : self.theParent.setFocus(3))
@@ -591,8 +591,8 @@ class GuiMainMenu(QMenuBar):
self.aFmtComment.triggered.connect(lambda: self._docAction(nwDocAction.BLOCK_COM))
self.fmtMenu.addAction(self.aFmtComment)
- # Format > Remove Format
- self.aFmtNoFormat = QAction("Remove Format", self)
+ # Format > Remove Block Format
+ self.aFmtNoFormat = QAction("Remove Block Format", self)
self.aFmtNoFormat.setStatusTip("Strips block format")
self.aFmtNoFormat.setShortcuts(["Ctrl+0","Ctrl+Shift+/"])
self.aFmtNoFormat.triggered.connect(lambda: self._docAction(nwDocAction.BLOCK_TXT))
diff --git a/nw/gui/outline.py b/nw/gui/outline.py
index 2d2716f8..b2c45f86 100644
--- a/nw/gui/outline.py
+++ b/nw/gui/outline.py
@@ -371,7 +371,7 @@ class GuiOutline(QTreeWidget):
tLevel = self.theIndex.novelIndex[tHandle][sTitle]["level"]
tTime = self.theIndex.novelIndex[tHandle][sTitle]["updated"]
- tItem = self._createTreeItem(tHandle, sTitle)
+ tItem = self._createTreeItem(tHandle, sTitle, tLevel)
self.treeMap[titleKey] = tItem
if tLevel == "H1":
@@ -410,17 +410,18 @@ class GuiOutline(QTreeWidget):
return
- def _createTreeItem(self, tHandle, sTitle):
+ def _createTreeItem(self, tHandle, sTitle, tLevel):
"""Populate a tree item with all the column values.
"""
nwItem = self.theProject.projTree[tHandle]
novIdx = self.theIndex.novelIndex[tHandle][sTitle]
newItem = QTreeWidgetItem()
+ hIcon = "doc_%s" % tLevel.lower()
newItem.setText(self.colIndex[nwOutline.TITLE], novIdx["title"])
newItem.setData(self.colIndex[nwOutline.TITLE], Qt.UserRole, tHandle)
- newItem.setIcon(self.colIndex[nwOutline.TITLE], self.theTheme.getIcon("hash"))
+ newItem.setIcon(self.colIndex[nwOutline.TITLE], self.theTheme.getIcon(hIcon))
newItem.setText(self.colIndex[nwOutline.LEVEL], novIdx["level"])
newItem.setText(self.colIndex[nwOutline.LABEL], nwItem.itemName)
newItem.setIcon(self.colIndex[nwOutline.LABEL], self.theTheme.getIcon("proj_document"))
diff --git a/nw/gui/projtree.py b/nw/gui/projtree.py
index 7a3c98fb..b7b9029c 100644
--- a/nw/gui/projtree.py
+++ b/nw/gui/projtree.py
@@ -67,7 +67,7 @@ class GuiProjectTree(QTreeWidget):
self.clearTree()
# Build GUI
- iPx = self.theTheme.textIconSize
+ iPx = self.theTheme.baseIconSize
self.setIconSize(QSize(iPx, iPx))
self.setExpandsOnDoubleClick(True)
self.setIndentation(iPx)
@@ -758,8 +758,8 @@ class GuiProjectTree(QTreeWidget):
self.addTopLevelItem(newItem)
self.orphRoot = newItem
newItem.setExpanded(True)
- newItem.setData(self.C_NAME, "")
- newItem.setIcon(self.C_NAME, self.theTheme.getIcon("warning"))
+ newItem.setData(self.C_NAME, Qt.UserRole, "")
+ newItem.setIcon(self.C_NAME, self.theTheme.getIcon("proj_orphan"))
return
def _cleanOrphanedRoot(self):
diff --git a/nw/gui/theme.py b/nw/gui/theme.py
index 9d513262..08b18691 100644
--- a/nw/gui/theme.py
+++ b/nw/gui/theme.py
@@ -509,10 +509,15 @@ class GuiIcons:
"cls_trash" : (QStyle.SP_DriveHDIcon, "drive-harddisk"),
"proj_document" : (QStyle.SP_FileIcon, "x-office-document"),
"proj_folder" : (QStyle.SP_DirIcon, "folder"),
+ "proj_orphan" : (QStyle.SP_MessageBoxWarning, "dialog-warning"),
"proj_nwx" : (None, None),
"status_lang" : (None, None),
"status_time" : (None, None),
"status_stats" : (None, None),
+ "doc_h1" : (QStyle.SP_FileIcon, "x-office-document"),
+ "doc_h2" : (QStyle.SP_FileIcon, "x-office-document"),
+ "doc_h3" : (QStyle.SP_FileIcon, "x-office-document"),
+ "doc_h4" : (QStyle.SP_FileIcon, "x-office-document"),
## General Button Icons
"folder-open" : (QStyle.SP_DirOpenIcon, "folder-open"),
diff --git a/tests/reference/novelwriter.conf b/tests/reference/novelwriter.conf
index 2c17e47f..2ecde509 100644
--- a/tests/reference/novelwriter.conf
+++ b/tests/reference/novelwriter.conf
@@ -2,7 +2,7 @@
timestamp = 2020-06-03 20:42:03
theme = default
syntax = default_light
-icons = typicons_grey_light
+icons = typicons_colour_light
guidark = False
guifont =
guifontsize = 11