Add tooltip support
authorMathieu Baudier <mbaudier@argeo.org>
Mon, 18 Apr 2011 19:47:54 +0000 (19:47 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Mon, 18 Apr 2011 19:47:54 +0000 (19:47 +0000)
NEW - bug 17: Generalize agent management and registration beyond JMS
https://bugzilla.argeo.org/show_bug.cgi?id=17

git-svn-id: https://svn.argeo.org/commons/trunk@4451 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

eclipse/runtime/org.argeo.eclipse.ui.jcr/src/main/java/org/argeo/eclipse/ui/jcr/DefaultNodeLabelProvider.java

index 648079ea386d5e978df6fb55049dd170cf9a4f0d..b16eda81998503e8676fe7a182462088068f1080 100644 (file)
@@ -7,11 +7,11 @@ import javax.jcr.nodetype.NodeType;
 
 import org.argeo.ArgeoException;
 import org.argeo.jcr.ArgeoTypes;
-import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
 import org.eclipse.swt.graphics.Image;
 
 /** Provides reasonable overridable defaults for know JCR types. */
-public class DefaultNodeLabelProvider extends LabelProvider {
+public class DefaultNodeLabelProvider extends ColumnLabelProvider {
        // Images
        public final static Image NODE = JcrUiPlugin.getImageDescriptor(
                        "icons/node.gif").createImage();
@@ -77,4 +77,24 @@ public class DefaultNodeLabelProvider extends LabelProvider {
                        return NODE;
        }
 
+       @Override
+       public String getToolTipText(Object element) {
+               try {
+                       if (element instanceof Node) {
+                               return getToolTipText((Node) element);
+                       } else if (element instanceof WrappedNode) {
+                               return getToolTipText(((WrappedNode) element).getNode());
+                       } else if (element instanceof NodesWrapper) {
+                               return getToolTipText(((NodesWrapper) element).getNode());
+                       }
+               } catch (RepositoryException e) {
+                       throw new ArgeoException("Cannot get tooltip for " + element, e);
+               }
+               return super.getToolTipText(element);
+       }
+
+       protected String getToolTipText(Node node) throws RepositoryException {
+               return null;
+       }
+
 }