Author: scabanovich
Date: 2011-12-01 13:55:12 -0500 (Thu, 01 Dec 2011)
New Revision: 36842
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java
Log:
JBIDE-10248
https://issues.jboss.org/browse/JBIDE-10248
ImageRegistry is used to manage images.
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/WebKbPlugin.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -12,6 +12,9 @@
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.resource.ImageRegistry;
+import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.EclipseUtil;
import org.jboss.tools.common.log.BaseUIPlugin;
import org.jboss.tools.jst.web.WebModelPlugin;
@@ -155,4 +158,16 @@
}
}
+ public static Image getImage(Class<?> baseClass, String imageName) {
+ ImageRegistry registry = getDefault().getImageRegistry();
+ Image result = registry.get(imageName);
+ if(result == null || result.isDisposed()) {
+ result = ImageDescriptor.createFromFile(baseClass, imageName).createImage();
+ if(result != null) {
+ registry.put(imageName, result);
+ }
+ }
+ return result;
+ }
+
}
\ No newline at end of file
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ActionProposalType.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -34,7 +34,6 @@
public class ActionProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "JSFActionProposal.gif";
//$NON-NLS-1$
- private static Image ICON;
/*
* (non-Javadoc)
@@ -69,10 +68,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class,
IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
}
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/CSSClassProposalType.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -15,8 +15,6 @@
import java.util.Set;
import java.util.TreeSet;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.ICSSContainerSupport;
import org.jboss.tools.jst.web.kb.IPageContext;
@@ -37,7 +35,6 @@
*/
public class CSSClassProposalType extends CustomProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif";
//$NON-NLS-1$
- private static Image ICON;
static String ID = "cssclass"; //$NON-NLS-1$
static String QUOTE_1 = "'"; //$NON-NLS-1$
@@ -149,10 +146,7 @@
proposal.setPosition(b + text.length() - predicateLength);
proposal.setStart(b - predicateLength);
proposal.setEnd(e - predicateLength);
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ConverterIDProposalType.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -31,7 +31,6 @@
public class ConverterIDProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif";
//$NON-NLS-1$
- private static Image ICON;
public ConverterIDProposalType() {}
@@ -52,10 +51,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/EnumerationProposalType.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -13,8 +13,6 @@
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.IPageContext;
import org.jboss.tools.jst.web.kb.KbQuery;
@@ -26,7 +24,6 @@
public class EnumerationProposalType extends CustomProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif";
//$NON-NLS-1$
- private static Image ICON;
/* (non-Javadoc)
* @see
org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalType#getProposals(org.jboss.tools.jst.web.kb.KbQuery)
@@ -44,10 +41,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
}
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/IDProposalType.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -33,7 +33,6 @@
@SuppressWarnings("restriction")
public class IDProposalType extends CustomProposalType {
private static final String IMAGE_NAME = "EnumerationProposal.gif";
//$NON-NLS-1$
- private static Image ICON;
static String ID = "id"; //$NON-NLS-1$
static String QUOTE_1 = "'"; //$NON-NLS-1$
@@ -93,10 +92,7 @@
proposal.setPosition(b + text.length());
proposal.setStart(b);
proposal.setEnd(e);
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourceBundleNameProposalType.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -29,7 +29,6 @@
public class ResourceBundleNameProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "MessageBundleProposal.gif";
//$NON-NLS-1$
- private static Image ICON;
/* (non-Javadoc)
* @see
org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalType#getProposals(org.jboss.tools.jst.web.kb.KbQuery)
@@ -53,10 +52,7 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class,
IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
}
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java 2011-12-01
18:40:38 UTC (rev 36841)
+++
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/proposal/ResourcePathProposalType.java 2011-12-01
18:55:12 UTC (rev 36842)
@@ -38,7 +38,6 @@
public class ResourcePathProposalType extends ModelProposalType {
private static final String IMAGE_NAME = "ResourcePathProposal.gif";
//$NON-NLS-1$
- private static Image ICON;
private static Set<String> GRAPHIC_FILE_EXTENSIONS = new HashSet<String>();
private static Set<String> PAGE_FILE_EXTENSIONS = new HashSet<String>();
private static Set<String> CSS_FILE_EXTENSIONS = new HashSet<String>();
@@ -127,10 +126,7 @@
}
proposal.setReplacementString(replacementString);
proposal.setPosition(replacementString.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
if(newValue == value) {
proposals.add(proposal);
}
@@ -153,10 +149,7 @@
proposal.setAutoActivationContentAssistantAfterApplication(false);
proposal.setReplacementString(replacementString);
proposal.setPosition(replacementString.length());
- if(ICON==null) {
- ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
- }
- proposal.setImage(ICON);
+ proposal.setImage(WebKbPlugin.getImage(WebKbPlugin.class, IMAGE_NAME));
proposals.add(proposal);
}
return proposals.toArray(new TextProposal[0]);