diff options
author | Jarek Kobus <jkobus@trolltech.com> | 2011-05-25 08:50:01 +0200 |
---|---|---|
committer | Christian Kamm <christian.d.kamm@nokia.com> | 2011-05-25 09:41:35 +0200 |
commit | 934a8238d4937f5bcf1dd22692c07d455af34506 (patch) | |
tree | 02d5719b6bb7955e69756714bceb6a753a49420c /src/plugins/qmljstools/qmljstoolssettings.cpp | |
parent | f950b8d7c7812c7a5916676fbd5f9c2edf61118f (diff) | |
download | qt-creator-934a8238d4937f5bcf1dd22692c07d455af34506.tar.gz |
Implement qml tab settings
Change-Id: I0b7365b5b3d7538f2b4a8c5eaff3420f448dd5be
Reviewed-on: http://codereview.qt.nokia.com/99
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
Diffstat (limited to 'src/plugins/qmljstools/qmljstoolssettings.cpp')
-rw-r--r-- | src/plugins/qmljstools/qmljstoolssettings.cpp | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/src/plugins/qmljstools/qmljstoolssettings.cpp b/src/plugins/qmljstools/qmljstoolssettings.cpp new file mode 100644 index 0000000000..503f8f03f5 --- /dev/null +++ b/src/plugins/qmljstools/qmljstoolssettings.cpp @@ -0,0 +1,66 @@ +#include "qmljstoolssettings.h" +#include "qmljstoolsconstants.h" + +#include <texteditor/texteditorsettings.h> +#include <texteditor/tabpreferences.h> + +#include <utils/qtcassert.h> +#include <coreplugin/icore.h> +#include <QtCore/QSettings> + +static const char *idKey = "QmlJSGlobal"; + +using namespace QmlJSTools; + +namespace QmlJSTools { +namespace Internal { + +class QmlJSToolsSettingsPrivate +{ +public: + TextEditor::TabPreferences *m_tabPreferences; +}; + +} // namespace Internal +} // namespace QmlJSTools + +QmlJSToolsSettings *QmlJSToolsSettings::m_instance = 0; + +QmlJSToolsSettings::QmlJSToolsSettings(QObject *parent) + : QObject(parent) + , m_d(new Internal::QmlJSToolsSettingsPrivate) +{ + QTC_ASSERT(!m_instance, return); + m_instance = this; + + if (const QSettings *s = Core::ICore::instance()->settings()) { + TextEditor::TextEditorSettings *textEditorSettings = TextEditor::TextEditorSettings::instance(); + m_d->m_tabPreferences + = new TextEditor::TabPreferences(QList<TextEditor::IFallbackPreferences *>() + << textEditorSettings->tabPreferences(), this); + m_d->m_tabPreferences->setCurrentFallback(textEditorSettings->tabPreferences()); + m_d->m_tabPreferences->fromSettings(QmlJSTools::Constants::QML_JS_SETTINGS_ID, s); + m_d->m_tabPreferences->setDisplayName(tr("global QML")); + m_d->m_tabPreferences->setId(idKey); + textEditorSettings->registerLanguageTabPreferences(QmlJSTools::Constants::QML_JS_SETTINGS_ID, m_d->m_tabPreferences); + } +} + +QmlJSToolsSettings::~QmlJSToolsSettings() +{ + delete m_d; + + m_instance = 0; +} + +QmlJSToolsSettings *QmlJSToolsSettings::instance() +{ + return m_instance; +} + +TextEditor::TabPreferences *QmlJSToolsSettings::tabPreferences() const +{ + return m_d->m_tabPreferences; +} + + |