From a43619386b064196521cd8f38584e2c9bcc552cc Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 10 Oct 2022 11:15:12 +0200 Subject: [PATCH] Nim: Inline nimcodestylepreferenceswidget.ui Change-Id: I4590e6666bd37b428c443ef78731202100040a58 Reviewed-by: Alessandro Portale --- src/plugins/nim/CMakeLists.txt | 2 +- src/plugins/nim/nim.qbs | 2 +- .../nimcodestylepreferencesfactory.cpp | 4 - .../nimcodestylepreferenceswidget.cpp | 53 +++++++----- .../settings/nimcodestylepreferenceswidget.h | 11 +-- .../settings/nimcodestylepreferenceswidget.ui | 81 ------------------- .../nim/settings/nimcodestylesettingspage.cpp | 1 + 7 files changed, 39 insertions(+), 115 deletions(-) delete mode 100644 src/plugins/nim/settings/nimcodestylepreferenceswidget.ui diff --git a/src/plugins/nim/CMakeLists.txt b/src/plugins/nim/CMakeLists.txt index b658568b9c3..a7320e46184 100644 --- a/src/plugins/nim/CMakeLists.txt +++ b/src/plugins/nim/CMakeLists.txt @@ -25,7 +25,7 @@ add_qtc_plugin(Nim project/nimtoolchain.cpp project/nimtoolchain.h project/nimtoolchainfactory.cpp project/nimtoolchainfactory.h settings/nimcodestylepreferencesfactory.cpp settings/nimcodestylepreferencesfactory.h - settings/nimcodestylepreferenceswidget.cpp settings/nimcodestylepreferenceswidget.h settings/nimcodestylepreferenceswidget.ui + settings/nimcodestylepreferenceswidget.cpp settings/nimcodestylepreferenceswidget.h settings/nimcodestylesettingspage.cpp settings/nimcodestylesettingspage.h settings/nimsettings.cpp settings/nimsettings.h suggest/client.cpp suggest/client.h diff --git a/src/plugins/nim/nim.qbs b/src/plugins/nim/nim.qbs index 171b853c56a..42bc669518a 100644 --- a/src/plugins/nim/nim.qbs +++ b/src/plugins/nim/nim.qbs @@ -60,7 +60,7 @@ QtcPlugin { prefix: "settings/" files: [ "nimcodestylepreferencesfactory.h", "nimcodestylepreferencesfactory.cpp", - "nimcodestylepreferenceswidget.h", "nimcodestylepreferenceswidget.cpp", "nimcodestylepreferenceswidget.ui", + "nimcodestylepreferenceswidget.h", "nimcodestylepreferenceswidget.cpp", "nimcodestylesettingspage.h", "nimcodestylesettingspage.cpp", "nimsettings.h", "nimsettings.cpp", ] diff --git a/src/plugins/nim/settings/nimcodestylepreferencesfactory.cpp b/src/plugins/nim/settings/nimcodestylepreferencesfactory.cpp index 1930a25f42d..f17f4c7ad30 100644 --- a/src/plugins/nim/settings/nimcodestylepreferencesfactory.cpp +++ b/src/plugins/nim/settings/nimcodestylepreferencesfactory.cpp @@ -11,9 +11,6 @@ #include -#include -#include - using namespace TextEditor; namespace Nim { @@ -44,7 +41,6 @@ TextEditor::CodeStyleEditorWidget *NimCodeStylePreferencesFactory::createEditor( { Q_UNUSED(project) auto result = new NimCodeStylePreferencesWidget(preferences, parent); - result->layout()->setContentsMargins(0, 0, 0, 0); return result; } diff --git a/src/plugins/nim/settings/nimcodestylepreferenceswidget.cpp b/src/plugins/nim/settings/nimcodestylepreferenceswidget.cpp index 1817d0f01a6..fdce33cc9c6 100644 --- a/src/plugins/nim/settings/nimcodestylepreferenceswidget.cpp +++ b/src/plugins/nim/settings/nimcodestylepreferenceswidget.cpp @@ -2,20 +2,25 @@ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 #include "nimcodestylepreferenceswidget.h" -#include "ui_nimcodestylepreferenceswidget.h" #include "../nimconstants.h" #include "../editor/nimeditorfactory.h" #include + #include #include #include +#include #include +#include +#include +#include #include #include #include -#include + +#include using namespace TextEditor; @@ -24,11 +29,22 @@ namespace Nim { NimCodeStylePreferencesWidget::NimCodeStylePreferencesWidget(ICodeStylePreferences *preferences, QWidget *parent) : TextEditor::CodeStyleEditorWidget(parent) , m_preferences(preferences) - , m_ui(new Ui::NimCodeStylePreferencesWidget()) { - m_ui->setupUi(this); - m_ui->tabPreferencesWidget->setPreferences(preferences); - m_ui->previewTextEdit->setPlainText(Nim::Constants::C_NIMCODESTYLEPREVIEWSNIPPET); + auto tabPreferencesWidget = new SimpleCodeStylePreferencesWidget; + tabPreferencesWidget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Preferred); + tabPreferencesWidget->setPreferences(preferences); + + m_previewTextEdit = new SnippetEditorWidget; + m_previewTextEdit->setPlainText(Nim::Constants::C_NIMCODESTYLEPREVIEWSNIPPET); + + using namespace Utils::Layouting; + Row { + Column { + tabPreferencesWidget, + st, + }, + m_previewTextEdit, + }.attachTo(this, WithoutMargins); decorateEditor(TextEditorSettings::fontSettings()); connect(TextEditorSettings::instance(), &TextEditorSettings::fontSettingsChanged, @@ -42,43 +58,38 @@ NimCodeStylePreferencesWidget::NimCodeStylePreferencesWidget(ICodeStylePreferenc updatePreview(); } -NimCodeStylePreferencesWidget::~NimCodeStylePreferencesWidget() -{ - delete m_ui; - m_ui = nullptr; -} +NimCodeStylePreferencesWidget::~NimCodeStylePreferencesWidget() = default; void NimCodeStylePreferencesWidget::decorateEditor(const FontSettings &fontSettings) { - m_ui->previewTextEdit->textDocument()->setFontSettings(fontSettings); - NimEditorFactory::decorateEditor(m_ui->previewTextEdit); + m_previewTextEdit->textDocument()->setFontSettings(fontSettings); + NimEditorFactory::decorateEditor(m_previewTextEdit); } void NimCodeStylePreferencesWidget::setVisualizeWhitespace(bool on) { - DisplaySettings displaySettings = m_ui->previewTextEdit->displaySettings(); + DisplaySettings displaySettings = m_previewTextEdit->displaySettings(); displaySettings.m_visualizeWhitespace = on; - m_ui->previewTextEdit->setDisplaySettings(displaySettings); + m_previewTextEdit->setDisplaySettings(displaySettings); } void NimCodeStylePreferencesWidget::updatePreview() { - QTextDocument *doc = m_ui->previewTextEdit->document(); + QTextDocument *doc = m_previewTextEdit->document(); const TabSettings &ts = m_preferences ? m_preferences->currentTabSettings() : TextEditorSettings::codeStyle()->tabSettings(); - m_ui->previewTextEdit->textDocument()->setTabSettings(ts); + m_previewTextEdit->textDocument()->setTabSettings(ts); QTextBlock block = doc->firstBlock(); - QTextCursor tc = m_ui->previewTextEdit->textCursor(); + QTextCursor tc = m_previewTextEdit->textCursor(); tc.beginEditBlock(); while (block.isValid()) { - m_ui->previewTextEdit->textDocument()->indenter()->indentBlock(block, QChar::Null, ts); + m_previewTextEdit->textDocument()->indenter()->indentBlock(block, QChar::Null, ts); block = block.next(); } tc.endEditBlock(); } -} // namespace Nim - +} // Nim diff --git a/src/plugins/nim/settings/nimcodestylepreferenceswidget.h b/src/plugins/nim/settings/nimcodestylepreferenceswidget.h index 34e401537fc..4a6f34a30f3 100644 --- a/src/plugins/nim/settings/nimcodestylepreferenceswidget.h +++ b/src/plugins/nim/settings/nimcodestylepreferenceswidget.h @@ -3,18 +3,15 @@ #pragma once -#include #include namespace TextEditor { -class ICodeStylePreferences; class FontSettings; -} +class SnippetEditorWidget; +} // TextEditor namespace Nim { -namespace Ui { class NimCodeStylePreferencesWidget; } - class NimCodeStylePreferencesWidget : public TextEditor::CodeStyleEditorWidget { Q_OBJECT @@ -29,7 +26,7 @@ private: void updatePreview(); TextEditor::ICodeStylePreferences *m_preferences; - Ui::NimCodeStylePreferencesWidget *m_ui; + TextEditor::SnippetEditorWidget *m_previewTextEdit; }; -} // namespace Nim +} // Nim diff --git a/src/plugins/nim/settings/nimcodestylepreferenceswidget.ui b/src/plugins/nim/settings/nimcodestylepreferenceswidget.ui deleted file mode 100644 index fc9f33e57aa..00000000000 --- a/src/plugins/nim/settings/nimcodestylepreferenceswidget.ui +++ /dev/null @@ -1,81 +0,0 @@ - - - Nim::NimCodeStylePreferencesWidget - - - - 0 - 0 - 138 - 112 - - - - - - - - - - - 0 - 0 - - - - - - - - import QtQuick 1.0 - -Rectangle { - width: 360 - height: 360 - Text { - anchors.centerIn: parent - text: "Hello World" - } - MouseArea { - anchors.fill: parent - onClicked: { - Qt.quit(); - } - } -} - - - - - - - - Qt::Vertical - - - - 20 - 267 - - - - - - - - - TextEditor::SimpleCodeStylePreferencesWidget - QWidget -
texteditor/simplecodestylepreferenceswidget.h
- 1 -
- - TextEditor::SnippetEditorWidget - QPlainTextEdit -
texteditor/snippets/snippeteditor.h
-
-
- - -
- diff --git a/src/plugins/nim/settings/nimcodestylesettingspage.cpp b/src/plugins/nim/settings/nimcodestylesettingspage.cpp index 9306b170b49..fe24473ec24 100644 --- a/src/plugins/nim/settings/nimcodestylesettingspage.cpp +++ b/src/plugins/nim/settings/nimcodestylesettingspage.cpp @@ -38,6 +38,7 @@ public: auto layout = new QVBoxLayout(this); layout->addWidget(editor); + layout->setContentsMargins(0, 0, 0, 0); } private: