summaryrefslogtreecommitdiff
path: root/src/plugins/qmljseditor/qmljseditor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmljseditor/qmljseditor.cpp')
-rw-r--r--src/plugins/qmljseditor/qmljseditor.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp
index 0f3c36f7fd..f1b4b2045e 100644
--- a/src/plugins/qmljseditor/qmljseditor.cpp
+++ b/src/plugins/qmljseditor/qmljseditor.cpp
@@ -1692,3 +1692,31 @@ TextEditor::IAssistInterface *QmlJSTextEditorWidget::createAssistInterface(
}
return 0;
}
+
+QString QmlJSTextEditorWidget::foldReplacementText(const QTextBlock &block) const
+{
+ int curlyIndex = block.text().indexOf(QLatin1Char('{'));
+
+ if ((curlyIndex == -1) || !m_semanticInfo.isValid())
+ return TextEditor::BaseTextEditorWidget::foldReplacementText(block);
+
+ int pos = block.position() + curlyIndex;
+ Node *node = m_semanticInfo.rangeAt(pos);
+
+ if (node) {
+ UiObjectInitializer *objectInitializer = 0;
+ if (UiObjectDefinition *def = cast<UiObjectDefinition *>(node))
+ objectInitializer = def->initializer;
+ else if (UiObjectBinding *binding = cast<UiObjectBinding *>(node))
+ objectInitializer = binding->initializer;
+
+ // Get the id value, if it exists, and display it
+ if (objectInitializer) {
+ QString objectId = idOfObject(objectInitializer);
+ if (!objectId.isEmpty())
+ return QLatin1String("id: ") + objectId + QLatin1String("...");
+ }
+ }
+
+ return TextEditor::BaseTextEditorWidget::foldReplacementText(block);
+}