home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 October / PCO1097.ISO / FilesBBS / WIN95 / IAVAZIP.EXE / DATA.Z / MapEnumeration.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-08-18  |  1.5 KB  |  59 lines

  1. package com.sfs.awt.treeview;
  2.  
  3. import com.sfs.debug.Debug;
  4. import java.util.Enumeration;
  5.  
  6. public class MapEnumeration implements Enumeration {
  7.    int startRow;
  8.    RootFolder rootFolder;
  9.    int debug_startRow;
  10.  
  11.    public Object nextElement() {
  12.       return this.rootFolder.Rows.size() > this.startRow ? this.rootFolder.getItemAt(this.startRow++) : null;
  13.    }
  14.  
  15.    public boolean hasMoreElements() {
  16.       while(this.rootFolder.Rows.size() > this.startRow && !this.rootFolder.getItemAt(this.startRow).isVisible()) {
  17.          ++this.startRow;
  18.       }
  19.  
  20.       if (this.rootFolder.Rows.size() > this.startRow) {
  21.          return true;
  22.       } else {
  23.          return false;
  24.       }
  25.    }
  26.  
  27.    public void Debug() {
  28.       int var1 = this.startRow;
  29.       int var2 = 0;
  30.  
  31.       while(this.hasMoreElements()) {
  32.          Item var3 = (Item)this.nextElement();
  33.          Debug.Info(Integer.toString(var2++) + "\t: " + var3.getName() + " mapping " + Integer.toString(this.rootFolder.indexOf(var3)) + " -> " + Integer.toString(var1++));
  34.       }
  35.  
  36.       Debug.Info("________________________________________________\n");
  37.    }
  38.  
  39.    public MapEnumeration(RootFolder var1, int var2) {
  40.       this.rootFolder = var1;
  41.       this.debug_startRow = var2;
  42.       if (var2 >= this.rootFolder.getHeight()) {
  43.          this.startRow = this.rootFolder.Rows.size();
  44.       } else {
  45.          for(int var3 = 0; var3 < this.rootFolder.Rows.size(); ++var3) {
  46.             if (this.startRow == var2 && this.rootFolder.getItemAt(var3).isVisible()) {
  47.                this.startRow = var3;
  48.                return;
  49.             }
  50.  
  51.             if (this.rootFolder.getItemAt(var3).isVisible()) {
  52.                ++this.startRow;
  53.             }
  54.          }
  55.  
  56.       }
  57.    }
  58. }
  59.