Author: scabanovich
Date: 2008-11-17 12:07:56 -0500 (Mon, 17 Nov 2008)
New Revision: 11848
Modified:
trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/attribute/AttributeContentProposalProviderFactory.java
Log:
JBIDE-2575
Modified:
trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/attribute/AttributeContentProposalProviderFactory.java
===================================================================
---
trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/attribute/AttributeContentProposalProviderFactory.java 2008-11-17
17:00:26 UTC (rev 11847)
+++
trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/attribute/AttributeContentProposalProviderFactory.java 2008-11-17
17:07:56 UTC (rev 11848)
@@ -22,10 +22,14 @@
import org.eclipse.jface.bindings.keys.ParseException;
import org.eclipse.jface.fieldassist.ComboContentAdapter;
import org.eclipse.jface.fieldassist.ContentProposalAdapter;
+import org.eclipse.jface.fieldassist.ControlDecoration;
+import org.eclipse.jface.fieldassist.FieldDecoration;
+import org.eclipse.jface.fieldassist.FieldDecorationRegistry;
import org.eclipse.jface.fieldassist.IContentProposal;
import org.eclipse.jface.fieldassist.IContentProposalProvider;
import org.eclipse.jface.fieldassist.IControlContentAdapter;
import org.eclipse.jface.fieldassist.TextContentAdapter;
+import org.eclipse.swt.SWT;
import org.eclipse.swt.events.DisposeEvent;
import org.eclipse.swt.events.DisposeListener;
import org.eclipse.swt.widgets.Combo;
@@ -76,6 +80,7 @@
AttributeContentProposalProviderFactory factory = new
AttributeContentProposalProviderFactory();
final List<IAttributeContentProposalProvider> ps = factory
.getContentProposalProviders(object, attr);
+ boolean added = false;
for (IAttributeContentProposalProvider p : ps) {
p.init(object, attr);
IContentProposalProvider cpp = p.getContentProposalProvider();
@@ -89,6 +94,7 @@
null);
adapter.setPropagateKeys(true);
adapter.setProposalAcceptanceStyle(p.getProposalAcceptanceStyle());
+ added = true;
}
if (!ps.isEmpty()) {
control.addDisposeListener(new DisposeListener() {
@@ -99,6 +105,21 @@
}
});
}
+ if(added) {
+ int bits = SWT.TOP | SWT.LEFT;
+ ControlDecoration controlDecoration = new ControlDecoration(control, bits);
+ // Configure text widget decoration
+ // No margin
+ controlDecoration.setMarginWidth(0);
+ // Custom hover tip text
+ controlDecoration.setDescriptionText("code assist"
/*PDEUIMessages.PDEJavaHelper_msgContentAssistAvailable*/);
+ // Custom hover properties
+ controlDecoration.setShowHover(true);
+ controlDecoration.setShowOnlyOnFocus(true);
+ // Hover image to use
+ FieldDecoration contentProposalImage =
FieldDecorationRegistry.getDefault().getFieldDecoration(FieldDecorationRegistry.DEC_CONTENT_PROPOSAL);
+ controlDecoration.setImage(contentProposalImage.getImage());
+ }
}
static String POINT_ID = ModelUIPlugin.PLUGIN_ID +
".attributeContentProposalProviders";
Show replies by date