home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 144 / DPCS0200.iso / Internet / Supanet / system / swing.jar / javax / swing / plaf / basic / BasicInternalFrameUI$GlassPaneDispatcher.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-05  |  2.9 KB  |  105 lines

  1. package javax.swing.plaf.basic;
  2.  
  3. import java.awt.AWTEvent;
  4. import java.awt.Component;
  5. import java.awt.Container;
  6. import java.awt.Point;
  7. import java.awt.event.InputEvent;
  8. import java.awt.event.MouseEvent;
  9. import java.awt.peer.LightweightPeer;
  10. import javax.swing.event.MouseInputListener;
  11.  
  12. public class BasicInternalFrameUI$GlassPaneDispatcher implements MouseInputListener {
  13.    // $FF: synthetic field
  14.    private final BasicInternalFrameUI this$0;
  15.    private Component mouseEventTarget;
  16.  
  17.    protected BasicInternalFrameUI$GlassPaneDispatcher(BasicInternalFrameUI var1) {
  18.       this.this$0 = var1;
  19.       this.mouseEventTarget = null;
  20.    }
  21.  
  22.    private Component findComponentAt(Container var1, int var2, int var3) {
  23.       if (!((Component)var1).contains(var2, var3)) {
  24.          return var1;
  25.       } else {
  26.          int var4 = var1.getComponentCount();
  27.          Component[] var5 = var1.getComponents();
  28.  
  29.          for(int var6 = 0; var6 < var4; ++var6) {
  30.             Component var7 = var5[var6];
  31.             Point var8 = var7.getLocation();
  32.             if (var7 != null && var7.contains(var2 - var8.x, var3 - var8.y) && var7.getPeer() instanceof LightweightPeer && var7.isVisible()) {
  33.                if (!(var7 instanceof Container)) {
  34.                   return var7;
  35.                }
  36.  
  37.                Container var9 = (Container)var7;
  38.                Point var10 = ((Component)var9).getLocation();
  39.                Component var11 = this.findComponentAt(var9, var2 - var10.x, var3 - var10.y);
  40.                if (var11 != null) {
  41.                   return var11;
  42.                }
  43.             }
  44.          }
  45.  
  46.          return var1;
  47.       }
  48.    }
  49.  
  50.    private void forwardMouseEvent(MouseEvent var1) {
  51.       Component var2 = this.findComponentAt(this.this$0.frame.getContentPane(), var1.getX(), var1.getY());
  52.       if (var2 != this.mouseEventTarget) {
  53.          this.setMouseTarget(var2, var1);
  54.       }
  55.  
  56.       this.retargetMouseEvent(((AWTEvent)var1).getID(), var1);
  57.    }
  58.  
  59.    public void mouseClicked(MouseEvent var1) {
  60.    }
  61.  
  62.    public void mouseDragged(MouseEvent var1) {
  63.    }
  64.  
  65.    public void mouseEntered(MouseEvent var1) {
  66.       this.forwardMouseEvent(var1);
  67.    }
  68.  
  69.    public void mouseExited(MouseEvent var1) {
  70.       this.forwardMouseEvent(var1);
  71.    }
  72.  
  73.    public void mouseMoved(MouseEvent var1) {
  74.       this.forwardMouseEvent(var1);
  75.    }
  76.  
  77.    public void mousePressed(MouseEvent var1) {
  78.       if (this.this$0.borderListener != null) {
  79.          this.this$0.borderListener.mousePressed(var1);
  80.       }
  81.  
  82.       this.forwardMouseEvent(var1);
  83.    }
  84.  
  85.    public void mouseReleased(MouseEvent var1) {
  86.    }
  87.  
  88.    void retargetMouseEvent(int var1, MouseEvent var2) {
  89.       MouseEvent var3 = new MouseEvent(this.mouseEventTarget, var1, ((InputEvent)var2).getWhen(), ((InputEvent)var2).getModifiers(), var2.getX(), var2.getY(), var2.getClickCount(), var2.isPopupTrigger());
  90.       this.mouseEventTarget.dispatchEvent(var3);
  91.    }
  92.  
  93.    private void setMouseTarget(Component var1, MouseEvent var2) {
  94.       if (this.mouseEventTarget != null) {
  95.          this.retargetMouseEvent(505, var2);
  96.       }
  97.  
  98.       this.mouseEventTarget = var1;
  99.       if (this.mouseEventTarget != null) {
  100.          this.retargetMouseEvent(504, var2);
  101.       }
  102.  
  103.    }
  104. }
  105.