summaryrefslogtreecommitdiff
path: root/toolkit/test/accessibility/AccessibleTreeNode.java
diff options
context:
space:
mode:
authorAndre Fischer <af@openoffice.org>2002-04-02 13:06:32 +0000
committerAndre Fischer <af@openoffice.org>2002-04-02 13:06:32 +0000
commit847ceddeaddff411adf27c06e3131e818ac50154 (patch)
tree72f265bffbc023dc51d52497eabf584fb2ebe34e /toolkit/test/accessibility/AccessibleTreeNode.java
parent76a820f393a9d87ed920efe3ef8e3ea6d92000af (diff)
Performance improvements: Handler have become non-static members of tree nodes and cache data to prevent UNO queries. Increased type safety by introduction of tree node hierarchy.
Diffstat (limited to 'toolkit/test/accessibility/AccessibleTreeNode.java')
-rw-r--r--toolkit/test/accessibility/AccessibleTreeNode.java84
1 files changed, 84 insertions, 0 deletions
diff --git a/toolkit/test/accessibility/AccessibleTreeNode.java b/toolkit/test/accessibility/AccessibleTreeNode.java
new file mode 100644
index 000000000000..490530b3f5b3
--- /dev/null
+++ b/toolkit/test/accessibility/AccessibleTreeNode.java
@@ -0,0 +1,84 @@
+import java.util.Vector;
+import com.sun.star.lang.IndexOutOfBoundsException;
+
+/**
+ Base class for all tree nodes.
+ */
+class AccessibleTreeNode
+{
+ /// The parent node. It is null for the root node.
+ protected AccessibleTreeNode maParent;
+
+ /// The object to be displayed.
+ private Object maDisplayObject;
+
+ public AccessibleTreeNode (Object aDisplayObject, AccessibleTreeNode aParent)
+ {
+ maDisplayObject = aDisplayObject;
+ maParent = aParent;
+ }
+
+ public void update ()
+ {
+ // Empty
+ }
+
+ public AccessibleTreeNode getParent ()
+ {
+ return maParent;
+ }
+
+ public Object getDisplayObject ()
+ {
+ return maDisplayObject;
+ }
+
+ public int getChildCount ()
+ {
+ return 0;
+ }
+
+ public AccessibleTreeNode getChild (int nIndex)
+ throws IndexOutOfBoundsException
+ {
+ throw new IndexOutOfBoundsException();
+ }
+
+ public boolean removeChild (int nIndex)
+ throws IndexOutOfBoundsException
+ {
+ throw new IndexOutOfBoundsException();
+ }
+
+ public int indexOf (AccessibleTreeNode aNode)
+ {
+ return -1;
+ }
+
+ /** Create a path to this node by first asking the parent for its path
+ and then appending this object.
+ */
+ public void createPath (java.util.Vector aPath)
+ {
+ if (maParent != null)
+ maParent.createPath (aPath);
+ aPath.add (this);
+ }
+
+ public Object[] createPath ()
+ {
+ Vector aPath = new Vector (1);
+ createPath (aPath);
+ return aPath.toArray();
+ }
+
+ public boolean isLeaf()
+ {
+ return true;
+ }
+
+ public String toString()
+ {
+ return maDisplayObject.toString();
+ }
+}