source: trunk/gli/src/org/greenstone/gatherer/util/DefaultSynchronizedTreeNode.java@ 5807

Last change on this file since 5807 was 5581, checked in by mdewsnip, 21 years ago

Many formatting, structural and code improvements.

  • Property svn:keywords set to Author Date Id Revision
File size: 1.2 KB
Line 
1package org.greenstone.gatherer.util;
2
3import javax.swing.*;
4import javax.swing.tree.*;
5import org.greenstone.gatherer.util.SynchronizedTreeNode;
6
7public class DefaultSynchronizedTreeNode
8 extends DefaultMutableTreeNode
9 implements SynchronizedTreeNode {
10
11 private String text = null;
12
13 DefaultSynchronizedTreeNode(Object userObject) {
14 super(userObject);
15 }
16
17 public SynchronizedTreeNode cloneNode() {
18 // Create new node with same userObject
19 SynchronizedTreeNode new_node = new DefaultSynchronizedTreeNode(userObject);
20 // Clone and add children.
21 for(int i = 0; i < getChildCount(); i++) {
22 SynchronizedTreeNode child = (SynchronizedTreeNode) getChildAt(i);
23 new_node.insert(child.cloneNode(), i);
24 }
25 return new_node;
26 }
27
28 public int compareTo(Object other) {
29 if(text == null) {
30 text = userObject.toString();
31 }
32 return text.compareTo(other.toString());
33 }
34
35 public boolean equals(Object other) {
36 if(text == null) {
37 text = userObject.toString();
38 }
39 return text.equals(other.toString());
40 }
41
42 public String toString() {
43 if(text == null) {
44 text = userObject.toString();
45 }
46 return text;
47 }
48}
Note: See TracBrowser for help on using the repository browser.