aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2020-01-21 15:20:02 +0100
committerhjk <hjk@qt.io>2020-01-22 11:34:05 +0000
commit8da309f6a58ebde6ded2a7603ee033cf999a34f3 (patch)
tree72f49d3421762edab2b9c8cb6a7e4a2228dd104b
parentf5d4b65931d0bd80d19f573d5ee32eb6dd94045a (diff)
TextEditor: Simplify DisplaySettingsPage creation
Change-Id: I082db19c8b88d1fa21690339d2cb7dc2728e0d44 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
-rw-r--r--src/plugins/texteditor/displaysettingspage.cpp32
-rw-r--r--src/plugins/texteditor/displaysettingspage.h10
-rw-r--r--src/plugins/texteditor/texteditorsettings.cpp16
3 files changed, 21 insertions, 37 deletions
diff --git a/src/plugins/texteditor/displaysettingspage.cpp b/src/plugins/texteditor/displaysettingspage.cpp
index d2c07f08f6..58890c14c7 100644
--- a/src/plugins/texteditor/displaysettingspage.cpp
+++ b/src/plugins/texteditor/displaysettingspage.cpp
@@ -33,36 +33,32 @@
#include <coreplugin/icore.h>
#include <QPointer>
-#include <QTextStream>
-using namespace TextEditor;
+namespace TextEditor {
struct DisplaySettingsPage::DisplaySettingsPagePrivate
{
- explicit DisplaySettingsPagePrivate(const DisplaySettingsPageParameters &p);
+ DisplaySettingsPagePrivate();
- const DisplaySettingsPageParameters m_parameters;
QPointer<QWidget> m_widget;
Internal::Ui::DisplaySettingsPage *m_page = nullptr;
DisplaySettings m_displaySettings;
MarginSettings m_marginSettings;
+ QString m_settingsPrefix;
};
-DisplaySettingsPage::DisplaySettingsPagePrivate::DisplaySettingsPagePrivate
- (const DisplaySettingsPageParameters &p)
- : m_parameters(p)
+DisplaySettingsPage::DisplaySettingsPagePrivate::DisplaySettingsPagePrivate()
{
- m_displaySettings.fromSettings(m_parameters.settingsPrefix, Core::ICore::settings());
- m_marginSettings.fromSettings(m_parameters.settingsPrefix, Core::ICore::settings());
+ m_settingsPrefix = QLatin1String("text");
+ m_displaySettings.fromSettings(m_settingsPrefix, Core::ICore::settings());
+ m_marginSettings.fromSettings(m_settingsPrefix, Core::ICore::settings());
}
-DisplaySettingsPage::DisplaySettingsPage(const DisplaySettingsPageParameters &p,
- QObject *parent)
- : Core::IOptionsPage(parent),
- d(new DisplaySettingsPagePrivate(p))
+DisplaySettingsPage::DisplaySettingsPage()
+ : d(new DisplaySettingsPagePrivate)
{
- setId(p.id);
- setDisplayName(p.displayName);
+ setId(Constants::TEXT_EDITOR_DISPLAY_SETTINGS);
+ setDisplayName(tr("Display"));
setCategory(TextEditor::Constants::TEXT_EDITOR_SETTINGS_CATEGORY);
setDisplayCategory(QCoreApplication::translate("TextEditor", "Text Editor"));
setCategoryIconPath(TextEditor::Constants::TEXT_EDITOR_SETTINGS_CATEGORY_ICON_PATH);
@@ -180,15 +176,17 @@ void DisplaySettingsPage::setDisplaySettings(const DisplaySettings &newDisplaySe
{
if (newDisplaySettings != d->m_displaySettings) {
d->m_displaySettings = newDisplaySettings;
- d->m_displaySettings.toSettings(d->m_parameters.settingsPrefix, Core::ICore::settings());
+ d->m_displaySettings.toSettings(d->m_settingsPrefix, Core::ICore::settings());
emit displaySettingsChanged(newDisplaySettings);
}
if (newMarginSettings != d->m_marginSettings) {
d->m_marginSettings = newMarginSettings;
- d->m_marginSettings.toSettings(d->m_parameters.settingsPrefix, Core::ICore::settings());
+ d->m_marginSettings.toSettings(d->m_settingsPrefix, Core::ICore::settings());
emit marginSettingsChanged(newMarginSettings);
}
}
+
+} // TextEditor
diff --git a/src/plugins/texteditor/displaysettingspage.h b/src/plugins/texteditor/displaysettingspage.h
index a488810762..b01aad4806 100644
--- a/src/plugins/texteditor/displaysettingspage.h
+++ b/src/plugins/texteditor/displaysettingspage.h
@@ -34,20 +34,12 @@ namespace TextEditor {
class DisplaySettings;
class MarginSettings;
-class DisplaySettingsPageParameters
-{
-public:
- Core::Id id;
- QString displayName;
- QString settingsPrefix;
-};
-
class DisplaySettingsPage : public Core::IOptionsPage
{
Q_OBJECT
public:
- DisplaySettingsPage(const DisplaySettingsPageParameters &p, QObject *parent);
+ DisplaySettingsPage();
~DisplaySettingsPage() override;
// IOptionsPage
diff --git a/src/plugins/texteditor/texteditorsettings.cpp b/src/plugins/texteditor/texteditorsettings.cpp
index b22e088764..ad08d03c44 100644
--- a/src/plugins/texteditor/texteditorsettings.cpp
+++ b/src/plugins/texteditor/texteditorsettings.cpp
@@ -65,7 +65,7 @@ class TextEditorSettingsPrivate
public:
FontSettingsPage *m_fontSettingsPage;
BehaviorSettingsPage *m_behaviorSettingsPage;
- DisplaySettingsPage *m_displaySettingsPage;
+ DisplaySettingsPage m_displaySettingsPage;
HighlighterSettingsPage m_highlighterSettingsPage;
SnippetsSettingsPage m_snippetsSettingsPage;
CompletionSettingsPage m_completionSettingsPage;
@@ -357,12 +357,6 @@ TextEditorSettings::TextEditorSettings()
behaviorSettingsPageParameters.settingsPrefix = QLatin1String("text");
d->m_behaviorSettingsPage = new BehaviorSettingsPage(behaviorSettingsPageParameters, this);
- DisplaySettingsPageParameters displaySettingsPageParameters;
- displaySettingsPageParameters.id = Constants::TEXT_EDITOR_DISPLAY_SETTINGS;
- displaySettingsPageParameters.displayName = tr("Display");
- displaySettingsPageParameters.settingsPrefix = QLatin1String("text");
- d->m_displaySettingsPage = new DisplaySettingsPage(displaySettingsPageParameters, this);
-
auto updateGeneralMessagesFontSettings = []() {
Core::MessageManager::setFont(d->m_fontSettingsPage->fontSettings().font());
};
@@ -386,9 +380,9 @@ TextEditorSettings::TextEditorSettings()
updateGeneralMessagesBehaviorSettings();
connect(d->m_behaviorSettingsPage, &BehaviorSettingsPage::extraEncodingSettingsChanged,
this, &TextEditorSettings::extraEncodingSettingsChanged);
- connect(d->m_displaySettingsPage, &DisplaySettingsPage::marginSettingsChanged,
+ connect(&d->m_displaySettingsPage, &DisplaySettingsPage::marginSettingsChanged,
this, &TextEditorSettings::marginSettingsChanged);
- connect(d->m_displaySettingsPage, &DisplaySettingsPage::displaySettingsChanged,
+ connect(&d->m_displaySettingsPage, &DisplaySettingsPage::displaySettingsChanged,
this, &TextEditorSettings::displaySettingsChanged);
auto updateCamelCaseNavigation = [] {
@@ -433,12 +427,12 @@ const BehaviorSettings &TextEditorSettings::behaviorSettings()
const MarginSettings &TextEditorSettings::marginSettings()
{
- return d->m_displaySettingsPage->marginSettings();
+ return d->m_displaySettingsPage.marginSettings();
}
const DisplaySettings &TextEditorSettings::displaySettings()
{
- return d->m_displaySettingsPage->displaySettings();
+ return d->m_displaySettingsPage.displaySettings();
}
const CompletionSettings &TextEditorSettings::completionSettings()