From f0e86dad102154c6e205a1678cb82288ecad638b Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Tue, 20 Feb 2024 23:07:32 +0100 Subject: [PATCH] Drop language setting on new project form --- novelwriter/core/coretools.py | 11 +++-------- novelwriter/tools/welcome.py | 19 +++++++------------ .../coreTools_ProjectBuilderA_nwProject.nwx | 4 ++-- .../coreTools_ProjectBuilderB_nwProject.nwx | 4 ++-- tests/test_core/test_core_coretools.py | 9 ++++----- 5 files changed, 18 insertions(+), 29 deletions(-) diff --git a/novelwriter/core/coretools.py b/novelwriter/core/coretools.py index c77b99fb..0552001d 100644 --- a/novelwriter/core/coretools.py +++ b/novelwriter/core/coretools.py @@ -365,14 +365,10 @@ class ProjectBuilder: lblByAuthors = self.tr("By") # Settings - projName = data.get("name", lblNewProject) - projAuthor = data.get("author", "") - projLang = data.get("language", "en_GB") - project.data.setUuid(None) - project.data.setName(projName) - project.data.setAuthor(projAuthor) - project.data.setLanguage(projLang) + project.data.setName(data.get("name", lblNewProject)) + project.data.setAuthor(data.get("author", "")) + project.data.setLanguage(CONFIG.guiLocale) project.setDefaultStatusImport() project.session.startSession() @@ -502,7 +498,6 @@ class ProjectBuilder: project.data.setUuid("") # Creates a fresh uuid project.data.setName(data.get("name", "None")) project.data.setAuthor(data.get("author", "")) - project.data.setLanguage(data.get("language", "en_GB")) project.data.setSpellCheck(True) project.data.setSpellLang(None) project.data.setDoBackup(True) diff --git a/novelwriter/tools/welcome.py b/novelwriter/tools/welcome.py index 4d9b3955..e9589f66 100644 --- a/novelwriter/tools/welcome.py +++ b/novelwriter/tools/welcome.py @@ -45,8 +45,9 @@ from novelwriter.enum import nwItemClass from novelwriter.common import formatInt, makeFileNameSafe from novelwriter.constants import nwFiles from novelwriter.core.coretools import ProjectBuilder +from novelwriter.extensions.configlayout import NColourLabel from novelwriter.extensions.switch import NSwitch -from novelwriter.extensions.modified import NComboBox, NSpinBox +from novelwriter.extensions.modified import NSpinBox from novelwriter.extensions.versioninfo import VersionInfoWidget logger = logging.getLogger(__name__) @@ -544,6 +545,10 @@ class _NewProjectForm(QWidget): # Project Settings # ================ + self.projHelp = NColourLabel(self.tr( + "These setting can be changed later from Project Settings." + ), color=SHARED.theme.helpText, parent=self) + # Project Name self.projName = QLineEdit(self) self.projName.setMaxLength(200) @@ -555,15 +560,6 @@ class _NewProjectForm(QWidget): self.projAuthor.setMaxLength(200) self.projAuthor.setPlaceholderText(self.tr("Optional")) - # Project Language - self.projLang = NComboBox(self) - for tag, language in CONFIG.listLanguages(CONFIG.LANG_PROJ): - self.projLang.addItem(language, tag) - - langIdx = self.projLang.findData(CONFIG.guiLocale) - if langIdx != -1: - self.projLang.setCurrentIndex(langIdx) - # Project Path self.projPath = QLineEdit(self) self.projPath.setReadOnly(True) @@ -609,7 +605,6 @@ class _NewProjectForm(QWidget): self.projectForm.setAlignment(Qt.AlignmentFlag.AlignLeft) self.projectForm.addRow(self.tr("Project Name"), self.projName) self.projectForm.addRow(self.tr("Author"), self.projAuthor) - self.projectForm.addRow(self.tr("Language"), self.projLang) self.projectForm.addRow(self.tr("Project Path"), self.pathBox) self.projectForm.addRow(self.tr("Prefill Project"), self.fillBox) @@ -683,6 +678,7 @@ class _NewProjectForm(QWidget): self.formBox = QVBoxLayout() self.formBox.addWidget(QLabel("{0}".format(self.tr("Create New Project")))) + self.formBox.addWidget(self.projHelp) self.formBox.addLayout(self.projectForm) self.formBox.addSpacing(sPx) self.formBox.addWidget(self.extraWidget) @@ -707,7 +703,6 @@ class _NewProjectForm(QWidget): return { "name": self.projName.text().strip(), "author": self.projAuthor.text().strip(), - "language": self.projLang.currentData(), "path": self.projPath.text(), "blank": self._fillMode == self.FILL_BLANK, "sample": self._fillMode == self.FILL_SAMPLE, diff --git a/tests/reference/coreTools_ProjectBuilderA_nwProject.nwx b/tests/reference/coreTools_ProjectBuilderA_nwProject.nwx index ee5eeeea..60c0fce3 100644 --- a/tests/reference/coreTools_ProjectBuilderA_nwProject.nwx +++ b/tests/reference/coreTools_ProjectBuilderA_nwProject.nwx @@ -1,12 +1,12 @@ - + Test Project A Jane Doe yes - None + en_GB None None diff --git a/tests/reference/coreTools_ProjectBuilderB_nwProject.nwx b/tests/reference/coreTools_ProjectBuilderB_nwProject.nwx index 209c7809..86980406 100644 --- a/tests/reference/coreTools_ProjectBuilderB_nwProject.nwx +++ b/tests/reference/coreTools_ProjectBuilderB_nwProject.nwx @@ -1,12 +1,12 @@ - + Test Project B Jane Doe yes - None + en_GB None None diff --git a/tests/test_core/test_core_coretools.py b/tests/test_core/test_core_coretools.py index 3c03e048..2309bd99 100644 --- a/tests/test_core/test_core_coretools.py +++ b/tests/test_core/test_core_coretools.py @@ -509,7 +509,6 @@ def testCoreTools_ProjectBuilderCopyPlain(monkeypatch, caplog, mockGUI, prjLipsu data = { "name": "Test Project", "author": "Jane Doe", - "language": "en_US", "path": dstPath, "template": srcPath, } @@ -556,9 +555,9 @@ def testCoreTools_ProjectBuilderCopyPlain(monkeypatch, caplog, mockGUI, prjLipsu assert srcProject.data.author == "lipsum.com" assert dstProject.data.author == "Jane Doe" - # Language should be different + # Language should be the same assert srcProject.data.language == "en_GB" - assert dstProject.data.language == "en_US" + assert dstProject.data.language == "en_GB" # Counts should be more or less zeroed assert dstProject.data.saveCount < 5 @@ -634,9 +633,9 @@ def testCoreTools_ProjectBuilderCopyZipped(monkeypatch, caplog, mockGUI, fncPath assert srcProject.data.author == "Jane Doe" assert dstProject.data.author == "Jane Doe" - # Language should be different + # Language should be the same assert srcProject.data.language is None - assert dstProject.data.language == "en_US" + assert dstProject.data.language is None # Counts should be more or less zeroed assert dstProject.data.saveCount < 5