aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmljseditor
diff options
context:
space:
mode:
authorThomas Hartmann <Thomas.Hartmann@digia.com>2014-03-03 16:03:35 +0100
committerThomas Hartmann <Thomas.Hartmann@digia.com>2014-03-04 13:50:14 +0100
commit3ee64ed69938cce93a7cfd90926f7d8b91782366 (patch)
treebc4313cb97a624e459cba4172ba6d66f863d1d0a /src/plugins/qmljseditor
parent92032b961539da00106a9f5bc2097c97c3820027 (diff)
QmlJS.QtQuickToolBar: Using proper indenter
Task-number: QTCREATORBUG-11334 Change-Id: I65b3f95bdc5a57971854fb8bce620a275f646ff5 Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Diffstat (limited to 'src/plugins/qmljseditor')
-rw-r--r--src/plugins/qmljseditor/quicktoolbar.cpp36
-rw-r--r--src/plugins/qmljseditor/quicktoolbar.h2
2 files changed, 19 insertions, 19 deletions
diff --git a/src/plugins/qmljseditor/quicktoolbar.cpp b/src/plugins/qmljseditor/quicktoolbar.cpp
index 115e091a643..412d133616a 100644
--- a/src/plugins/qmljseditor/quicktoolbar.cpp
+++ b/src/plugins/qmljseditor/quicktoolbar.cpp
@@ -37,7 +37,7 @@
#include <qmljs/qmljsdocument.h>
#include <qmljs/qmljspropertyreader.h>
#include <qmljs/qmljsrewriter.h>
-#include <qmljs/qmljsindenter.h>
+#include <qmljstools/qmljsindenter.h>
#include <qmljs/qmljscontext.h>
#include <qmljs/qmljsbind.h>
#include <qmljs/qmljsscopebuilder.h>
@@ -327,24 +327,7 @@ void QuickToolBar::setProperty(const QString &propertyName, const QVariant &valu
m_editor->convertPosition(changeSetPos, &line, &column); //get line
m_editor->convertPosition(changeSetPos + changeSetLength, &endLine, &column); //get line
- if (line > 0) {
- TextEditor::TabSettings ts = m_editor->baseTextDocument()->tabSettings();
- QmlJSIndenter indenter;
- indenter.setTabSize(ts.m_tabSize);
- indenter.setIndentSize(ts.m_indentSize);
-
- for (int i=line;i<=endLine;i++) {
- QTextBlock start = m_editor->baseTextDocument()->document()->findBlockByNumber(i);
- QTextBlock end = m_editor->baseTextDocument()->document()->findBlockByNumber(i);
-
- if (end.isValid()) {
- const int indent = indenter.indentForBottomLine(m_editor->baseTextDocument()
- ->document()->begin(),
- end.next(), QChar::Null);
- ts.indentLine(start, indent);
- }
- }
- }
+ indentLines(line, endLine);
tc.endEditBlock();
}
}
@@ -439,6 +422,21 @@ void QuickToolBar::onEnabledChanged(bool b)
settings.set();
}
+void QuickToolBar::indentLines(int startLine, int endLine)
+{
+ if (startLine > 0) {
+ TextEditor::TabSettings tabSettings = m_editor->baseTextDocument()->tabSettings();
+ for (int i = startLine; i <= endLine; i++) {
+ QTextBlock start = m_editor->editorWidget()->document()->findBlockByNumber(i);
+
+ if (start.isValid()) {
+ QmlJSEditor::Internal::Indenter indenterMy;
+ indenterMy.indentBlock(m_editor->editorWidget()->document(), start, QChar::Null, tabSettings);
+ }
+ }
+ }
+}
+
ContextPaneWidget* QuickToolBar::contextWidget()
{
if (m_widget.isNull()) { //lazily recreate widget
diff --git a/src/plugins/qmljseditor/quicktoolbar.h b/src/plugins/qmljseditor/quicktoolbar.h
index 37a4f407ffe..46e10abb815 100644
--- a/src/plugins/qmljseditor/quicktoolbar.h
+++ b/src/plugins/qmljseditor/quicktoolbar.h
@@ -62,6 +62,8 @@ public slots:
void onEnabledChanged(bool);
private:
+ void indentLines(int startLine, int endLine);
+
QmlEditorWidgets::ContextPaneWidget* contextWidget();
QPointer<QmlEditorWidgets::ContextPaneWidget> m_widget;
QmlJS::Document::Ptr m_doc;