home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / awt / FocusManager.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.9 KB  |  172 lines

  1. package java.awt;
  2.  
  3. import java.io.Serializable;
  4.  
  5. class FocusManager implements Serializable {
  6.    Container focusRoot;
  7.    Component focusOwner;
  8.    static final long serialVersionUID = 2491878825643557906L;
  9.  
  10.    FocusManager(Container var1) {
  11.       this.focusRoot = var1;
  12.    }
  13.  
  14.    void activateFocus() {
  15.       boolean var1 = false;
  16.       if (this.focusOwner != null) {
  17.          if (!(var1 = this.assignFocus(this.focusOwner, false))) {
  18.             var1 = this.focusNext(this.focusOwner);
  19.          }
  20.       } else {
  21.          var1 = this.focusForward(this.focusRoot);
  22.       }
  23.  
  24.       if (!var1) {
  25.          this.focusRoot.requestFocus();
  26.       }
  27.  
  28.    }
  29.  
  30.    synchronized void setFocusOwner(Component var1) {
  31.       this.focusOwner = var1;
  32.    }
  33.  
  34.    Component getFocusOwner() {
  35.       return this.focusOwner;
  36.    }
  37.  
  38.    boolean focusNext() {
  39.       return this.focusNext(this.focusOwner);
  40.    }
  41.  
  42.    boolean focusNext(Component var1) {
  43.       Object var2 = this.focusRoot.getTreeLock();
  44.       synchronized(var2) {
  45.          Object var3 = var1;
  46.          Container var5;
  47.          if (var1 != null && var1.parent != null) {
  48.             do {
  49.                boolean var4 = false;
  50.                var5 = ((Component)var3).parent;
  51.  
  52.                for(int var7 = 0; var7 < var5.ncomponents; ++var7) {
  53.                   Component var6 = var5.component[var7];
  54.                   if (var4) {
  55.                      if (this.assignFocus(var6)) {
  56.                         boolean var13 = true;
  57.                         return var13;
  58.                      }
  59.  
  60.                      if (var6 instanceof Container && var6.isVisible() && var6.isEnabled() && this.focusForward((Container)var6)) {
  61.                         boolean var8 = true;
  62.                         return var8;
  63.                      }
  64.                   } else if (var6 == var3) {
  65.                      var4 = true;
  66.                   }
  67.                }
  68.  
  69.                var3 = var5;
  70.             } while(var5 != this.focusRoot && var5.parent != null);
  71.          }
  72.  
  73.          if (this.focusForward(this.focusRoot)) {
  74.             boolean var12 = true;
  75.             return var12;
  76.          } else {
  77.             boolean var11 = false;
  78.             return var11;
  79.          }
  80.       }
  81.    }
  82.  
  83.    boolean focusPrevious() {
  84.       return this.focusPrevious(this.focusOwner);
  85.    }
  86.  
  87.    boolean focusPrevious(Component var1) {
  88.       Object var2 = this.focusRoot.getTreeLock();
  89.       synchronized(var2) {
  90.          Object var3 = var1;
  91.          Container var5;
  92.          if (var1 != null && var1.parent != null) {
  93.             do {
  94.                boolean var4 = false;
  95.                var5 = ((Component)var3).parent;
  96.                if (var5 != null) {
  97.                   for(int var7 = var5.ncomponents - 1; var7 >= 0; --var7) {
  98.                      Component var6 = var5.component[var7];
  99.                      if (var4) {
  100.                         if (this.assignFocus(var6)) {
  101.                            boolean var13 = true;
  102.                            return var13;
  103.                         }
  104.  
  105.                         if (var6 instanceof Container && var6.isVisible() && var6.isEnabled() && this.focusBackward((Container)var6)) {
  106.                            boolean var8 = true;
  107.                            return var8;
  108.                         }
  109.                      } else if (var6 == var3) {
  110.                         var4 = true;
  111.                      }
  112.                   }
  113.                }
  114.  
  115.                var3 = var5;
  116.             } while(var5 != null && var5 != this.focusRoot);
  117.          }
  118.  
  119.          if (this.focusBackward(this.focusRoot)) {
  120.             boolean var12 = true;
  121.             return var12;
  122.          } else {
  123.             boolean var11 = false;
  124.             return var11;
  125.          }
  126.       }
  127.    }
  128.  
  129.    boolean assignFocus(Component var1) {
  130.       return this.assignFocus(var1, true);
  131.    }
  132.  
  133.    synchronized boolean assignFocus(Component var1, boolean var2) {
  134.       if (!var1.isVisible() || !var1.isEnabled() || var2 && !var1.isFocusTraversable()) {
  135.          return false;
  136.       } else {
  137.          var1.requestFocus();
  138.          return true;
  139.       }
  140.    }
  141.  
  142.    synchronized boolean focusForward(Container var1) {
  143.       for(int var2 = 0; var2 < var1.ncomponents; ++var2) {
  144.          Component var3 = var1.component[var2];
  145.          if (this.assignFocus(var3)) {
  146.             return true;
  147.          }
  148.  
  149.          if (var3 instanceof Container && var3.isVisible() && var3.isEnabled() && this.focusForward((Container)var3)) {
  150.             return true;
  151.          }
  152.       }
  153.  
  154.       return false;
  155.    }
  156.  
  157.    synchronized boolean focusBackward(Container var1) {
  158.       for(int var2 = var1.ncomponents - 1; var2 >= 0; --var2) {
  159.          Component var3 = var1.component[var2];
  160.          if (this.assignFocus(var3)) {
  161.             return true;
  162.          }
  163.  
  164.          if (var3 instanceof Container && var3.isVisible() && var3.isEnabled() && this.focusBackward((Container)var3)) {
  165.             return true;
  166.          }
  167.       }
  168.  
  169.       return false;
  170.    }
  171. }
  172.