]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms.ui/src/org/argeo/eclipse/ui/jcr/NodeColumnLabelProvider.java
SDK system based on Makefiles
[lgpl/argeo-commons.git] / org.argeo.cms.ui / src / org / argeo / eclipse / ui / jcr / NodeColumnLabelProvider.java
1 package org.argeo.eclipse.ui.jcr;
2
3 import javax.jcr.Node;
4 import javax.jcr.RepositoryException;
5
6 import org.eclipse.jface.viewers.ColumnLabelProvider;
7 import org.eclipse.swt.graphics.Color;
8 import org.eclipse.swt.graphics.Font;
9 import org.eclipse.swt.graphics.Image;
10
11 /** Simplifies writing JCR-based column label provider. */
12 public class NodeColumnLabelProvider extends ColumnLabelProvider {
13 private static final long serialVersionUID = -6586692836928505358L;
14
15 protected String getNodeText(Node node) throws RepositoryException {
16 return super.getText(node);
17 }
18
19 protected String getNodeToolTipText(Node node) throws RepositoryException {
20 return super.getToolTipText(node);
21 }
22
23 protected Image getNodeImage(Node node) throws RepositoryException {
24 return super.getImage(node);
25 }
26
27 protected Font getNodeFont(Node node) throws RepositoryException {
28 return super.getFont(node);
29 }
30
31 public Color getNodeBackground(Node node) throws RepositoryException {
32 return super.getBackground(node);
33 }
34
35 public Color getNodeForeground(Node node) throws RepositoryException {
36 return super.getForeground(node);
37 }
38
39 @Override
40 public String getText(Object element) {
41 try {
42 if (element instanceof Node)
43 return getNodeText((Node) element);
44 else if (element instanceof NodeElement)
45 return getNodeText(((NodeElement) element).getNode());
46 else
47 throw new IllegalArgumentException("Unsupported element type " + element.getClass());
48 } catch (RepositoryException e) {
49 throw new IllegalStateException("Repository exception when accessing " + element, e);
50 }
51 }
52
53 @Override
54 public Image getImage(Object element) {
55 try {
56 if (element instanceof Node)
57 return getNodeImage((Node) element);
58 else if (element instanceof NodeElement)
59 return getNodeImage(((NodeElement) element).getNode());
60 else
61 throw new IllegalArgumentException("Unsupported element type " + element.getClass());
62 } catch (RepositoryException e) {
63 throw new IllegalStateException("Repository exception when accessing " + element, e);
64 }
65 }
66
67 @Override
68 public String getToolTipText(Object element) {
69 try {
70 if (element instanceof Node)
71 return getNodeToolTipText((Node) element);
72 else if (element instanceof NodeElement)
73 return getNodeToolTipText(((NodeElement) element).getNode());
74 else
75 throw new IllegalArgumentException("Unsupported element type " + element.getClass());
76 } catch (RepositoryException e) {
77 throw new IllegalStateException("Repository exception when accessing " + element, e);
78 }
79 }
80
81 @Override
82 public Font getFont(Object element) {
83 try {
84 if (element instanceof Node)
85 return getNodeFont((Node) element);
86 else if (element instanceof NodeElement)
87 return getNodeFont(((NodeElement) element).getNode());
88 else
89 throw new IllegalArgumentException("Unsupported element type " + element.getClass());
90 } catch (RepositoryException e) {
91 throw new IllegalStateException("Repository exception when accessing " + element, e);
92 }
93 }
94
95 @Override
96 public Color getBackground(Object element) {
97 try {
98 if (element instanceof Node)
99 return getNodeBackground((Node) element);
100 else if (element instanceof NodeElement)
101 return getNodeBackground(((NodeElement) element).getNode());
102 else
103 throw new IllegalArgumentException("Unsupported element type " + element.getClass());
104 } catch (RepositoryException e) {
105 throw new IllegalStateException("Repository exception when accessing " + element, e);
106 }
107 }
108
109 @Override
110 public Color getForeground(Object element) {
111 try {
112 if (element instanceof Node)
113 return getNodeForeground((Node) element);
114 else if (element instanceof NodeElement)
115 return getNodeForeground(((NodeElement) element).getNode());
116 else
117 throw new IllegalArgumentException("Unsupported element type " + element.getClass());
118 } catch (RepositoryException e) {
119 throw new IllegalStateException("Repository exception when accessing " + element, e);
120 }
121 }
122
123 }