Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkmoore2008-02-06 19:37:53 +0000
committerkmoore2008-02-06 19:37:53 +0000
commit78ee64ca79a7dee0709870eead816b70739c4093 (patch)
tree4bdfea285bae34ea02926c7995589792ecd64c3e /jpa/plugins
parentbaf6e3ce3fdc095a34d8eccf53a7ae3ef3fcd3ae (diff)
downloadwebtools.dali-78ee64ca79a7dee0709870eead816b70739c4093.tar.gz
webtools.dali-78ee64ca79a7dee0709870eead816b70739c4093.tar.xz
webtools.dali-78ee64ca79a7dee0709870eead816b70739c4093.zip
selection text range support, also created IJpaStructureNode interface
Diffstat (limited to 'jpa/plugins')
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/IJpaFile.java6
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/JpaFile.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaContextNode.java9
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaStructureNode.java33
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentAttribute.java2
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentType.java2
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/JpaContextNode.java8
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentAttribute.java7
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentType.java12
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappings.java3
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappingsImpl.java33
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlAttributeMapping.java11
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentAttribute.java12
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentType.java18
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlTypeMapping.java9
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/common/IJpaEObject.java6
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/AbstractJavaPersistentResource.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/JavaPersistentResource.java8
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/IJpaPlatformUi.java5
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/BaseJpaDetailsPage.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsPage.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsProvider.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/java/details/JavaDetailsProvider.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/platform/base/BaseJpaPlatformUi.java6
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/IJpaSelection.java6
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/JpaSelection.java13
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/TextEditorSelectionParticipant.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/JpaDetailsView.java43
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/structure/JpaStructurePage.java6
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/xml/details/XmlDetailsProvider.java4
30 files changed, 170 insertions, 120 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/IJpaFile.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/IJpaFile.java
index bf34e57bd3..c5640e22e0 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/IJpaFile.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/IJpaFile.java
@@ -11,7 +11,7 @@ package org.eclipse.jpt.core.internal;
import org.eclipse.core.resources.IFile;
import org.eclipse.jdt.core.ElementChangedEvent;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
/**
*
@@ -35,9 +35,9 @@ public interface IJpaFile extends IJpaNode
IResourceModel getResourceModel();
/**
- * Return the context node best represented by the location in the file
+ * Return the structure node best represented by the location in the file
*/
- IJpaContextNode contextNode(int textOffset);
+ IJpaStructureNode structureNode(int textOffset);
/**
* Forward the Java element changed event to the JPA file's content.
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/JpaFile.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/JpaFile.java
index 778a834504..027c6d6143 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/JpaFile.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/JpaFile.java
@@ -11,7 +11,7 @@ package org.eclipse.jpt.core.internal;
import org.eclipse.core.resources.IFile;
import org.eclipse.jdt.core.ElementChangedEvent;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
/**
*
@@ -49,7 +49,7 @@ public class JpaFile extends JpaNode implements IJpaFile
return resourceModel;
}
- public IJpaContextNode contextNode(int textOffset) {
+ public IJpaStructureNode structureNode(int textOffset) {
return null;
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaContextNode.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaContextNode.java
index 44d6c71bf9..619ac03975 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaContextNode.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaContextNode.java
@@ -11,7 +11,6 @@
package org.eclipse.jpt.core.internal.context.base;
import org.eclipse.jpt.core.internal.IJpaNode;
-import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.context.orm.EntityMappings;
import org.eclipse.jpt.core.internal.context.orm.XmlPersistentType;
@@ -28,13 +27,11 @@ public interface IJpaContextNode extends IJpaNode
//TODO interface for this
XmlPersistentType xmlPersistentType();
- ITextRange selectionTextRange();
/**
- * return the context node at the given offset. This context node
- * should be a *structural* context node, ie it should be available
- * in the structure view
+ * Return the structure node at the given offset. This node
+ * will be made available in the structure view
*/
- IJpaContextNode contextNode(int offset);
+ IJpaStructureNode structureNode(int offset);
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaStructureNode.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaStructureNode.java
new file mode 100644
index 0000000000..f5ef2b5054
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IJpaStructureNode.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Oracle.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Oracle - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.jpt.core.internal.context.base;
+
+import org.eclipse.jpt.core.internal.IJpaNode;
+import org.eclipse.jpt.core.internal.ITextRange;
+
+/**
+ * Implement this interface for objects that appear in the Structure view
+ * This is used by IJpaSelection to determine selection in the editor.
+ * Details pages are also provided for each IJpaStructureNode.
+ *
+ * I did not implement IJpaContextNode and I'm not even sure we should implement
+ * IJpaNode. It is possibly someone could want a structure node that is
+ * not actually a contextNode in the model.
+ */
+public interface IJpaStructureNode extends IJpaNode
+{
+ /**
+ * Return the text range do be used to select text in the editor
+ * corresponding to this node.
+ */
+ ITextRange selectionTextRange();
+
+}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentAttribute.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentAttribute.java
index fc79ea8804..f5c9229996 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentAttribute.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentAttribute.java
@@ -10,7 +10,7 @@
package org.eclipse.jpt.core.internal.context.base;
-public interface IPersistentAttribute extends IJpaContextNode
+public interface IPersistentAttribute extends IJpaContextNode, IJpaStructureNode
{
String getName();
String NAME_PROPERTY = "nameProperty";
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentType.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentType.java
index f20708e42f..b2103c183f 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentType.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/IPersistentType.java
@@ -13,7 +13,7 @@ import java.util.Iterator;
import java.util.ListIterator;
-public interface IPersistentType extends IJpaContextNode
+public interface IPersistentType extends IJpaContextNode, IJpaStructureNode
{
String getName();
String NAME_PROPERTY = "nameProperty";
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/JpaContextNode.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/JpaContextNode.java
index f3b01275b4..65f3956dc7 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/JpaContextNode.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/base/JpaContextNode.java
@@ -11,9 +11,7 @@
package org.eclipse.jpt.core.internal.context.base;
import org.eclipse.jpt.core.internal.IJpaNode;
-import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.JpaNode;
-import org.eclipse.jpt.core.internal.SimpleTextRange;
import org.eclipse.jpt.core.internal.context.orm.EntityMappings;
import org.eclipse.jpt.core.internal.context.orm.XmlPersistentType;
import org.eclipse.jpt.core.internal.platform.base.IJpaBaseContextFactory;
@@ -60,11 +58,7 @@ public abstract class JpaContextNode extends JpaNode
return ((IJpaContextNode) parent()).xmlPersistentType();
}
- public ITextRange selectionTextRange() {
- return new SimpleTextRange(0, 0, 0);
- }
-
- public IJpaContextNode contextNode(int offset) {
+ public IJpaStructureNode structureNode(int offset) {
return null;
}
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentAttribute.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentAttribute.java
index ab1a9ed7f4..e798840cdf 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentAttribute.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentAttribute.java
@@ -195,8 +195,13 @@ public class JavaPersistentAttribute extends JavaContextModel
}
public ITextRange selectionTextRange(CompilationUnit astRoot) {
- return this.persistentAttributeResource.textRange(astRoot);
+ return this.persistentAttributeResource.nameTextRange(astRoot);
+ }
+
+ public ITextRange selectionTextRange() {
+ return selectionTextRange(this.persistentAttributeResource.getMember().astRoot());
}
+
public void update(JavaPersistentAttributeResource persistentAttributeResource) {
this.persistentAttributeResource = persistentAttributeResource;
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentType.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentType.java
index f4ae666f40..ed2414ce7b 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentType.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaPersistentType.java
@@ -19,6 +19,7 @@ import org.eclipse.jdt.core.dom.CompilationUnit;
import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.context.base.AccessType;
import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.IPersistentAttribute;
import org.eclipse.jpt.core.internal.context.base.IPersistentType;
import org.eclipse.jpt.core.internal.resource.java.Annotation;
@@ -229,7 +230,7 @@ public class JavaPersistentType extends JavaContextModel implements IJavaPersist
}
@Override
- public IJpaContextNode contextNode(int offset) {
+ public IJpaStructureNode structureNode(int offset) {
//TODO astRoot, possibly get this instead of rebuilding it
CompilationUnit astRoot = this.persistentTypeResource.getMember().astRoot();
if (!this.contains(offset, astRoot)) {
@@ -270,9 +271,14 @@ public class JavaPersistentType extends JavaContextModel implements IJavaPersist
}
public ITextRange selectionTextRange(CompilationUnit astRoot) {
- return this.persistentTypeResource.textRange(astRoot);
+ return this.persistentTypeResource.nameTextRange(astRoot);
}
-
+
+ public ITextRange selectionTextRange() {
+ return this.selectionTextRange(this.persistentTypeResource.getMember().astRoot());
+ }
+
+
public Iterator<IPersistentType> inheritanceHierarchy() {
// using a chain iterator to traverse up the inheritance tree
return new ChainIterator<IPersistentType>(this) {
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappings.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappings.java
index 82d8962fcb..f62795fd8b 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappings.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappings.java
@@ -13,11 +13,12 @@ package org.eclipse.jpt.core.internal.context.orm;
import java.util.ListIterator;
import org.eclipse.jpt.core.internal.context.base.AccessType;
import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.ISequenceGenerator;
import org.eclipse.jpt.core.internal.context.base.ITableGenerator;
import org.eclipse.jpt.core.internal.resource.orm.TypeMapping;
-public interface EntityMappings extends IJpaContextNode
+public interface EntityMappings extends IJpaContextNode, IJpaStructureNode
{
String getVersion();
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappingsImpl.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappingsImpl.java
index c4ef14fa78..4c9e6e39b1 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappingsImpl.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/EntityMappingsImpl.java
@@ -14,8 +14,9 @@ import java.util.Comparator;
import java.util.List;
import java.util.ListIterator;
import org.eclipse.jpt.core.internal.IMappingKeys;
+import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.context.base.AccessType;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.ISequenceGenerator;
import org.eclipse.jpt.core.internal.context.base.ITableGenerator;
import org.eclipse.jpt.core.internal.context.base.JpaContextNode;
@@ -447,33 +448,15 @@ public class EntityMappingsImpl extends JpaContextNode implements EntityMappings
return false;
}
-// /* @see IJpaContentNode#getId() */
-// public Object getId() {
-// return IXmlContentNodes.ENTITY_MAPPINGS_ID;
-// }
-//
-// public IJpaContentNode getContentNode(int offset) {
-// for (Iterator i = getTypeMappings().iterator(); i.hasNext();) {
-// XmlTypeMapping mapping = (XmlTypeMapping) i.next();
-// if (mapping.getNode().contains(offset)) {
-// return mapping.getContentNode(offset);
-// }
-// }
-// return this;
-// }
-//
-// public void javaElementChanged(ElementChangedEvent event) {
-// }
-
@Override
- public IJpaContextNode contextNode(int offset) {
+ public IJpaStructureNode structureNode(int offset) {
if (!this.entityMappings.contains(offset)) {
return null;
}
for (XmlPersistentType xmlPersistentType : CollectionTools.iterable(this.xmlPersistentTypes())) {
- IJpaContextNode contextNode = xmlPersistentType.contextNode(offset);
- if (contextNode != null) {
- return contextNode;
+ IJpaStructureNode structureNode = xmlPersistentType.structureNode(offset);
+ if (structureNode != null) {
+ return structureNode;
}
}
return this;
@@ -730,5 +713,7 @@ public class EntityMappingsImpl extends JpaContextNode implements EntityMappings
return xmlNamedNativeQuery;
}
-
+ public ITextRange selectionTextRange() {
+ return this.entityMappings.selectionTextRange();
+ }
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlAttributeMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlAttributeMapping.java
index 5e007c0387..5e06cec375 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlAttributeMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlAttributeMapping.java
@@ -9,8 +9,9 @@
******************************************************************************/
package org.eclipse.jpt.core.internal.context.orm;
+import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.context.base.IAttributeMapping;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.JpaContextNode;
import org.eclipse.jpt.core.internal.context.java.IJavaPersistentAttribute;
import org.eclipse.jpt.core.internal.context.java.IJavaPersistentType;
@@ -139,12 +140,18 @@ public abstract class XmlAttributeMapping<T extends AttributeMapping> extends Jp
initializeFromXmlMulitRelationshipMapping(oldMapping);
}
- public IJpaContextNode contextNode(int offset) {
+ @Override
+ public IJpaStructureNode structureNode(int offset) {
if (this.attributeMapping.contains(offset)) {
return persistentAttribute();
}
return null;
}
+
+ public ITextRange selectionTextRange() {
+ return this.attributeMapping.selectionTextRange();
+ }
+
/**
* Attributes are a sequence in the orm schema. We must keep
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentAttribute.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentAttribute.java
index 626ce04e80..e3fb041a3c 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentAttribute.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentAttribute.java
@@ -13,8 +13,9 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import org.eclipse.jpt.core.internal.IMappingKeys;
+import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.context.base.IAttributeMapping;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.IPersistentAttribute;
import org.eclipse.jpt.core.internal.context.base.JpaContextNode;
import org.eclipse.jpt.core.internal.resource.orm.AttributeMapping;
@@ -116,10 +117,15 @@ public class XmlPersistentAttribute extends JpaContextNode
firePropertyChanged(SPECIFIED_MAPPING_PROPERTY, oldMapping, this.attributeMapping);
}
- public IJpaContextNode contextNode(int offset) {
- return this.attributeMapping.contextNode(offset);
+ @Override
+ public IJpaStructureNode structureNode(int offset) {
+ return this.attributeMapping.structureNode(offset);
}
+ public ITextRange selectionTextRange() {
+ return this.attributeMapping.selectionTextRange();
+ }
+
public Collection<IXmlAttributeMappingProvider> attributeMappingProviders() {
return this.attributeMappingProviders;
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentType.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentType.java
index cbdceb896e..aca32d5d3e 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentType.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlPersistentType.java
@@ -16,8 +16,9 @@ import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
import org.eclipse.jpt.core.internal.IMappingKeys;
+import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.context.base.AccessType;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.IPersistentAttribute;
import org.eclipse.jpt.core.internal.context.base.IPersistentType;
import org.eclipse.jpt.core.internal.context.base.JpaContextNode;
@@ -89,11 +90,6 @@ public class XmlPersistentType extends JpaContextNode implements IPersistentType
this.specifiedPersistentAttributes = new ArrayList<XmlPersistentAttribute>();
this.virtualPersistentAttributes = new ArrayList<XmlPersistentAttribute>();
}
-
-// /* @see IJpaContentNode#getId() */
-// public Object getId() {
-// return IXmlContentNodes.PERSISTENT_TYPE_ID;
-// }
public boolean isFor(String fullyQualifiedTypeName) {
String className = getMapping().getClass_();
@@ -776,12 +772,12 @@ public class XmlPersistentType extends JpaContextNode implements IPersistentType
}
@Override
- public IJpaContextNode contextNode(int offset) {
- if (this.xmlTypeMapping.contextNode(offset) == null) {
+ public IJpaStructureNode structureNode(int offset) {
+ if (this.xmlTypeMapping.structureNode(offset) == null) {
return null;
}
for (XmlPersistentAttribute attribute : CollectionTools.iterable(this.attributes())) {
- IJpaContextNode contextNode = attribute.contextNode(offset);
+ IJpaStructureNode contextNode = attribute.structureNode(offset);
if (contextNode != null) {
return contextNode;
}
@@ -789,6 +785,10 @@ public class XmlPersistentType extends JpaContextNode implements IPersistentType
return this;
}
+ public ITextRange selectionTextRange() {
+ return this.xmlTypeMapping.selectionTextRange();
+ }
+
public IPersistentAttribute resolveAttribute(String attributeName) {
Iterator<XmlPersistentAttribute> attributes = attributesNamed(attributeName);
if (attributes.hasNext()) {
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlTypeMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlTypeMapping.java
index 27c66edeb2..2fffb0105f 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlTypeMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/XmlTypeMapping.java
@@ -10,8 +10,9 @@
package org.eclipse.jpt.core.internal.context.orm;
import java.util.Iterator;
+import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.context.base.AccessType;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.ITypeMapping;
import org.eclipse.jpt.core.internal.context.base.JpaContextNode;
import org.eclipse.jpt.core.internal.context.java.IJavaPersistentType;
@@ -143,12 +144,16 @@ public abstract class XmlTypeMapping<E extends TypeMapping> extends JpaContextNo
}
@Override
- public IJpaContextNode contextNode(int offset) {
+ public IJpaStructureNode structureNode(int offset) {
if (this.typeMapping.contains(offset)) {
return persistentType();
}
return null;
}
+
+ public ITextRange selectionTextRange() {
+ return this.typeMapping.selectionTextRange();
+ }
public Table primaryDbTable() {
return null;
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/common/IJpaEObject.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/common/IJpaEObject.java
index b46db423b3..a0287f5310 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/common/IJpaEObject.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/common/IJpaEObject.java
@@ -38,6 +38,12 @@ public interface IJpaEObject extends EObject
*/
ITextRange validationTextRange();
+ /**
+ * Return the text range to be used for selection. This is the source
+ * range that will be highlighted when selecting in the structure view.
+ */
+ ITextRange selectionTextRange();
+
boolean isAllFeaturesUnset();
/**
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/AbstractJavaPersistentResource.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/AbstractJavaPersistentResource.java
index 761e2a9ddf..8914b82811 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/AbstractJavaPersistentResource.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/AbstractJavaPersistentResource.java
@@ -488,10 +488,10 @@ public abstract class AbstractJavaPersistentResource<E extends Member> extends A
}
public ITextRange textRange(CompilationUnit astRoot) {
- return this.selectionTextRange(astRoot);
+ return this.fullTextRange(astRoot);
}
- public ITextRange selectionTextRange(CompilationUnit astRoot) {
+ public ITextRange nameTextRange(CompilationUnit astRoot) {
return this.getMember().nameTextRange(astRoot);
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/JavaPersistentResource.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/JavaPersistentResource.java
index 5ba98af59c..75a9476141 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/JavaPersistentResource.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/resource/java/JavaPersistentResource.java
@@ -12,6 +12,8 @@ package org.eclipse.jpt.core.internal.resource.java;
import java.util.Iterator;
import java.util.ListIterator;
import org.eclipse.jdt.core.IMember;
+import org.eclipse.jdt.core.dom.CompilationUnit;
+import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.platform.base.BaseJpaPlatform;
public interface JavaPersistentResource extends JavaResource
@@ -149,5 +151,11 @@ public interface JavaPersistentResource extends JavaResource
* @return
*/
boolean isFor(IMember member);
+
+
+ /**
+ * return the text range for the name of the persistent resource
+ */
+ ITextRange nameTextRange(CompilationUnit astRoot);
}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/IJpaPlatformUi.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/IJpaPlatformUi.java
index f998e3ddb1..41232bb824 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/IJpaPlatformUi.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/IJpaPlatformUi.java
@@ -10,8 +10,9 @@
package org.eclipse.jpt.ui.internal;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jpt.core.internal.IJpaPlatform;
import org.eclipse.jpt.core.internal.IJpaProject;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.ui.internal.details.IJpaDetailsProvider;
import org.eclipse.ui.navigator.ICommonContentProvider;
import org.eclipse.ui.navigator.ICommonLabelProvider;
@@ -54,7 +55,7 @@ public interface IJpaPlatformUi
//
// Iterator<IJpaDetailsProvider> detailsProviders();
//
- IJpaDetailsProvider detailsProvider(IJpaContextNode contextNode);
+ IJpaDetailsProvider detailsProvider(IJpaStructureNode contextNode);
//
// /**
// * Return the type mapping UI providers for java. This will populate
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/BaseJpaDetailsPage.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/BaseJpaDetailsPage.java
index 16ae2be21f..46e71524a0 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/BaseJpaDetailsPage.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/BaseJpaDetailsPage.java
@@ -8,7 +8,7 @@
*******************************************************************************/
package org.eclipse.jpt.ui.internal.details;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.ui.internal.widgets.AbstractFormPane;
import org.eclipse.jpt.utility.internal.model.value.SimplePropertyValueModel;
import org.eclipse.swt.widgets.Composite;
@@ -22,7 +22,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
* @version 2.0
* @since 1.0
*/
-public abstract class BaseJpaDetailsPage<T extends IJpaContextNode>
+public abstract class BaseJpaDetailsPage<T extends IJpaStructureNode>
extends AbstractFormPane<T>
implements IJpaDetailsPage<T>
{
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsPage.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsPage.java
index a370d5e440..8f89c5ecac 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsPage.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsPage.java
@@ -8,7 +8,7 @@
*******************************************************************************/
package org.eclipse.jpt.ui.internal.details;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.swt.widgets.Control;
/**
@@ -20,7 +20,7 @@ import org.eclipse.swt.widgets.Control;
* @version 2.0
* @since 2.0
*/
-public interface IJpaDetailsPage<T extends IJpaContextNode>
+public interface IJpaDetailsPage<T extends IJpaStructureNode>
{
/**
* Returns this details' page's widget.
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsProvider.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsProvider.java
index e125c62fcd..e3fe8c151e 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsProvider.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/IJpaDetailsProvider.java
@@ -8,7 +8,7 @@
*******************************************************************************/
package org.eclipse.jpt.ui.internal.details;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
@@ -31,7 +31,7 @@ public interface IJpaDetailsProvider
* page to create
* @param widgetFactory The factory used to create various widgets
*/
- IJpaDetailsPage<? extends IJpaContextNode> buildDetailsPage(
+ IJpaDetailsPage<? extends IJpaStructureNode> buildDetailsPage(
Composite parent,
Object contentNodeId,
TabbedPropertySheetWidgetFactory widgetFactory);
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/java/details/JavaDetailsProvider.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/java/details/JavaDetailsProvider.java
index 796f36a4b2..1f100c55da 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/java/details/JavaDetailsProvider.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/java/details/JavaDetailsProvider.java
@@ -9,7 +9,7 @@
******************************************************************************/
package org.eclipse.jpt.ui.internal.java.details;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.java.IJavaPersistentAttribute;
import org.eclipse.jpt.core.internal.context.java.IJavaPersistentType;
import org.eclipse.jpt.ui.internal.details.IJpaDetailsPage;
@@ -37,7 +37,7 @@ public class JavaDetailsProvider
/*
* (non-Javadoc)
*/
- public IJpaDetailsPage<? extends IJpaContextNode> buildDetailsPage(
+ public IJpaDetailsPage<? extends IJpaStructureNode> buildDetailsPage(
Composite parent,
Object contentNodeId,
TabbedPropertySheetWidgetFactory widgetFactory) {
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/platform/base/BaseJpaPlatformUi.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/platform/base/BaseJpaPlatformUi.java
index 0c37db0aa6..e16faf23bf 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/platform/base/BaseJpaPlatformUi.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/platform/base/BaseJpaPlatformUi.java
@@ -17,7 +17,7 @@ import java.util.ListIterator;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jpt.core.internal.IJpaProject;
import org.eclipse.jpt.core.internal.context.base.IAttributeMapping;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.base.ITypeMapping;
import org.eclipse.jpt.core.internal.context.java.IJavaJpaContextNode;
import org.eclipse.jpt.ui.internal.IJpaPlatformUi;
@@ -104,10 +104,10 @@ public abstract class BaseJpaPlatformUi implements IJpaPlatformUi
providers.add(new XmlDetailsProvider());
}
- public IJpaDetailsProvider detailsProvider(IJpaContextNode contextNode) {
+ public IJpaDetailsProvider detailsProvider(IJpaStructureNode structureNode) {
// TODO: To implement, this is written only for testing
detailsProviders();
- if (contextNode instanceof IJavaJpaContextNode) {
+ if (structureNode instanceof IJavaJpaContextNode) {
return detailsProviders.get(0);
}
else {
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/IJpaSelection.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/IJpaSelection.java
index 3c0770a964..8bf337c6a0 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/IJpaSelection.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/IJpaSelection.java
@@ -11,14 +11,14 @@
package org.eclipse.jpt.ui.internal.selection;
import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
@SuppressWarnings("nls")
public interface IJpaSelection extends ISelection
{
static IJpaSelection NULL_SELECTION =
new IJpaSelection() {
- public IJpaContextNode getSelectedNode() {
+ public IJpaStructureNode getSelectedNode() {
return null;
}
@@ -33,5 +33,5 @@ public interface IJpaSelection extends ISelection
};
- IJpaContextNode getSelectedNode();
+ IJpaStructureNode getSelectedNode();
}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/JpaSelection.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/JpaSelection.java
index a4e12ea25c..5fa5495612 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/JpaSelection.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/JpaSelection.java
@@ -9,24 +9,23 @@
******************************************************************************/
package org.eclipse.jpt.ui.internal.selection;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
-@SuppressWarnings("nls")
public class JpaSelection
implements IJpaSelection
{
- private IJpaContextNode selectedNode;
+ private IJpaStructureNode selectedNode;
- public JpaSelection(IJpaContextNode selectedNode) {
+ public JpaSelection(IJpaStructureNode selectedNode) {
if (selectedNode == null) {
throw new NullPointerException("A 'selectedNode' is required; otherwise use NULL_SELECTION.");
}
this.selectedNode = selectedNode;
}
- public IJpaContextNode getSelectedNode() {
- return selectedNode;
+ public IJpaStructureNode getSelectedNode() {
+ return this.selectedNode;
}
public boolean isEmpty() {
@@ -51,6 +50,6 @@ public class JpaSelection
@Override
public String toString() {
- return selectedNode.toString();
+ return this.selectedNode.toString();
}
}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/TextEditorSelectionParticipant.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/TextEditorSelectionParticipant.java
index 8cef83aa58..eb5df85c9b 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/TextEditorSelectionParticipant.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/selection/TextEditorSelectionParticipant.java
@@ -17,7 +17,7 @@ import org.eclipse.jface.viewers.SelectionChangedEvent;
import org.eclipse.jpt.core.internal.IJpaFile;
import org.eclipse.jpt.core.internal.ITextRange;
import org.eclipse.jpt.core.internal.JptCorePlugin;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.ui.internal.views.AbstractJpaView;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorPart;
@@ -97,7 +97,7 @@ public class TextEditorSelectionParticipant
return IJpaSelection.NULL_SELECTION;
}
- IJpaContextNode selectedNode = jpaFile.contextNode(((ITextSelection) selection).getOffset());
+ IJpaStructureNode selectedNode = jpaFile.structureNode(((ITextSelection) selection).getOffset());
if (selectedNode == null) {
return IJpaSelection.NULL_SELECTION;
}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/JpaDetailsView.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/JpaDetailsView.java
index 6161215101..1c1e1181f9 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/JpaDetailsView.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/JpaDetailsView.java
@@ -10,7 +10,7 @@ package org.eclipse.jpt.ui.internal.views;
import java.util.HashMap;
import java.util.Map;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.ui.internal.IJpaPlatformUi;
import org.eclipse.jpt.ui.internal.JptUiMessages;
import org.eclipse.jpt.ui.internal.JptUiPlugin;
@@ -19,7 +19,6 @@ import org.eclipse.jpt.ui.internal.details.IJpaDetailsPage;
import org.eclipse.jpt.ui.internal.details.IJpaDetailsProvider;
import org.eclipse.jpt.ui.internal.platform.JpaPlatformUiRegistry;
import org.eclipse.jpt.ui.internal.selection.IJpaSelection;
-import org.eclipse.jpt.ui.internal.selection.JpaSelection;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
@@ -37,7 +36,7 @@ public class JpaDetailsView extends AbstractJpaView
* The current <code>IJpaDetailsPage</code> that was retrieve based on the
* current selection.
*/
- private IJpaDetailsPage<IJpaContextNode> currentPage;
+ private IJpaDetailsPage<IJpaStructureNode> currentPage;
/**
* The current selection used to show the right <code>IJpaDetailsPage</code>.
@@ -47,7 +46,7 @@ public class JpaDetailsView extends AbstractJpaView
/**
* key: Object content node id, value: Composite page.
*/
- private Map<Object, IJpaDetailsPage<? extends IJpaContextNode>> detailsPages;
+ private Map<Object, IJpaDetailsPage<? extends IJpaStructureNode>> detailsPages;
/**
* Creates a new <code>JpaDetailsView</code>.
@@ -56,21 +55,21 @@ public class JpaDetailsView extends AbstractJpaView
super(JptUiMessages.JpaDetailsView_viewNotAvailable);
}
- private IJpaDetailsPage<? extends IJpaContextNode> buildDetailsPage(IJpaContextNode contextNode) {
- IJpaDetailsProvider detailsProvider = getDetailsProvider(contextNode);
+ private IJpaDetailsPage<? extends IJpaStructureNode> buildDetailsPage(IJpaStructureNode structureNode) {
+ IJpaDetailsProvider detailsProvider = getDetailsProvider(structureNode);
if (detailsProvider == null) {
return null;
}
- String id = contextNode.jpaProject().jpaPlatform().getId();
+ String id = structureNode.jpaProject().jpaPlatform().getId();
Composite container = getWidgetFactory().createComposite(getPageBook());
container.setLayout(new FillLayout(SWT.HORIZONTAL));
- IJpaDetailsPage<? extends IJpaContextNode> page = detailsProvider.buildDetailsPage(
+ IJpaDetailsPage<? extends IJpaStructureNode> page = detailsProvider.buildDetailsPage(
container,
- contextNode,
+ structureNode,
getWidgetFactory()
);
@@ -89,19 +88,19 @@ public class JpaDetailsView extends AbstractJpaView
detailsPages.clear();
- currentSelection = JpaSelection.NULL_SELECTION;
+ currentSelection = IJpaSelection.NULL_SELECTION;
currentPage = null;
super.dispose();
}
- private IJpaDetailsPage<? extends IJpaContextNode> getDetailsPage(IJpaContextNode contextNode) {
+ private IJpaDetailsPage<? extends IJpaStructureNode> getDetailsPage(IJpaStructureNode structureNode) {
//TODO commented out the caching of the details provider for the time being,
//someone should probably revist the possibility of caching
-// String id = contextNode.jpaProject().jpaPlatform().getId();
+// String id = structureNode.jpaProject().jpaPlatform().getId();
//
// if (detailsPages.containsKey(id)) {
-// IJpaDetailsPage<? extends IJpaContextNode> page = detailsPages.get(id);
+// IJpaDetailsPage<? extends IJpaStructureNode> page = detailsPages.get(id);
//
// if ((page != null) && page.getControl().isDisposed()) {
// detailsPages.remove(id);
@@ -111,14 +110,14 @@ public class JpaDetailsView extends AbstractJpaView
// }
// }
//
- return buildDetailsPage(contextNode);
+ return buildDetailsPage(structureNode);
}
- private IJpaDetailsProvider getDetailsProvider(IJpaContextNode contextNode) {
+ private IJpaDetailsProvider getDetailsProvider(IJpaStructureNode structureNode) {
- String platformId = contextNode.jpaProject().jpaPlatform().getId();
+ String platformId = structureNode.jpaProject().jpaPlatform().getId();
IJpaPlatformUi jpaPlatformUI = JpaPlatformUiRegistry.instance().jpaPlatform(platformId);
- return jpaPlatformUI.detailsProvider(contextNode);
+ return jpaPlatformUI.detailsProvider(structureNode);
//TODO this view and the detailsProviders Map is not created on a per project basis.
//the detailsProviders and their fileContentTypes could overlap across project, this would cause problems with storing this map.
@@ -136,7 +135,7 @@ public class JpaDetailsView extends AbstractJpaView
super.initialize();
this.currentSelection = IJpaSelection.NULL_SELECTION;
- this.detailsPages = new HashMap<Object, IJpaDetailsPage<? extends IJpaContextNode>>();
+ this.detailsPages = new HashMap<Object, IJpaDetailsPage<? extends IJpaStructureNode>>();
}
private void log(String message) {
@@ -157,8 +156,8 @@ public class JpaDetailsView extends AbstractJpaView
currentSelection = jpaSelection;
if (jpaSelection != IJpaSelection.NULL_SELECTION) {
- IJpaContextNode newNode = jpaSelection.getSelectedNode();
- IJpaDetailsPage<? extends IJpaContextNode> newPage = getDetailsPage(newNode);
+ IJpaStructureNode newNode = jpaSelection.getSelectedNode();
+ IJpaDetailsPage<? extends IJpaStructureNode> newPage = getDetailsPage(newNode);
setCurrentPage(newPage);
}
else {
@@ -172,7 +171,7 @@ public class JpaDetailsView extends AbstractJpaView
* @param newPage The new page to display
*/
@SuppressWarnings("unchecked")
- private void setCurrentPage(IJpaDetailsPage<? extends IJpaContextNode> page) {
+ private void setCurrentPage(IJpaDetailsPage<? extends IJpaStructureNode> page) {
// Unpopulate old page
if (currentPage != null) {
@@ -186,7 +185,7 @@ public class JpaDetailsView extends AbstractJpaView
}
}
- IJpaDetailsPage<IJpaContextNode> newPage = (IJpaDetailsPage<IJpaContextNode>) page;
+ IJpaDetailsPage<IJpaStructureNode> newPage = (IJpaDetailsPage<IJpaStructureNode>) page;
// Populate new page
if (page != null) {
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/structure/JpaStructurePage.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/structure/JpaStructurePage.java
index 97a0590156..c56d17a581 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/structure/JpaStructurePage.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/views/structure/JpaStructurePage.java
@@ -23,7 +23,7 @@ import org.eclipse.jface.viewers.ISelectionProvider;
import org.eclipse.jface.viewers.ITreeSelection;
import org.eclipse.jface.viewers.SelectionChangedEvent;
import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.ui.internal.jface.DelegatingTreeContentAndLabelProvider;
import org.eclipse.jpt.ui.internal.jface.NullLabelProvider;
import org.eclipse.jpt.ui.internal.jface.NullTreeContentProvider;
@@ -192,9 +192,7 @@ public class JpaStructurePage extends Page
if (viewerSelection.isEmpty() || viewerSelection.size() > 1) {
return IJpaSelection.NULL_SELECTION;
}
- else {
- return new JpaSelection((IJpaContextNode) viewerSelection.getFirstElement());
- }
+ return new JpaSelection((IJpaStructureNode) viewerSelection.getFirstElement());
}
public void setSelection(ISelection selection) {
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/xml/details/XmlDetailsProvider.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/xml/details/XmlDetailsProvider.java
index 5bb58d7e8a..9e8bbcb8df 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/xml/details/XmlDetailsProvider.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/xml/details/XmlDetailsProvider.java
@@ -8,7 +8,7 @@
*******************************************************************************/
package org.eclipse.jpt.ui.internal.xml.details;
-import org.eclipse.jpt.core.internal.context.base.IJpaContextNode;
+import org.eclipse.jpt.core.internal.context.base.IJpaStructureNode;
import org.eclipse.jpt.core.internal.context.orm.EntityMappings;
import org.eclipse.jpt.core.internal.context.orm.XmlPersistentAttribute;
import org.eclipse.jpt.core.internal.context.orm.XmlPersistentType;
@@ -38,7 +38,7 @@ public class XmlDetailsProvider
/*
* (non-Javadoc)
*/
- public IJpaDetailsPage<? extends IJpaContextNode> buildDetailsPage(
+ public IJpaDetailsPage<? extends IJpaStructureNode> buildDetailsPage(
Composite parent,
Object contentNodeId,
TabbedPropertySheetWidgetFactory widgetFactory) {

Back to the top