From 0a8ed86b7cc05dab9d21cc5a22e328b3875268bc Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Tue, 28 Feb 2023 18:24:09 +0100 Subject: [PATCH] Finish the build tool pages and add feature to set selected button --- novelwriter/extensions/pagedsidebar.py | 6 ++ novelwriter/tools/mbuild.py | 85 ++++++++++++++++++++++++-- 2 files changed, 85 insertions(+), 6 deletions(-) diff --git a/novelwriter/extensions/pagedsidebar.py b/novelwriter/extensions/pagedsidebar.py index 27b2639a..26772ee8 100644 --- a/novelwriter/extensions/pagedsidebar.py +++ b/novelwriter/extensions/pagedsidebar.py @@ -98,6 +98,12 @@ class NPagedSideBar(QToolBar): return action + def setSelected(self, buttonId): + """Set the selected button. + """ + self._group.button(buttonId).setChecked(True) + return + ## # Private Slots ## diff --git a/novelwriter/tools/mbuild.py b/novelwriter/tools/mbuild.py index 47098ce4..0d3c29e3 100644 --- a/novelwriter/tools/mbuild.py +++ b/novelwriter/tools/mbuild.py @@ -89,13 +89,23 @@ class GuiBuildManuscript(QDialog): # ============ # Create Tabs - self.optTabSelect = GuiBuildSelectionTab(self) - self.optTabFormat = GuiBuildFormattingTab(self) + self.optTabSelect = GuiBuildFilterTab(self) + self.optTabHeadings = GuiBuildHeadingsTab(self) + self.optTabFormat = GuiBuildFormatTab(self) + self.optTabContent = GuiBuildContentTab(self) + self.buildTabHTML = GuiBuildHTMLTab(self) + self.buildTabMarkdown = GuiBuildMarkdownTab(self) + self.buildTabODT = GuiBuildODTTab(self) # Add Tabs self.toolStack = QStackedWidget(self) self.toolStack.addWidget(self.optTabSelect) + self.toolStack.addWidget(self.optTabHeadings) self.toolStack.addWidget(self.optTabFormat) + self.toolStack.addWidget(self.optTabContent) + self.toolStack.addWidget(self.buildTabHTML) + self.toolStack.addWidget(self.buildTabMarkdown) + self.toolStack.addWidget(self.buildTabODT) # Assemble self.outerBox = QHBoxLayout() @@ -104,6 +114,9 @@ class GuiBuildManuscript(QDialog): self.setLayout(self.outerBox) + # Set Default Tab + self.optSideBar.setSelected(self.OPT_FILTERS) + return ## @@ -116,14 +129,24 @@ class GuiBuildManuscript(QDialog): """ if pageId == self.OPT_FILTERS: self.toolStack.setCurrentWidget(self.optTabSelect) + elif pageId == self.OPT_HEADINGS: + self.toolStack.setCurrentWidget(self.optTabHeadings) elif pageId == self.OPT_FORMAT: self.toolStack.setCurrentWidget(self.optTabFormat) + elif pageId == self.OPT_CONTENT: + self.toolStack.setCurrentWidget(self.optTabContent) + elif pageId == self.BLD_HTML: + self.toolStack.setCurrentWidget(self.buildTabHTML) + elif pageId == self.BLD_MARKDOWN: + self.toolStack.setCurrentWidget(self.buildTabMarkdown) + elif pageId == self.BLD_ODT: + self.toolStack.setCurrentWidget(self.buildTabODT) return # END Class GuiBuildManuscript -class GuiBuildSelectionTab(QWidget): +class GuiBuildFilterTab(QWidget): def __init__(self, buildMain): super().__init__(parent=buildMain) @@ -145,14 +168,64 @@ class GuiBuildSelectionTab(QWidget): return -# END Class GuiBuildSelectionTab +# END Class GuiBuildFilterTab -class GuiBuildFormattingTab(QWidget): +class GuiBuildHeadingsTab(QWidget): def __init__(self, buildMain): super().__init__(parent=buildMain) return -# END Class GuiBuildFormattingTab +# END Class GuiBuildHeadingsTab + + +class GuiBuildFormatTab(QWidget): + + def __init__(self, buildMain): + super().__init__(parent=buildMain) + + return + +# END Class GuiBuildFormatTab + + +class GuiBuildContentTab(QWidget): + + def __init__(self, buildMain): + super().__init__(parent=buildMain) + + return + +# END Class GuiBuildContentTab + + +class GuiBuildHTMLTab(QWidget): + + def __init__(self, buildMain): + super().__init__(parent=buildMain) + + return + +# END Class GuiBuildHTMLTab + + +class GuiBuildMarkdownTab(QWidget): + + def __init__(self, buildMain): + super().__init__(parent=buildMain) + + return + +# END Class GuiBuildMarkdownTab + + +class GuiBuildODTTab(QWidget): + + def __init__(self, buildMain): + super().__init__(parent=buildMain) + + return + +# END Class GuiBuildODTTab