Author: scabanovich
Date: 2009-08-07 09:33:35 -0400 (Fri, 07 Aug 2009)
New Revision: 17012
Added:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/IDResourceElement.java
Modified:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/AttributeValueResourceFactory.java
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/ui/AttributeValueLabelProvider.java
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/outline/ValueHelper.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-3571
Modified:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/AttributeValueResourceFactory.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/AttributeValueResourceFactory.java 2009-08-07
11:59:19 UTC (rev 17011)
+++
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/AttributeValueResourceFactory.java 2009-08-07
13:33:35 UTC (rev 17012)
@@ -14,6 +14,8 @@
import org.eclipse.ui.IEditorInput;
import org.jboss.tools.jst.web.kb.IPageContext;
+import org.jboss.tools.jst.web.kb.KbQuery;
+import org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalType;
import org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalTypeFactory;
import org.jboss.tools.jst.jsp.messages.JstUIMessages;
@@ -28,6 +30,7 @@
static String ENUMERATION_TYPE = CustomProposalTypeFactory.ENUMERATION_TYPE;
static String FACELETS_JSFC_TYPE = CustomProposalTypeFactory.FACELETS_JSFC_TYPE;
static String TAGLIB_TYPE = CustomProposalTypeFactory.NAME_SPACE_TYPE;
+ static String ID_TYPE = CustomProposalTypeFactory.ID_TYPE;
static String BUNDLE_PROPERTY_TYPE = "bundleProperty"; //$NON-NLS-1$
static String BEAN_PROPERTY_TYPE = "beanProperty"; //$NON-NLS-1$
static String BEAN_METHOD_BY_SYGNATURE_TYPE = "beanMethodBySignature";
//$NON-NLS-1$
@@ -45,11 +48,14 @@
return INSTANCE;
}
- public AttributeValueResource createResource(IEditorInput editorInput, IPageContext
pageContext, ModelElement root, String type) {
- return createResource(editorInput, pageContext, null, root, type);
+ public AttributeValueResource createResource(IEditorInput editorInput, IPageContext
pageContext, ModelElement root, CustomProposalType proposalType, String type, KbQuery
kbQuery) {
+ return createResource(editorInput, pageContext, null, root, proposalType, type,
kbQuery);
}
- public AttributeValueResource createResource(IEditorInput editorInput, IPageContext
pageContext, String name, ModelElement root, String type) {
+ public AttributeValueResource createResource(IEditorInput editorInput, IPageContext
pageContext, String name, ModelElement root, CustomProposalType proposalType, String type,
KbQuery kbQuery) {
+ if(type == null && proposalType != null) {
+ type = proposalType.getType();
+ }
if(BEAN_PROPERTY_TYPE.equals(type)) {
return new ManagedBeansPropertiesResourceElement(editorInput, name, root);
} else if(BEAN_METHOD_BY_SYGNATURE_TYPE.equals(type)) {
@@ -66,6 +72,8 @@
return new JsfVariablesResourceElement(name, root);
} else if(IMAGE_FILE_TYPE.equals(type)) {
return new ImageFileResourceElement(editorInput, root);
+ } else if(ID_TYPE.equals(type)) {
+ return new IDResourceElement(root, pageContext, proposalType, kbQuery);
} else if("seamVariables".equals(type)) { //$NON-NLS-1$
return new SeamVariablesResourceElement(editorInput, "Seam Variables",
root); //$NON-NLS-1$
}
Added:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/IDResourceElement.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/IDResourceElement.java
(rev 0)
+++
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/IDResourceElement.java 2009-08-07
13:33:35 UTC (rev 17012)
@@ -0,0 +1,40 @@
+package org.jboss.tools.jst.jsp.drop.treeviewer.model;
+
+import org.jboss.tools.common.text.TextProposal;
+import org.jboss.tools.jst.web.kb.IPageContext;
+import org.jboss.tools.jst.web.kb.KbQuery;
+import org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalType;
+
+public class IDResourceElement extends AttributeValueResource {
+ IPageContext pageContext;
+ CustomProposalType type;
+ KbQuery kbQuery;
+
+ public IDResourceElement(ModelElement parent, IPageContext pageContext,
CustomProposalType type, KbQuery kbQuery) {
+ super(parent);
+ this.pageContext = pageContext;
+ this.type = type;
+ this.kbQuery = kbQuery;
+ }
+
+ public ModelElement[] getChildren() {
+ if(type == null || pageContext == null || kbQuery == null) {
+ return new ModelElement[0];
+ }
+ TextProposal[] ps = type.getProposals(kbQuery, pageContext);
+ ModelElement[] result = ps == null ? new ModelElement[0] : new
ModelElement[ps.length];
+ if(ps != null) for (int i = 0; i < ps.length; i++) {
+ String s = ps[i].getReplacementString();
+ result[i] = new EnumerationElement(s, this);
+ }
+ return result;
+ }
+
+ /**
+ * @see ModelElement#getName()
+ */
+ public String getName() {
+ return "Component IDs"; //$NON-NLS-1$
+ }
+
+}
Property changes on:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/model/IDResourceElement.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/ui/AttributeValueLabelProvider.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/ui/AttributeValueLabelProvider.java 2009-08-07
11:59:19 UTC (rev 17011)
+++
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/drop/treeviewer/ui/AttributeValueLabelProvider.java 2009-08-07
13:33:35 UTC (rev 17012)
@@ -11,7 +11,6 @@
package org.jboss.tools.jst.jsp.drop.treeviewer.ui;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.Map;
import org.eclipse.jface.viewers.LabelProvider;
@@ -25,6 +24,7 @@
import org.jboss.tools.jst.jsp.drop.treeviewer.model.BundlesPropertiesResourceElement;
import org.jboss.tools.jst.jsp.drop.treeviewer.model.EnumerationElement;
import org.jboss.tools.jst.jsp.drop.treeviewer.model.EnumerationResourceElement;
+import org.jboss.tools.jst.jsp.drop.treeviewer.model.IDResourceElement;
import org.jboss.tools.jst.jsp.drop.treeviewer.model.ImageFileElement;
import org.jboss.tools.jst.jsp.drop.treeviewer.model.ImageFileResourceElement;
import org.jboss.tools.jst.jsp.drop.treeviewer.model.ImageFolderElement;
@@ -50,7 +50,7 @@
*/
public class AttributeValueLabelProvider extends LabelProvider {
- private static Map imagesPathes = new HashMap();
+ private static Map<Class<? extends ModelElement>, String> imagesPathes = new
HashMap<Class<? extends ModelElement>, String>();
static {
imagesPathes.put(BundlesNameResourceElement.class,
"images/jdo/db_fields_folder.gif"); //$NON-NLS-1$
imagesPathes.put(BundleNameElement.class,
"images/navigationtree/properties.gif"); //$NON-NLS-1$
@@ -84,9 +84,11 @@
imagesPathes.put(SeamVariableElement.class, "images/seam/variable.gif");
//$NON-NLS-1$
imagesPathes.put(SeamPropertyElement.class,
"images/navigationtree/property.gif"); //$NON-NLS-1$
imagesPathes.put(SeamMethodElement.class, "images/java/method.gif");
//$NON-NLS-1$
+
+ imagesPathes.put(IDResourceElement.class, "images/file/closed_folder.gif");
//$NON-NLS-1$
}
- private static Map texts = new HashMap();
+ private static Map<Class<? extends ModelElement>, String> texts = new
HashMap<Class<? extends ModelElement>, String>();
static {
texts.put(BundlesNameResourceElement.class,
TreeViewerMessages.BundlesNameResourceElement_name);
texts.put(BundlesPropertiesResourceElement.class,
TreeViewerMessages.BundlesPropertiesResourceElement_name);
@@ -97,7 +99,7 @@
texts.put(ViewActionsResorceElement.class,
TreeViewerMessages.ViewActionsResorceElement_name);
}
- private Map imageCache = new HashMap();
+ private Map<Object, Image> imageCache = new HashMap<Object, Image>();
/*
* @see ILabelProvider#getImage(Object)
@@ -132,8 +134,8 @@
}
public void dispose() {
- for (Iterator i = imageCache.values().iterator(); i.hasNext();) {
- ((Image) i.next()).dispose();
+ for (Image i: imageCache.values()) {
+ i.dispose();
}
imageCache.clear();
}
Modified:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/outline/ValueHelper.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/outline/ValueHelper.java 2009-08-07
11:59:19 UTC (rev 17011)
+++
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/outline/ValueHelper.java 2009-08-07
13:33:35 UTC (rev 17012)
@@ -131,7 +131,7 @@
List<AttributeValueResource> elements = new
ArrayList<AttributeValueResource>();
ModelElement root = new RootElement("root", elements); //$NON-NLS-1$
for (int i = 0; i < proposals.length; i++) {
- AttributeValueResource resource =
AttributeValueResourceFactory.getInstance().createResource(getEditorInput(), pageContext,
root, proposals[i].getType());
+ AttributeValueResource resource =
AttributeValueResourceFactory.getInstance().createResource(getEditorInput(), pageContext,
root, proposals[i], proposals[i].getType(), kbQuery);
resource.setParams(proposals[i].getParams());
resource.setQuery(kbQuery, this);
elements.add(resource);
@@ -141,7 +141,7 @@
p.put("file", getFile()); //$NON-NLS-1$
List list = seamPromptingProvider.getList(null, "seam.is_seam_project",
null, p); //$NON-NLS-1$
if(list != null) {
- AttributeValueResource resource =
AttributeValueResourceFactory.getInstance().createResource(getEditorInput(), pageContext,
root, "seamVariables"); //$NON-NLS-1$
+ AttributeValueResource resource =
AttributeValueResourceFactory.getInstance().createResource(getEditorInput(), pageContext,
root, null, "seamVariables", kbQuery); //$NON-NLS-1$
resource.setQuery(kbQuery, this);
elements.add(resource);
}