home *** CD-ROM | disk | FTP | other *** search
Java Source | 1998-05-08 | 1.9 KB | 57 lines |
- /*
- * Copyright (c) 1997-1998 Borland International, Inc. All Rights Reserved.
- *
- * This SOURCE CODE FILE, which has been provided by Borland as part
- * of a Borland product for use ONLY by licensed users of the product,
- * includes CONFIDENTIAL and PROPRIETARY information of Borland.
- *
- * USE OF THIS SOFTWARE IS GOVERNED BY THE TERMS AND CONDITIONS
- * OF THE LICENSE STATEMENT AND LIMITED WARRANTY FURNISHED WITH
- * THE PRODUCT.
- *
- * IN PARTICULAR, YOU WILL INDEMNIFY AND HOLD BORLAND, ITS RELATED
- * COMPANIES AND ITS SUPPLIERS, HARMLESS FROM AND AGAINST ANY CLAIMS
- * OR LIABILITIES ARISING OUT OF THE USE, REPRODUCTION, OR DISTRIBUTION
- * OF YOUR PROGRAMS, INCLUDING ANY CLAIMS OR LIABILITIES ARISING OUT OF
- * OR RESULTING FROM THE USE, MODIFICATION, OR DISTRIBUTION OF PROGRAMS
- * OR FILES CREATED FROM, BASED ON, AND/OR DERIVED FROM THIS SOURCE
- * CODE FILE.
- */
- package borland.samples.intl.beans;
-
- import borland.jbcl.model.*;
- import borland.jbcl.util.*;
-
- /**
- * Extends BasicTreeContainer with a method for adding child nodes
- * to the tree in collated order.
- */
- public class BasicOrderedTreeContainer extends BasicTreeContainer {
-
- public BasicOrderedTreeContainer() {
- }
-
- public BasicOrderedTreeContainer(Object root) {
- super(root);
- }
-
- public GraphLocation addOrderedChild(GraphLocation gl, Object data, BinaryComparator binaryComparator) {
- int compareResult;
-
- LinkedTreeNode compareTreeNode = ((LinkedTreeNode) gl).getFirstChild();
- while (compareTreeNode != null) {
- compareResult = binaryComparator.compare(data, get(compareTreeNode));
- if (compareResult < 0) {
- return super.addChild(gl, compareTreeNode, data);
- }
- if (compareResult == 0) {
- return compareTreeNode;
- }
- compareTreeNode = compareTreeNode.getNextSibling();
- }
- return super.addChild(gl, data);
- }
-
- }
-
-