summaryrefslogtreecommitdiff
path: root/src/plugins/qmljstools/qmljstoolssettings.cpp
diff options
context:
space:
mode:
authorJarek Kobus <jkobus@trolltech.com>2011-05-25 08:50:01 +0200
committerChristian Kamm <christian.d.kamm@nokia.com>2011-05-25 09:41:35 +0200
commit934a8238d4937f5bcf1dd22692c07d455af34506 (patch)
tree02d5719b6bb7955e69756714bceb6a753a49420c /src/plugins/qmljstools/qmljstoolssettings.cpp
parentf950b8d7c7812c7a5916676fbd5f9c2edf61118f (diff)
downloadqt-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.cpp66
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;
+}
+
+