diff options
author | Thomas Hartmann <Thomas.Hartmann@digia.com> | 2014-03-03 16:03:35 +0100 |
---|---|---|
committer | Thomas Hartmann <Thomas.Hartmann@digia.com> | 2014-03-04 13:50:14 +0100 |
commit | 3ee64ed69938cce93a7cfd90926f7d8b91782366 (patch) | |
tree | bc4313cb97a624e459cba4172ba6d66f863d1d0a /src/plugins/qmljseditor | |
parent | 92032b961539da00106a9f5bc2097c97c3820027 (diff) | |
download | qt-creator-3ee64ed69938cce93a7cfd90926f7d8b91782366.tar.gz |
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.cpp | 36 | ||||
-rw-r--r-- | src/plugins/qmljseditor/quicktoolbar.h | 2 |
2 files changed, 19 insertions, 19 deletions
diff --git a/src/plugins/qmljseditor/quicktoolbar.cpp b/src/plugins/qmljseditor/quicktoolbar.cpp index 115e091a64..412d133616 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 37a4f407ff..46e10abb81 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; |