diff --git a/nw/gui/noveltree.py b/nw/gui/noveltree.py index b04339e8..1174bbfe 100644 --- a/nw/gui/noveltree.py +++ b/nw/gui/noveltree.py @@ -237,6 +237,10 @@ class GuiNovelTree(QTreeWidget): """ self.clearTree() + currTitle = None + currChapter = None + currScene = None + for tKey, tHandle, sTitle, novIdx in self.theIndex.novelStructure(skipExcluded=True): tItem = self._createTreeItem(tHandle, sTitle, tKey, novIdx) @@ -244,14 +248,19 @@ class GuiNovelTree(QTreeWidget): tLevel = novIdx["level"] if tLevel == "H1": - currTitle = tItem self.addTopLevelItem(tItem) + currTitle = tItem + currChapter = None + currScene = None + elif tLevel == "H2": if currTitle is None: self.addTopLevelItem(tItem) else: currTitle.addChild(tItem) currChapter = tItem + currScene = None + elif tLevel == "H3": if currChapter is None: if currTitle is None: @@ -261,6 +270,7 @@ class GuiNovelTree(QTreeWidget): else: currChapter.addChild(tItem) currScene = tItem + elif tLevel == "H4": if currScene is None: if currChapter is None: diff --git a/nw/gui/outline.py b/nw/gui/outline.py index fce5c6c9..3ff4d59a 100644 --- a/nw/gui/outline.py +++ b/nw/gui/outline.py @@ -382,14 +382,19 @@ class GuiOutline(QTreeWidget): tLevel = novIdx["level"] if tLevel == "H1": - currTitle = tItem self.addTopLevelItem(tItem) + currTitle = tItem + currChapter = None + currScene = None + elif tLevel == "H2": if currTitle is None: self.addTopLevelItem(tItem) else: currTitle.addChild(tItem) currChapter = tItem + currScene = None + elif tLevel == "H3": if currChapter is None: if currTitle is None: @@ -399,6 +404,7 @@ class GuiOutline(QTreeWidget): else: currChapter.addChild(tItem) currScene = tItem + elif tLevel == "H4": if currScene is None: if currChapter is None: