Remove the need to create ISnippetProvider subclasses

Change-Id: I1810aaa945136d9726a66dad41377429a6adc8e1
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Eike Ziller
2017-04-24 15:52:04 +02:00
parent 46b7701398
commit 9443f7104b
49 changed files with 163 additions and 629 deletions

View File

@@ -28,7 +28,7 @@
#include "qmljstoolsconstants.h"
#include "qmljsindenter.h"
#include <texteditor/simplecodestylepreferences.h>
#include <texteditor/snippets/isnippetprovider.h>
#include <texteditor/snippets/snippetprovider.h>
#include <extensionsystem/pluginmanager.h>
#include <qmljseditor/qmljseditorconstants.h>
#include <QLayout>
@@ -86,10 +86,10 @@ TextEditor::Indenter *QmlJSCodeStylePreferencesFactory::createIndenter() const
return new QmlJSEditor::Internal::Indenter();
}
TextEditor::ISnippetProvider *QmlJSCodeStylePreferencesFactory::snippetProvider() const
TextEditor::SnippetProvider *QmlJSCodeStylePreferencesFactory::snippetProvider() const
{
return ExtensionSystem::PluginManager::getObject<TextEditor::ISnippetProvider>(
[](TextEditor::ISnippetProvider *provider) {
return ExtensionSystem::PluginManager::getObject<TextEditor::SnippetProvider>(
[](TextEditor::SnippetProvider *provider) {
return provider->groupId() == QLatin1String(QmlJSEditor::Constants::QML_SNIPPETS_GROUP_ID);
});
}

View File

@@ -40,7 +40,7 @@ public:
QWidget *createEditor(TextEditor::ICodeStylePreferences *settings,
QWidget *parent) const;
TextEditor::Indenter *createIndenter() const;
TextEditor::ISnippetProvider *snippetProvider() const;
TextEditor::SnippetProvider *snippetProvider() const;
QString previewText() const;
};

View File

@@ -30,7 +30,7 @@
#include "qmljsindenter.h"
#include "qmljsqtstylecodeformatter.h"
#include <texteditor/snippets/isnippetprovider.h>
#include <texteditor/snippets/snippetprovider.h>
#include <texteditor/tabsettings.h>
#include <texteditor/simplecodestylepreferences.h>
#include <texteditor/displaysettings.h>
@@ -56,14 +56,6 @@ QmlJSCodeStylePreferencesWidget::QmlJSCodeStylePreferencesWidget(QWidget *parent
{
m_ui->setupUi(this);
ISnippetProvider *provider = ExtensionSystem::PluginManager::getObject<ISnippetProvider>(
[](ISnippetProvider *provider) {
return provider->groupId() == QLatin1String(QmlJSEditor::Constants::QML_SNIPPETS_GROUP_ID);
});
if (provider)
provider->decorateEditor(m_ui->previewTextEdit);
decorateEditor(TextEditorSettings::fontSettings());
connect(TextEditorSettings::instance(), &TextEditorSettings::fontSettingsChanged,
this, &QmlJSCodeStylePreferencesWidget::decorateEditor);
@@ -91,8 +83,8 @@ void QmlJSCodeStylePreferencesWidget::setPreferences(ICodeStylePreferences *pref
void QmlJSCodeStylePreferencesWidget::decorateEditor(const FontSettings &fontSettings)
{
const ISnippetProvider *provider = ExtensionSystem::PluginManager::getObject<ISnippetProvider>(
[](ISnippetProvider *current) {
const SnippetProvider *provider = ExtensionSystem::PluginManager::getObject<SnippetProvider>(
[](SnippetProvider *current) {
return current->groupId() == QLatin1String(QmlJSEditor::Constants::QML_SNIPPETS_GROUP_ID);
});