示例#1
0
 public void drawConnectors(ITreeElement node) {
   for (ITreeElement child : node.getChildren()) {
     if (child instanceof IRevision) {
       createConnector(node, child, MergePoint.INITIAL);
       for (MergePoint mergeToPoint : ((IRevision) child).getMergeToRevisions()) {
         IRevision mergeToRevision = mergeToPoint.getMergeRevision();
         for (String brTo : mergeToRevision.getBranchTags()) {
           if (isBranchVisible(brTo)) {
             createConnector(child, mergeToRevision, MergePoint.MERGE);
             break;
           }
         }
       }
       drawConnectors(child);
     } else if (child instanceof IBranch) {
       IBranch childBranch = (IBranch) child;
       if ((!childBranch.isEmpty() || this.getTreeViewConfig().drawEmptyBranches())
           && isBranchVisible(childBranch.getName())) {
         // case when parent is dead revision and child element is branch
         if (!(node instanceof IRevision && ((IRevision) node).getLogEntry().isDeletion())) {
           createConnector(node, child, MergePoint.INITIAL);
         }
         drawConnectors(child);
       }
     }
   }
 }