Make sure manuscript preview always preserves tabs

This commit is contained in:
Veronica Berglyd Olsen
2024-03-01 22:15:28 +01:00
parent ef1fc0943d
commit 44adc42fa6
3 changed files with 24 additions and 6 deletions
+20 -4
View File
@@ -52,15 +52,16 @@ class NWBuildDocument:
manuscript, based on a build definition object (BuildSettings).
"""
__slots__ = ("_project", "_build", "_queue", "_error", "_cache", "_count")
__slots__ = ("_project", "_build", "_queue", "_error", "_cache", "_count", "_preview")
def __init__(self, project: NWProject, build: BuildSettings, doCount: bool = False) -> None:
def __init__(self, project: NWProject, build: BuildSettings) -> None:
self._project = project
self._build = build
self._queue = []
self._error = None
self._cache = None
self._count = doCount
self._count = False
self._preview = False
return
##
@@ -80,6 +81,21 @@ class NWBuildDocument:
"""
return self._cache
##
# Setters
##
def setCountEnabled(self, state: bool) -> None:
"""Turn on/off stats counting for builds."""
self._count = state
return
def setPreviewMode(self, state: bool) -> None:
"""Set the preview mode of the build. Implies count mode."""
self._preview = state
self._count = state
return
##
# Special Methods
##
@@ -161,7 +177,7 @@ class NWBuildDocument:
else:
yield i, False
if not self._build.getBool("html.preserveTabs"):
if not (self._build.getBool("html.preserveTabs") or self._preview):
makeObj.replaceTabs()
self._error = None
+2 -1
View File
@@ -337,7 +337,8 @@ class GuiManuscript(QDialog):
if build is None:
return
docBuild = NWBuildDocument(SHARED.project, build, doCount=True)
docBuild = NWBuildDocument(SHARED.project, build)
docBuild.setPreviewMode(True)
docBuild.queueAll()
self.docPreview.beginNewBuild(len(docBuild))
+2 -1
View File
@@ -83,7 +83,8 @@ def testCoreDocBuild_OpenDocument(monkeypatch, mockGUI, prjLipsum, fncPath, tstP
build = BuildSettings()
build.unpack(BUILD_CONF)
docBuild = NWBuildDocument(project, build, doCount=True)
docBuild = NWBuildDocument(project, build)
docBuild.setCountEnabled(True)
docBuild.queueAll()
assert len(docBuild) == 21