summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp
diff options
context:
space:
mode:
authorThomas Hartmann <Thomas.Hartmann@nokia.com>2010-09-30 14:25:20 +0200
committerThomas Hartmann <Thomas.Hartmann@nokia.com>2010-09-30 17:43:19 +0200
commit4c185a9ac4477686f01af42534c7d6f28f8598df (patch)
tree4995d5a86fffde737c6f4845387126aeab32288d /src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp
parent2d5049645c502b20c2a8c4c2ce800319d067cbd2 (diff)
downloadqt-creator-4c185a9ac4477686f01af42534c7d6f28f8598df.tar.gz
QmlDesigner.model: rename id is now a proper refactoring operation
I an id is now changed in the navaigator or property editor, we now use the qmljseditor to properly refactor. Also I changed dynamic_cast to qobject_cast Reviewed-by: Erik Verbruggen
Diffstat (limited to 'src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp')
-rw-r--r--src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp b/src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp
index 3127be6ead..113ee3b471 100644
--- a/src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp
+++ b/src/plugins/qmldesigner/designercore/model/basetexteditmodifier.cpp
@@ -32,6 +32,7 @@
#include <extensionsystem/pluginmanager.h>
#include <qmljs/qmljsdocument.h>
#include <qmljs/qmljsmodelmanagerinterface.h>
+#include <qmljseditor/qmljseditor.h>
#include <texteditor/tabsettings.h>
using namespace QmlDesigner;
@@ -46,7 +47,7 @@ void BaseTextEditModifier::indent(int offset, int length)
if (length == 0 || offset < 0 || offset + length >= text().length())
return;
- if (TextEditor::BaseTextEditor *bte = dynamic_cast<TextEditor::BaseTextEditor*>(plainTextEdit())) {
+ if (TextEditor::BaseTextEditor *bte = qobject_cast<TextEditor::BaseTextEditor*>(plainTextEdit())) {
// find the applicable block:
QTextDocument *doc = bte->document();
QTextCursor tc(doc);
@@ -60,13 +61,23 @@ void BaseTextEditModifier::indent(int offset, int length)
int BaseTextEditModifier::indentDepth() const
{
- if (TextEditor::BaseTextEditor *bte = dynamic_cast<TextEditor::BaseTextEditor*>(plainTextEdit())) {
+ if (TextEditor::BaseTextEditor *bte = qobject_cast<TextEditor::BaseTextEditor*>(plainTextEdit())) {
return bte->tabSettings().m_indentSize;
} else {
return 0;
}
}
+bool BaseTextEditModifier::renameId(const QString &oldId, const QString &newId)
+{
+ if (QmlJSEditor::Internal::QmlJSTextEditor *qmljse = qobject_cast<QmlJSEditor::Internal::QmlJSTextEditor*>(plainTextEdit())) {
+ qmljse->renameId(oldId, newId);
+ return true;
+ } else {
+ return false;
+ }
+}
+
namespace {
static inline QmlJS::ModelManagerInterface *getModelManager()
{