From 3746ff4e7617aa799d098c1bf3f739f92e426c92 Mon Sep 17 00:00:00 2001 From: Sergey Vasiliev Date: Wed, 15 Mar 2006 17:38:36 +0300 Subject: [PATCH] provided navigation in DomCollection Control --- .../src/com/intellij/util/xml/ui/DomCollectionControl.java | 13 ++++++++++++- source/com/intellij/util/xml/ui/PerspectiveFileEditor.java | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java b/openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java index 5c16335732..cda4f9765b 100644 --- a/openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java +++ b/openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java @@ -92,11 +92,21 @@ public class DomCollectionControl implements DomUIControl public boolean canNavigate(DomElement element) { - return false; + final Class aClass = (Class)DomUtil.getRawType(myChildDescription.getType()); + + final DomElement domElement = element.getParentOfType(aClass, false); + + return domElement != null && myData.contains(domElement); } public void navigate(DomElement element) { + final Class aClass = (Class)DomUtil.getRawType(myChildDescription.getType()); + final DomElement domElement = element.getParentOfType(aClass, false); + int index = myData.indexOf(domElement); + if (index < 0) index = 0; + + myCollectionPanel.getTable().setRowSelectionInterval(index, index); } protected void initialize(final DomCollectionPanel boundComponent) { @@ -381,4 +391,5 @@ public class DomCollectionControl implements DomUIControl } } + } diff --git a/source/com/intellij/util/xml/ui/PerspectiveFileEditor.java b/source/com/intellij/util/xml/ui/PerspectiveFileEditor.java index e725ebd33e..9e7fe8315b 100644 --- a/source/com/intellij/util/xml/ui/PerspectiveFileEditor.java +++ b/source/com/intellij/util/xml/ui/PerspectiveFileEditor.java @@ -138,4 +138,5 @@ abstract public class PerspectiveFileEditor extends UserDataHolderBase implement } + } -- 2.11.4.GIT