From 5a4930f86002d07be2446f03fc133ad1cec6329c Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 26 Oct 2025 12:06:45 +0100 Subject: [PATCH] Fix role for close buttons --- novelwriter/dialogs/about.py | 4 ++-- novelwriter/dialogs/wordlist.py | 4 ++-- novelwriter/tools/dictionaries.py | 4 ++-- novelwriter/tools/lipsum.py | 4 ++-- novelwriter/tools/manusbuild.py | 4 ++-- novelwriter/tools/manussettings.py | 4 ++-- novelwriter/tools/noveldetails.py | 4 ++-- novelwriter/tools/writingstats.py | 4 ++-- novelwriter/types.py | 1 + 9 files changed, 17 insertions(+), 16 deletions(-) diff --git a/novelwriter/dialogs/about.py b/novelwriter/dialogs/about.py index 080b3b21..a8898fa0 100644 --- a/novelwriter/dialogs/about.py +++ b/novelwriter/dialogs/about.py @@ -37,7 +37,7 @@ from novelwriter.enum import nwStandardButton from novelwriter.extensions.configlayout import NColorLabel from novelwriter.extensions.modified import NDialog from novelwriter.extensions.versioninfo import VersionInfoWidget -from novelwriter.types import QtAlignRightTop, QtHexArgb, QtRoleReject +from novelwriter.types import QtAlignRightTop, QtHexArgb, QtRoleDestruct if TYPE_CHECKING: from PyQt6.QtGui import QCloseEvent @@ -87,7 +87,7 @@ class GuiAbout(NDialog): self.btnClose.clicked.connect(self.reject) self.btnBox = QDialogButtonBox(self) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) # Assemble self.innerBox = QVBoxLayout() diff --git a/novelwriter/dialogs/wordlist.py b/novelwriter/dialogs/wordlist.py index 1a05e187..a2f60b91 100644 --- a/novelwriter/dialogs/wordlist.py +++ b/novelwriter/dialogs/wordlist.py @@ -40,7 +40,7 @@ from novelwriter.core.spellcheck import UserDictionary from novelwriter.enum import nwStandardButton from novelwriter.extensions.configlayout import NColorLabel from novelwriter.extensions.modified import NDialog, NIconToolButton -from novelwriter.types import QtRoleAccept, QtRoleReject +from novelwriter.types import QtRoleAccept, QtRoleDestruct if TYPE_CHECKING: from PyQt6.QtGui import QCloseEvent @@ -119,7 +119,7 @@ class GuiWordList(NDialog): self.btnBox = QDialogButtonBox(self) self.btnBox.addButton(self.btnSave, QtRoleAccept) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) # Assemble self.outerBox = QVBoxLayout() diff --git a/novelwriter/tools/dictionaries.py b/novelwriter/tools/dictionaries.py index cf90d65a..bd19b78d 100644 --- a/novelwriter/tools/dictionaries.py +++ b/novelwriter/tools/dictionaries.py @@ -40,7 +40,7 @@ from novelwriter.common import formatFileFilter, formatInt, getFileSize, openExt from novelwriter.enum import nwStandardButton from novelwriter.error import formatException from novelwriter.extensions.modified import NIconToolButton, NNonBlockingDialog -from novelwriter.types import QtHexArgb, QtRoleReject +from novelwriter.types import QtHexArgb, QtRoleDestruct logger = logging.getLogger(__name__) @@ -115,7 +115,7 @@ class GuiDictionaries(NNonBlockingDialog): self.btnClose.clicked.connect(self.reject) self.btnBox = QDialogButtonBox(self) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) # Assemble self.outerBox = QVBoxLayout() diff --git a/novelwriter/tools/lipsum.py b/novelwriter/tools/lipsum.py index a970fe93..3cd2fea7 100644 --- a/novelwriter/tools/lipsum.py +++ b/novelwriter/tools/lipsum.py @@ -37,7 +37,7 @@ from novelwriter.common import readTextFile from novelwriter.enum import nwStandardButton from novelwriter.extensions.modified import NDialog from novelwriter.extensions.switch import NSwitch -from novelwriter.types import QtAlignLeft, QtAlignRight, QtRoleApply, QtRoleReject +from novelwriter.types import QtAlignLeft, QtAlignRight, QtRoleApply, QtRoleDestruct logger = logging.getLogger(__name__) @@ -102,7 +102,7 @@ class GuiLipsum(NDialog): self.btnBox = QDialogButtonBox(self) self.btnBox.addButton(self.btnInsert, QtRoleApply) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) # Assemble self.outerBox = QVBoxLayout() diff --git a/novelwriter/tools/manusbuild.py b/novelwriter/tools/manusbuild.py index c77898d7..ffbef09d 100644 --- a/novelwriter/tools/manusbuild.py +++ b/novelwriter/tools/manusbuild.py @@ -43,7 +43,7 @@ from novelwriter.core.item import NWItem from novelwriter.enum import nwBuildFmt, nwStandardButton from novelwriter.extensions.modified import NDialog, NIconToolButton, NPushButton from novelwriter.extensions.progressbars import NProgressSimple -from novelwriter.types import QtAlignCenter, QtRoleAction, QtRoleReject, QtUserRole +from novelwriter.types import QtAlignCenter, QtRoleAction, QtRoleDestruct, QtRoleReject, QtUserRole if TYPE_CHECKING: from PyQt6.QtGui import QCloseEvent @@ -190,7 +190,7 @@ class GuiManuscriptBuild(NDialog): self.btnBox = QDialogButtonBox(self) self.btnBox.addButton(self.btnOpen, QtRoleAction) self.btnBox.addButton(self.btnBuild, QtRoleAction) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) # Assemble GUI # ============ diff --git a/novelwriter/tools/manussettings.py b/novelwriter/tools/manussettings.py index dd5bc50c..7f00f6ff 100644 --- a/novelwriter/tools/manussettings.py +++ b/novelwriter/tools/manussettings.py @@ -52,7 +52,7 @@ from novelwriter.extensions.switch import NSwitch from novelwriter.extensions.switchbox import NSwitchBox from novelwriter.types import ( QtAlignCenter, QtAlignLeft, QtHeaderFixed, QtHeaderStretch, QtRoleAccept, - QtRoleApply, QtRoleReject, QtUserRole + QtRoleApply, QtRoleDestruct, QtRoleReject, QtUserRole ) if TYPE_CHECKING: @@ -132,7 +132,7 @@ class GuiBuildSettings(NToolDialog): self.btnBox = QDialogButtonBox(self) self.btnBox.addButton(self.btnApply, QtRoleApply) self.btnBox.addButton(self.btnSave, QtRoleAccept) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) self.btnBox.clicked.connect(self._dialogButtonClicked) # Assemble diff --git a/novelwriter/tools/noveldetails.py b/novelwriter/tools/noveldetails.py index c0314e9b..24b7a9d4 100644 --- a/novelwriter/tools/noveldetails.py +++ b/novelwriter/tools/noveldetails.py @@ -44,7 +44,7 @@ from novelwriter.extensions.modified import NNonBlockingDialog from novelwriter.extensions.novelselector import NovelSelector from novelwriter.extensions.pagedsidebar import NPagedSideBar from novelwriter.extensions.switch import NSwitch -from novelwriter.types import QtAlignRight, QtDecoration, QtRoleReject +from novelwriter.types import QtAlignRight, QtDecoration, QtRoleDestruct if TYPE_CHECKING: from PyQt6.QtGui import QCloseEvent @@ -107,7 +107,7 @@ class GuiNovelDetails(NNonBlockingDialog): self.btnClose.clicked.connect(self.reject) self.btnBox = QDialogButtonBox(self) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) # Assemble self.topBox = QHBoxLayout() diff --git a/novelwriter/tools/writingstats.py b/novelwriter/tools/writingstats.py index dcf3ce40..fea44864 100644 --- a/novelwriter/tools/writingstats.py +++ b/novelwriter/tools/writingstats.py @@ -45,7 +45,7 @@ from novelwriter.extensions.modified import NPushButton, NToolDialog from novelwriter.extensions.switch import NSwitch from novelwriter.types import ( QtAlignLeftMiddle, QtAlignRight, QtAlignRightMiddle, QtDecoration, - QtRoleAction, QtRoleReject + QtRoleAction, QtRoleDestruct ) if TYPE_CHECKING: @@ -298,7 +298,7 @@ class GuiWritingStats(NToolDialog): self.btnBox = QDialogButtonBox(self) self.btnBox.addButton(self.btnSave, QtRoleAction) - self.btnBox.addButton(self.btnClose, QtRoleReject) + self.btnBox.addButton(self.btnClose, QtRoleDestruct) # Assemble self.outerBox = QGridLayout() diff --git a/novelwriter/types.py b/novelwriter/types.py index 52a18351..658e4ed0 100644 --- a/novelwriter/types.py +++ b/novelwriter/types.py @@ -96,6 +96,7 @@ QtRejected = QDialog.DialogCode.Rejected QtRoleAccept = QDialogButtonBox.ButtonRole.AcceptRole QtRoleAction = QDialogButtonBox.ButtonRole.ActionRole QtRoleApply = QDialogButtonBox.ButtonRole.ApplyRole +QtRoleDestruct = QDialogButtonBox.ButtonRole.DestructiveRole QtRoleReject = QDialogButtonBox.ButtonRole.RejectRole QtRoleReset = QDialogButtonBox.ButtonRole.ResetRole