1) Added missing strings for italic, underline and strike through.
[phpeclipse.git] / archive / net.sourceforge.phpeclipse.sql / src / net / sourceforge / phpdt / sql / view / bookmark / SequenceNode.java
1 package net.sourceforge.phpdt.sql.view.bookmark;
2
3 import java.net.MalformedURLException;
4
5 import org.eclipse.swt.graphics.Image;
6
7 import net.sourceforge.phpdt.sql.model.Sequence;
8 import net.sourceforge.phpdt.sql.sql.metadata.ObjectMetaData;
9
10 public class SequenceNode implements TreeNode, Comparable  {
11     private GroupNode parent;
12     private Sequence sequence;
13
14     public SequenceNode(GroupNode parent, Sequence sequence) {
15         this.parent = parent;
16         this.sequence = sequence;
17     }
18
19         public ObjectMetaData getMetaData() {
20                         return null;    //no metadata implementation for now
21                 }
22     
23         public Object[] getChildren() {
24                 return Root.EMPTY_ARRAY;
25         }
26
27         public Object getParent() {
28                 return parent;
29         }
30
31         public boolean hasChildren() {
32                 return false;
33         }
34         
35         public String getName() {
36                 return this.sequence.getQualifiedName();
37         }
38         
39         public String toString() {
40                 return getName();
41         }
42
43         public int compareTo(Object o) {
44                 if (o instanceof SequenceNode) {
45                         SequenceNode node = (SequenceNode) o;
46                         return getName().compareTo(node.getName());
47                 } else if (o instanceof TreeNode || o instanceof ViewNode) {
48                         return 1;
49                 }
50                 return 0;
51         }
52         /**
53          * @return an Image object to appear in the view
54          * @throws MalformedURLException
55          */
56         public Image getImage() throws MalformedURLException {
57                 if (parent instanceof GroupNode){
58                         GroupNode group = (GroupNode) parent;
59                         return group.getImage();
60                 } else
61                         return null;
62         }
63
64         /**
65          * @return the associated BookmarkNode, by navigating upwards in the tree 
66          */
67         public BookmarkNode getBookmark() {
68                 TreeNode node = parent;
69                 while (!( node instanceof BookmarkNode))
70                 {
71                         node = (TreeNode) node.getParent();
72                 }
73                 return (BookmarkNode) node;
74         }
75
76 }