home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 June / CHIPHEFT062001.ISO / browser / nc32lyc / comm.z / java40.jar / java / awt / Component.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-08-15  |  24.7 KB  |  1,484 lines

  1. package java.awt;
  2.  
  3. import java.awt.event.ComponentEvent;
  4. import java.awt.event.ComponentListener;
  5. import java.awt.event.FocusEvent;
  6. import java.awt.event.FocusListener;
  7. import java.awt.event.KeyEvent;
  8. import java.awt.event.KeyListener;
  9. import java.awt.event.MouseEvent;
  10. import java.awt.event.MouseListener;
  11. import java.awt.event.MouseMotionListener;
  12. import java.awt.event.PaintEvent;
  13. import java.awt.image.ColorModel;
  14. import java.awt.image.ImageObserver;
  15. import java.awt.image.ImageProducer;
  16. import java.awt.peer.ComponentPeer;
  17. import java.awt.peer.LightweightPeer;
  18. import java.io.IOException;
  19. import java.io.ObjectInputStream;
  20. import java.io.ObjectOutputStream;
  21. import java.io.PrintStream;
  22. import java.io.PrintWriter;
  23. import java.io.Serializable;
  24. import java.util.Locale;
  25. import java.util.Vector;
  26.  
  27. public abstract class Component implements ImageObserver, MenuContainer, Serializable {
  28.    transient ComponentPeer peer;
  29.    transient Container parent;
  30.    // $FF: renamed from: x int
  31.    int field_0;
  32.    // $FF: renamed from: y int
  33.    int field_1;
  34.    int width;
  35.    int height;
  36.    Color foreground;
  37.    Color background;
  38.    Font font;
  39.    Cursor cursor = Cursor.getPredefinedCursor(0);
  40.    Locale locale;
  41.    boolean visible = true;
  42.    boolean enabled = true;
  43.    boolean valid = false;
  44.    Vector popups;
  45.    String name;
  46.    static final Object LOCK = new Object();
  47.    Dimension minSize;
  48.    Dimension prefSize;
  49.    boolean newEventsOnly = false;
  50.    transient ComponentListener componentListener;
  51.    transient FocusListener focusListener;
  52.    transient KeyListener keyListener;
  53.    transient MouseListener mouseListener;
  54.    transient MouseMotionListener mouseMotionListener;
  55.    static final String actionListenerK = "actionL";
  56.    static final String adjustmentListenerK = "adjustmentL";
  57.    static final String componentListenerK = "componentL";
  58.    static final String containerListenerK = "containerL";
  59.    static final String focusListenerK = "focusL";
  60.    static final String itemListenerK = "itemL";
  61.    static final String keyListenerK = "keyL";
  62.    static final String mouseListenerK = "mouseL";
  63.    static final String mouseMotionListenerK = "mouseMotionL";
  64.    static final String textListenerK = "textL";
  65.    static final String windowListenerK = "windowL";
  66.    long eventMask;
  67.    static boolean isInc;
  68.    static int incRate;
  69.    public static final float TOP_ALIGNMENT = 0.0F;
  70.    public static final float CENTER_ALIGNMENT = 0.5F;
  71.    public static final float BOTTOM_ALIGNMENT = 1.0F;
  72.    public static final float LEFT_ALIGNMENT = 0.0F;
  73.    public static final float RIGHT_ALIGNMENT = 1.0F;
  74.    private static final long serialVersionUID = -7644114512714619750L;
  75.    private int componentSerializedDataVersion = 1;
  76.  
  77.    protected Component() {
  78.    }
  79.  
  80.    public String getName() {
  81.       return this.name;
  82.    }
  83.  
  84.    public void setName(String var1) {
  85.       this.name = var1;
  86.    }
  87.  
  88.    public Container getParent() {
  89.       return this.parent;
  90.    }
  91.  
  92.    public ComponentPeer getPeer() {
  93.       return this.peer;
  94.    }
  95.  
  96.    public final Object getTreeLock() {
  97.       return LOCK;
  98.    }
  99.  
  100.    public Toolkit getToolkit() {
  101.       ComponentPeer var1 = this.peer;
  102.       if (var1 != null && !(var1 instanceof LightweightPeer)) {
  103.          return var1.getToolkit();
  104.       } else {
  105.          Container var2 = this.parent;
  106.          return var2 != null ? ((Component)var2).getToolkit() : Toolkit.getDefaultToolkit();
  107.       }
  108.    }
  109.  
  110.    public boolean isValid() {
  111.       return this.peer != null && this.valid;
  112.    }
  113.  
  114.    public boolean isVisible() {
  115.       return this.visible;
  116.    }
  117.  
  118.    public boolean isShowing() {
  119.       if (this.visible && this.peer != null) {
  120.          Container var1 = this.parent;
  121.          return var1 == null || ((Component)var1).isShowing();
  122.       } else {
  123.          return false;
  124.       }
  125.    }
  126.  
  127.    public boolean isEnabled() {
  128.       return this.enabled;
  129.    }
  130.  
  131.    public void setEnabled(boolean var1) {
  132.       this.enable(var1);
  133.    }
  134.  
  135.    public void enable() {
  136.       if (!this.enabled) {
  137.          synchronized(this){}
  138.  
  139.          try {
  140.             this.enabled = true;
  141.             ComponentPeer var3 = this.peer;
  142.             if (var3 != null) {
  143.                var3.enable();
  144.             }
  145.          } catch (Throwable var5) {
  146.             throw var5;
  147.          }
  148.  
  149.       }
  150.    }
  151.  
  152.    public void enable(boolean var1) {
  153.       if (var1) {
  154.          this.enable();
  155.       } else {
  156.          this.disable();
  157.       }
  158.    }
  159.  
  160.    public void disable() {
  161.       if (this.enabled) {
  162.          synchronized(this){}
  163.  
  164.          try {
  165.             this.enabled = false;
  166.             ComponentPeer var3 = this.peer;
  167.             if (var3 != null) {
  168.                var3.disable();
  169.             }
  170.          } catch (Throwable var5) {
  171.             throw var5;
  172.          }
  173.  
  174.       }
  175.    }
  176.  
  177.    public void setVisible(boolean var1) {
  178.       this.show(var1);
  179.    }
  180.  
  181.    public void show() {
  182.       if (!this.visible) {
  183.          Object var1 = LOCK;
  184.          synchronized(var1){}
  185.  
  186.          try {
  187.             this.visible = true;
  188.             ComponentPeer var3 = this.peer;
  189.             if (var3 != null) {
  190.                var3.show();
  191.                if (var3 instanceof LightweightPeer) {
  192.                   this.repaint();
  193.                }
  194.             }
  195.  
  196.             if (this.componentListener != null || (this.eventMask & 1L) != 0L) {
  197.                ComponentEvent var4 = new ComponentEvent(this, 102);
  198.                Toolkit.getEventQueue().postEvent(var4);
  199.             }
  200.          } catch (Throwable var6) {
  201.             throw var6;
  202.          }
  203.  
  204.          Container var7 = this.parent;
  205.          if (var7 != null) {
  206.             var7.invalidate();
  207.          }
  208.       }
  209.  
  210.    }
  211.  
  212.    public void show(boolean var1) {
  213.       if (var1) {
  214.          this.show();
  215.       } else {
  216.          this.hide();
  217.       }
  218.    }
  219.  
  220.    public void hide() {
  221.       if (this.visible) {
  222.          if (this instanceof Dialog) {
  223.             ((Dialog)this).__hideDialog();
  224.          }
  225.  
  226.          Object var1 = LOCK;
  227.          synchronized(var1){}
  228.  
  229.          try {
  230.             this.visible = false;
  231.             ComponentPeer var3 = this.peer;
  232.             if (var3 != null) {
  233.                var3.hide();
  234.                if (var3 instanceof LightweightPeer) {
  235.                   this.repaint();
  236.                }
  237.             }
  238.  
  239.             if (this.componentListener != null || (this.eventMask & 1L) != 0L) {
  240.                ComponentEvent var4 = new ComponentEvent(this, 103);
  241.                Toolkit.getEventQueue().postEvent(var4);
  242.             }
  243.          } catch (Throwable var6) {
  244.             throw var6;
  245.          }
  246.  
  247.          Container var7 = this.parent;
  248.          if (var7 != null) {
  249.             var7.invalidate();
  250.          }
  251.       }
  252.  
  253.    }
  254.  
  255.    public Color getForeground() {
  256.       Color var1 = this.foreground;
  257.       if (var1 != null) {
  258.          return var1;
  259.       } else {
  260.          Container var2 = this.parent;
  261.          return var2 != null ? ((Component)var2).getForeground() : null;
  262.       }
  263.    }
  264.  
  265.    public void setForeground(Color var1) {
  266.       ComponentPeer var2 = this.peer;
  267.       this.foreground = var1;
  268.       if (var2 != null) {
  269.          var1 = this.getForeground();
  270.          if (var1 != null) {
  271.             var2.setForeground(var1);
  272.          }
  273.       }
  274.  
  275.    }
  276.  
  277.    public Color getBackground() {
  278.       Color var1 = this.background;
  279.       if (var1 != null) {
  280.          return var1;
  281.       } else {
  282.          Container var2 = this.parent;
  283.          return var2 != null ? ((Component)var2).getBackground() : null;
  284.       }
  285.    }
  286.  
  287.    public void setBackground(Color var1) {
  288.       ComponentPeer var2 = this.peer;
  289.       this.background = var1;
  290.       if (var2 != null) {
  291.          var1 = this.getBackground();
  292.          if (var1 != null) {
  293.             var2.setBackground(var1);
  294.          }
  295.       }
  296.  
  297.    }
  298.  
  299.    public Font getFont() {
  300.       Font var1 = this.font;
  301.       if (var1 != null) {
  302.          return var1;
  303.       } else {
  304.          Container var2 = this.parent;
  305.          return var2 != null ? ((Component)var2).getFont() : null;
  306.       }
  307.    }
  308.  
  309.    public synchronized void setFont(Font var1) {
  310.       ComponentPeer var2 = this.peer;
  311.       this.font = var1;
  312.       if (var2 != null) {
  313.          var1 = this.getFont();
  314.          if (var1 != null) {
  315.             var2.setFont(var1);
  316.          }
  317.       }
  318.  
  319.    }
  320.  
  321.    public Locale getLocale() {
  322.       Locale var1 = this.locale;
  323.       if (var1 != null) {
  324.          return var1;
  325.       } else {
  326.          Container var2 = this.parent;
  327.          if (var2 == null) {
  328.             throw new IllegalComponentStateException("This component must have a parent in order to determine its locale");
  329.          } else {
  330.             return ((Component)var2).getLocale();
  331.          }
  332.       }
  333.    }
  334.  
  335.    public void setLocale(Locale var1) {
  336.       this.locale = var1;
  337.    }
  338.  
  339.    public ColorModel getColorModel() {
  340.       ComponentPeer var1 = this.peer;
  341.       return var1 != null && !(var1 instanceof LightweightPeer) ? var1.getColorModel() : this.getToolkit().getColorModel();
  342.    }
  343.  
  344.    public Point getLocation() {
  345.       return this.location();
  346.    }
  347.  
  348.    public Point getLocationOnScreen() {
  349.       Object var2 = LOCK;
  350.       synchronized(var2){}
  351.  
  352.       Point var1;
  353.       try {
  354.          if (this.peer == null || !this.isShowing()) {
  355.             throw new IllegalComponentStateException("component must be showing on the screen to determine its location");
  356.          }
  357.  
  358.          if (!(this.peer instanceof LightweightPeer)) {
  359.             Point var10 = this.peer.getLocationOnScreen();
  360.             var1 = var10;
  361.             return var1;
  362.          }
  363.  
  364.          Container var4 = this.getNativeContainer();
  365.          Point var5 = var4.peer.getLocationOnScreen();
  366.  
  367.          for(Object var6 = this; var6 != var4; var6 = ((Component)var6).getParent()) {
  368.             var5.x += ((Component)var6).field_0;
  369.             var5.y += ((Component)var6).field_1;
  370.          }
  371.  
  372.          var1 = var5;
  373.       } catch (Throwable var8) {
  374.          throw var8;
  375.       }
  376.  
  377.       return var1;
  378.    }
  379.  
  380.    public Point location() {
  381.       return new Point(this.field_0, this.field_1);
  382.    }
  383.  
  384.    public void setLocation(int var1, int var2) {
  385.       this.move(var1, var2);
  386.    }
  387.  
  388.    public void move(int var1, int var2) {
  389.       this.setBounds(var1, var2, this.width, this.height);
  390.    }
  391.  
  392.    public void setLocation(Point var1) {
  393.       this.setLocation(var1.x, var1.y);
  394.    }
  395.  
  396.    public Dimension getSize() {
  397.       return this.size();
  398.    }
  399.  
  400.    public Dimension size() {
  401.       return new Dimension(this.width, this.height);
  402.    }
  403.  
  404.    public void setSize(int var1, int var2) {
  405.       this.resize(var1, var2);
  406.    }
  407.  
  408.    public void resize(int var1, int var2) {
  409.       this.setBounds(this.field_0, this.field_1, var1, var2);
  410.    }
  411.  
  412.    public void setSize(Dimension var1) {
  413.       this.resize(var1);
  414.    }
  415.  
  416.    public void resize(Dimension var1) {
  417.       this.setSize(var1.width, var1.height);
  418.    }
  419.  
  420.    public Rectangle getBounds() {
  421.       return this.bounds();
  422.    }
  423.  
  424.    public Rectangle bounds() {
  425.       return new Rectangle(this.field_0, this.field_1, this.width, this.height);
  426.    }
  427.  
  428.    public void setBounds(int var1, int var2, int var3, int var4) {
  429.       this.reshape(var1, var2, var3, var4);
  430.    }
  431.  
  432.    public void reshape(int var1, int var2, int var3, int var4) {
  433.       Object var5 = LOCK;
  434.       synchronized(var5){}
  435.  
  436.       try {
  437.          boolean var7 = this.width != var3 || this.height != var4;
  438.          boolean var8 = this.field_0 != var1 || this.field_1 != var2;
  439.          if (var7 || var8) {
  440.             boolean var9 = this.peer instanceof LightweightPeer;
  441.             int var10 = this.field_0;
  442.             int var11 = this.field_1;
  443.             if (this.parent != null) {
  444.                var10 += this.parent.field_0;
  445.                var11 += this.parent.field_1;
  446.             }
  447.  
  448.             int var12 = this.width;
  449.             int var13 = this.height;
  450.             this.field_0 = var1;
  451.             this.field_1 = var2;
  452.             this.width = var3;
  453.             this.height = var4;
  454.             if (this.peer != null) {
  455.                if (var9) {
  456.                   this.peer.setBounds(var1, var2, var3, var4);
  457.                } else {
  458.                   int var14 = var1;
  459.                   int var15 = var2;
  460.  
  461.                   for(Container var16 = this.parent; var16 != null && var16.peer instanceof LightweightPeer; var16 = var16.parent) {
  462.                      var14 += var16.field_0;
  463.                      var15 += var16.field_1;
  464.                   }
  465.  
  466.                   this.peer.setBounds(var14, var15, var3, var4);
  467.                }
  468.  
  469.                if (var7) {
  470.                   this.invalidate();
  471.                   if (this.componentListener != null || (this.eventMask & 1L) != 0L) {
  472.                      ComponentEvent var19 = new ComponentEvent(this, 101);
  473.                      Toolkit.getEventQueue().postEvent(var19);
  474.                   }
  475.                }
  476.  
  477.                if (var8 && (this.componentListener != null || (this.eventMask & 1L) != 0L)) {
  478.                   ComponentEvent var20 = new ComponentEvent(this, 100);
  479.                   Toolkit.getEventQueue().postEvent(var20);
  480.                }
  481.  
  482.                if (this.parent != null && this.parent.valid) {
  483.                   this.parent.invalidate();
  484.                }
  485.             }
  486.  
  487.             if (var9 && this.isShowing()) {
  488.                this.parent.repaint(var10, var11, var12, var13);
  489.                this.repaint();
  490.             }
  491.          }
  492.       } catch (Throwable var18) {
  493.          throw var18;
  494.       }
  495.  
  496.    }
  497.  
  498.    public void setBounds(Rectangle var1) {
  499.       this.setBounds(var1.x, var1.y, var1.width, var1.height);
  500.    }
  501.  
  502.    public Dimension getPreferredSize() {
  503.       return this.preferredSize();
  504.    }
  505.  
  506.    public Dimension preferredSize() {
  507.       Dimension var1 = this.prefSize;
  508.       if (var1 != null && this.isValid()) {
  509.          return var1;
  510.       } else {
  511.          Object var3 = LOCK;
  512.          synchronized(var3){}
  513.  
  514.          Dimension var2;
  515.          try {
  516.             this.prefSize = this.peer != null ? this.peer.preferredSize() : this.getMinimumSize();
  517.             var2 = this.prefSize;
  518.          } catch (Throwable var6) {
  519.             throw var6;
  520.          }
  521.  
  522.          return var2;
  523.       }
  524.    }
  525.  
  526.    public Dimension getMinimumSize() {
  527.       return this.minimumSize();
  528.    }
  529.  
  530.    public Dimension minimumSize() {
  531.       Dimension var1 = this.minSize;
  532.       if (var1 != null && this.isValid()) {
  533.          return var1;
  534.       } else {
  535.          Object var3 = LOCK;
  536.          synchronized(var3){}
  537.  
  538.          Dimension var2;
  539.          try {
  540.             this.minSize = this.peer != null ? this.peer.minimumSize() : this.size();
  541.             var2 = this.minSize;
  542.          } catch (Throwable var6) {
  543.             throw var6;
  544.          }
  545.  
  546.          return var2;
  547.       }
  548.    }
  549.  
  550.    public Dimension getMaximumSize() {
  551.       return new Dimension(32767, 32767);
  552.    }
  553.  
  554.    public float getAlignmentX() {
  555.       return 0.5F;
  556.    }
  557.  
  558.    public float getAlignmentY() {
  559.       return 0.5F;
  560.    }
  561.  
  562.    public void doLayout() {
  563.       this.layout();
  564.    }
  565.  
  566.    public void layout() {
  567.    }
  568.  
  569.    public void validate() {
  570.       if (!this.valid) {
  571.          Object var1 = LOCK;
  572.          synchronized(var1){}
  573.  
  574.          try {
  575.             this.valid = true;
  576.          } catch (Throwable var3) {
  577.             throw var3;
  578.          }
  579.  
  580.       }
  581.    }
  582.  
  583.    public void invalidate() {
  584.       Object var1 = LOCK;
  585.       synchronized(var1){}
  586.  
  587.       try {
  588.          this.valid = false;
  589.          this.prefSize = null;
  590.          this.minSize = null;
  591.          if (this.parent != null && this.parent.valid) {
  592.             this.parent.invalidate();
  593.          }
  594.       } catch (Throwable var3) {
  595.          throw var3;
  596.       }
  597.  
  598.    }
  599.  
  600.    public Graphics getGraphics() {
  601.       if (this.peer instanceof LightweightPeer) {
  602.          Graphics var2 = this.parent.getGraphics();
  603.          var2.translate(this.field_0, this.field_1);
  604.          var2.setClip(0, 0, this.width, this.height);
  605.          return var2;
  606.       } else {
  607.          ComponentPeer var1 = this.peer;
  608.          return var1 != null ? var1.getGraphics() : null;
  609.       }
  610.    }
  611.  
  612.    public FontMetrics getFontMetrics(Font var1) {
  613.       ComponentPeer var2 = this.peer;
  614.       return var2 != null && !(var2 instanceof LightweightPeer) ? var2.getFontMetrics(var1) : this.getToolkit().getFontMetrics(var1);
  615.    }
  616.  
  617.    public synchronized void setCursor(Cursor var1) {
  618.       this.cursor = var1;
  619.       ComponentPeer var2 = this.peer;
  620.       if (var2 != null) {
  621.          var2.setCursor(var1);
  622.       }
  623.  
  624.    }
  625.  
  626.    public Cursor getCursor() {
  627.       return this.cursor;
  628.    }
  629.  
  630.    public void paint(Graphics var1) {
  631.    }
  632.  
  633.    public void update(Graphics var1) {
  634.       if (!(this.peer instanceof LightweightPeer)) {
  635.          var1.setColor(this.getBackground());
  636.          var1.fillRect(0, 0, this.width, this.height);
  637.          var1.setColor(this.getForeground());
  638.       }
  639.  
  640.       this.paint(var1);
  641.    }
  642.  
  643.    public void paintAll(Graphics var1) {
  644.       ComponentPeer var2 = this.peer;
  645.       if (this.visible && var2 != null) {
  646.          this.validate();
  647.          if (var2 instanceof LightweightPeer) {
  648.             this.paint(var1);
  649.             return;
  650.          }
  651.  
  652.          var2.paint(var1);
  653.       }
  654.  
  655.    }
  656.  
  657.    public void repaint() {
  658.       this.repaint(0L, 0, 0, this.width, this.height);
  659.    }
  660.  
  661.    public void repaint(long var1) {
  662.       this.repaint(var1, 0, 0, this.width, this.height);
  663.    }
  664.  
  665.    public void repaint(int var1, int var2, int var3, int var4) {
  666.       this.repaint(0L, var1, var2, var3, var4);
  667.    }
  668.  
  669.    public void repaint(long var1, int var3, int var4, int var5, int var6) {
  670.       if (this.peer instanceof LightweightPeer) {
  671.          int var11 = this.field_0 + (var3 < 0 ? 0 : var3);
  672.          int var8 = this.field_1 + (var4 < 0 ? 0 : var4);
  673.          int var9 = var5 > this.width ? this.width : var5;
  674.          int var10 = var6 > this.height ? this.height : var6;
  675.          this.parent.repaint(var1, var11, var8, var9, var10);
  676.       } else {
  677.          ComponentPeer var7 = this.peer;
  678.          if (var7 != null && var5 > 0 && var6 > 0) {
  679.             var7.repaint(var1, var3, var4, var5, var6);
  680.          }
  681.  
  682.       }
  683.    }
  684.  
  685.    public void print(Graphics var1) {
  686.       this.paint(var1);
  687.    }
  688.  
  689.    public void printAll(Graphics var1) {
  690.       ComponentPeer var2 = this.peer;
  691.       if (this.visible && var2 != null) {
  692.          this.validate();
  693.          var2.print(var1);
  694.       }
  695.  
  696.    }
  697.  
  698.    public boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
  699.       int var7 = -1;
  700.       if ((var2 & 48) != 0) {
  701.          var7 = 0;
  702.       } else if ((var2 & 8) != 0 && isInc) {
  703.          try {
  704.             var7 = incRate;
  705.             if (var7 < 0) {
  706.                var7 = 0;
  707.             }
  708.          } catch (Exception var8) {
  709.             var7 = 100;
  710.          }
  711.       }
  712.  
  713.       if (var7 >= 0) {
  714.          this.repaint((long)var7, 0, 0, this.width, this.height);
  715.       }
  716.  
  717.       return (var2 & 160) == 0;
  718.    }
  719.  
  720.    public Image createImage(ImageProducer var1) {
  721.       ComponentPeer var2 = this.peer;
  722.       return var2 != null && !(var2 instanceof LightweightPeer) ? var2.createImage(var1) : this.getToolkit().createImage(var1);
  723.    }
  724.  
  725.    public Image createImage(int var1, int var2) {
  726.       ComponentPeer var3 = this.peer;
  727.       if (var3 instanceof LightweightPeer) {
  728.          return this.parent.createImage(var1, var2);
  729.       } else {
  730.          return var3 != null ? var3.createImage(var1, var2) : null;
  731.       }
  732.    }
  733.  
  734.    public boolean prepareImage(Image var1, ImageObserver var2) {
  735.       return this.prepareImage(var1, -1, -1, var2);
  736.    }
  737.  
  738.    public boolean prepareImage(Image var1, int var2, int var3, ImageObserver var4) {
  739.       ComponentPeer var5 = this.peer;
  740.       if (var5 instanceof LightweightPeer) {
  741.          return this.parent.prepareImage(var1, var2, var3, var4);
  742.       } else {
  743.          return var5 != null ? var5.prepareImage(var1, var2, var3, var4) : this.getToolkit().prepareImage(var1, var2, var3, var4);
  744.       }
  745.    }
  746.  
  747.    public int checkImage(Image var1, ImageObserver var2) {
  748.       return this.checkImage(var1, -1, -1, var2);
  749.    }
  750.  
  751.    public int checkImage(Image var1, int var2, int var3, ImageObserver var4) {
  752.       ComponentPeer var5 = this.peer;
  753.       if (var5 instanceof LightweightPeer) {
  754.          return this.parent.checkImage(var1, var2, var3, var4);
  755.       } else {
  756.          return var5 != null ? var5.checkImage(var1, var2, var3, var4) : this.getToolkit().checkImage(var1, var2, var3, var4);
  757.       }
  758.    }
  759.  
  760.    public boolean contains(int var1, int var2) {
  761.       return this.inside(var1, var2);
  762.    }
  763.  
  764.    public boolean inside(int var1, int var2) {
  765.       return var1 >= 0 && var1 < this.width && var2 >= 0 && var2 < this.height;
  766.    }
  767.  
  768.    public boolean contains(Point var1) {
  769.       return this.contains(var1.x, var1.y);
  770.    }
  771.  
  772.    public Component getComponentAt(int var1, int var2) {
  773.       return this.locate(var1, var2);
  774.    }
  775.  
  776.    public Component locate(int var1, int var2) {
  777.       return this.contains(var1, var2) ? this : null;
  778.    }
  779.  
  780.    public Component getComponentAt(Point var1) {
  781.       return this.getComponentAt(var1.x, var1.y);
  782.    }
  783.  
  784.    public void deliverEvent(Event var1) {
  785.       this.postEvent(var1);
  786.    }
  787.  
  788.    public final void dispatchEvent(AWTEvent var1) {
  789.       this.dispatchEventImpl(var1);
  790.    }
  791.  
  792.    void dispatchEventImpl(AWTEvent var1) {
  793.       int var2 = var1.getID();
  794.       switch (var2) {
  795.          case 401:
  796.          case 402:
  797.             Container var9 = (Container)(this instanceof Container ? this : this.parent);
  798.             if (var9 != null) {
  799.                var9.preProcessKeyEvent((KeyEvent)var1);
  800.                if (var1.isConsumed()) {
  801.                   return;
  802.                }
  803.             }
  804.             break;
  805.          case 501:
  806.             if (this instanceof Canvas || this instanceof Panel) {
  807.                this.requestFocus();
  808.             }
  809.             break;
  810.          case 800:
  811.          case 801:
  812.             Graphics var3 = this.getGraphics();
  813.             if (var3 == null) {
  814.                return;
  815.             }
  816.  
  817.             Rectangle var4 = ((PaintEvent)var1).getUpdateRect();
  818.             var3.clipRect(var4.x, var4.y, var4.width, var4.height);
  819.             if (var2 == 800) {
  820.                this.paint(var3);
  821.             } else {
  822.                this.update(var3);
  823.             }
  824.  
  825.             var3.dispose();
  826.             return;
  827.          case 1004:
  828.             if (this.parent != null && !(this instanceof Window)) {
  829.                this.parent.setFocusOwner(this);
  830.             }
  831.             break;
  832.          case 1005:
  833.             if (this.parent != null && !(this instanceof Window)) {
  834.                Window var5 = this.parent.getWindow();
  835.                if (var5 != null && var5.getFocusOwner() == this) {
  836.                   var5.setFocusOwner((Component)null);
  837.                }
  838.             }
  839.       }
  840.  
  841.       if (this.newEventsOnly) {
  842.          if (this.eventEnabled(var1)) {
  843.             this.processEvent(var1);
  844.          }
  845.       } else if (!(var1 instanceof MouseEvent) || this.postsOldMouseEvents()) {
  846.          Event var6 = var1.convertToOld();
  847.          if (var6 != null) {
  848.             int var8 = var6.key;
  849.             int var10 = var6.modifiers;
  850.             this.postEvent(var6);
  851.             if (var6.isConsumed()) {
  852.                var1.consume();
  853.             }
  854.  
  855.             switch (var6.id) {
  856.                case 401:
  857.                case 402:
  858.                case 403:
  859.                case 404:
  860.                   if (var6.key != var8) {
  861.                      ((KeyEvent)var1).setKeyChar(var6.getKeyEventChar());
  862.                   }
  863.  
  864.                   if (var6.modifiers != var10) {
  865.                      ((KeyEvent)var1).setModifiers(var6.modifiers);
  866.                   }
  867.             }
  868.          }
  869.       }
  870.  
  871.       if (!var1.isConsumed() && var1 instanceof KeyEvent) {
  872.          Container var7 = (Container)(this instanceof Container ? this : this.parent);
  873.          if (var7 != null) {
  874.             var7.postProcessKeyEvent((KeyEvent)var1);
  875.          }
  876.       }
  877.  
  878.       if (this.peer != null) {
  879.          this.peer.handleEvent(var1);
  880.       }
  881.  
  882.    }
  883.  
  884.    boolean eventEnabled(AWTEvent var1) {
  885.       switch (var1.id) {
  886.          case 100:
  887.          case 101:
  888.          case 102:
  889.          case 103:
  890.             if ((this.eventMask & 1L) != 0L || this.componentListener != null) {
  891.                return true;
  892.             }
  893.             break;
  894.          case 400:
  895.          case 401:
  896.          case 402:
  897.             if ((this.eventMask & 8L) != 0L || this.keyListener != null) {
  898.                return true;
  899.             }
  900.             break;
  901.          case 500:
  902.          case 501:
  903.          case 502:
  904.          case 504:
  905.          case 505:
  906.             if ((this.eventMask & 16L) != 0L || this.mouseListener != null) {
  907.                return true;
  908.             }
  909.             break;
  910.          case 503:
  911.          case 506:
  912.             if ((this.eventMask & 32L) != 0L || this.mouseMotionListener != null) {
  913.                return true;
  914.             }
  915.             break;
  916.          case 1004:
  917.          case 1005:
  918.             if ((this.eventMask & 4L) != 0L || this.focusListener != null) {
  919.                return true;
  920.             }
  921.       }
  922.  
  923.       if (var1.id > 1999) {
  924.          return true;
  925.       } else {
  926.          return false;
  927.       }
  928.    }
  929.  
  930.    public boolean postEvent(Event var1) {
  931.       if (this.handleEvent(var1)) {
  932.          var1.consume();
  933.          return true;
  934.       } else {
  935.          Container var2 = this.parent;
  936.          int var3 = var1.x;
  937.          int var4 = var1.y;
  938.          if (var2 != null) {
  939.             var1.translate(this.field_0, this.field_1);
  940.             if (((Component)var2).postEvent(var1)) {
  941.                var1.consume();
  942.                return true;
  943.             }
  944.  
  945.             var1.x = var3;
  946.             var1.y = var4;
  947.          }
  948.  
  949.          return false;
  950.       }
  951.    }
  952.  
  953.    public synchronized void addComponentListener(ComponentListener var1) {
  954.       this.componentListener = AWTEventMulticaster.add(this.componentListener, var1);
  955.       this.newEventsOnly = true;
  956.    }
  957.  
  958.    public synchronized void removeComponentListener(ComponentListener var1) {
  959.       this.componentListener = AWTEventMulticaster.remove(this.componentListener, var1);
  960.    }
  961.  
  962.    public synchronized void addFocusListener(FocusListener var1) {
  963.       this.focusListener = AWTEventMulticaster.add(this.focusListener, var1);
  964.       this.newEventsOnly = true;
  965.       if (this.peer instanceof LightweightPeer) {
  966.          this.parent.proxyEnableEvents(4L);
  967.       }
  968.  
  969.    }
  970.  
  971.    public synchronized void removeFocusListener(FocusListener var1) {
  972.       this.focusListener = AWTEventMulticaster.remove(this.focusListener, var1);
  973.    }
  974.  
  975.    public synchronized void addKeyListener(KeyListener var1) {
  976.       this.keyListener = AWTEventMulticaster.add(this.keyListener, var1);
  977.       this.newEventsOnly = true;
  978.       if (this.peer instanceof LightweightPeer) {
  979.          this.parent.proxyEnableEvents(8L);
  980.       }
  981.  
  982.    }
  983.  
  984.    public synchronized void removeKeyListener(KeyListener var1) {
  985.       this.keyListener = AWTEventMulticaster.remove(this.keyListener, var1);
  986.    }
  987.  
  988.    public synchronized void addMouseListener(MouseListener var1) {
  989.       this.mouseListener = AWTEventMulticaster.add(this.mouseListener, var1);
  990.       this.newEventsOnly = true;
  991.       if (this.peer instanceof LightweightPeer) {
  992.          this.parent.proxyEnableEvents(16L);
  993.       }
  994.  
  995.    }
  996.  
  997.    public synchronized void removeMouseListener(MouseListener var1) {
  998.       this.mouseListener = AWTEventMulticaster.remove(this.mouseListener, var1);
  999.    }
  1000.  
  1001.    public synchronized void addMouseMotionListener(MouseMotionListener var1) {
  1002.       this.mouseMotionListener = AWTEventMulticaster.add(this.mouseMotionListener, var1);
  1003.       this.newEventsOnly = true;
  1004.       if (this.peer instanceof LightweightPeer) {
  1005.          this.parent.proxyEnableEvents(32L);
  1006.       }
  1007.  
  1008.    }
  1009.  
  1010.    public synchronized void removeMouseMotionListener(MouseMotionListener var1) {
  1011.       this.mouseMotionListener = AWTEventMulticaster.remove(this.mouseMotionListener, var1);
  1012.    }
  1013.  
  1014.    protected final void enableEvents(long var1) {
  1015.       this.eventMask |= var1;
  1016.       this.newEventsOnly = true;
  1017.       if (this.peer instanceof LightweightPeer) {
  1018.          this.parent.proxyEnableEvents(this.eventMask);
  1019.       }
  1020.  
  1021.    }
  1022.  
  1023.    protected final void disableEvents(long var1) {
  1024.       this.eventMask &= ~var1;
  1025.    }
  1026.  
  1027.    protected void processEvent(AWTEvent var1) {
  1028.       if (var1 instanceof FocusEvent) {
  1029.          this.processFocusEvent((FocusEvent)var1);
  1030.       } else {
  1031.          if (var1 instanceof MouseEvent) {
  1032.             switch (var1.getID()) {
  1033.                case 500:
  1034.                case 501:
  1035.                case 502:
  1036.                case 504:
  1037.                case 505:
  1038.                   this.processMouseEvent((MouseEvent)var1);
  1039.                   return;
  1040.                case 503:
  1041.                case 506:
  1042.                   this.processMouseMotionEvent((MouseEvent)var1);
  1043.                   return;
  1044.             }
  1045.          } else {
  1046.             if (var1 instanceof KeyEvent) {
  1047.                this.processKeyEvent((KeyEvent)var1);
  1048.                return;
  1049.             }
  1050.  
  1051.             if (var1 instanceof ComponentEvent) {
  1052.                this.processComponentEvent((ComponentEvent)var1);
  1053.             }
  1054.          }
  1055.  
  1056.       }
  1057.    }
  1058.  
  1059.    protected void processComponentEvent(ComponentEvent var1) {
  1060.       if (this.componentListener != null) {
  1061.          int var2 = ((AWTEvent)var1).getID();
  1062.          switch (var2) {
  1063.             case 100:
  1064.                this.componentListener.componentMoved(var1);
  1065.                return;
  1066.             case 101:
  1067.                this.componentListener.componentResized(var1);
  1068.                return;
  1069.             case 102:
  1070.                this.componentListener.componentShown(var1);
  1071.                return;
  1072.             case 103:
  1073.                this.componentListener.componentHidden(var1);
  1074.                return;
  1075.          }
  1076.       }
  1077.  
  1078.    }
  1079.  
  1080.    protected void processFocusEvent(FocusEvent var1) {
  1081.       if (this.focusListener != null) {
  1082.          int var2 = ((AWTEvent)var1).getID();
  1083.          switch (var2) {
  1084.             case 1004:
  1085.                this.focusListener.focusGained(var1);
  1086.                return;
  1087.             case 1005:
  1088.                this.focusListener.focusLost(var1);
  1089.                return;
  1090.          }
  1091.       }
  1092.  
  1093.    }
  1094.  
  1095.    protected void processKeyEvent(KeyEvent var1) {
  1096.       if (this.keyListener != null) {
  1097.          int var2 = ((AWTEvent)var1).getID();
  1098.          switch (var2) {
  1099.             case 400:
  1100.                this.keyListener.keyTyped(var1);
  1101.                return;
  1102.             case 401:
  1103.                this.keyListener.keyPressed(var1);
  1104.                return;
  1105.             case 402:
  1106.                this.keyListener.keyReleased(var1);
  1107.                return;
  1108.          }
  1109.       }
  1110.  
  1111.    }
  1112.  
  1113.    protected void processMouseEvent(MouseEvent var1) {
  1114.       if (this.mouseListener != null) {
  1115.          int var2 = ((AWTEvent)var1).getID();
  1116.          switch (var2) {
  1117.             case 500:
  1118.                this.mouseListener.mouseClicked(var1);
  1119.                return;
  1120.             case 501:
  1121.                this.mouseListener.mousePressed(var1);
  1122.                return;
  1123.             case 502:
  1124.                this.mouseListener.mouseReleased(var1);
  1125.                return;
  1126.             case 503:
  1127.             default:
  1128.                break;
  1129.             case 504:
  1130.                this.mouseListener.mouseEntered(var1);
  1131.                return;
  1132.             case 505:
  1133.                this.mouseListener.mouseExited(var1);
  1134.                return;
  1135.          }
  1136.       }
  1137.  
  1138.    }
  1139.  
  1140.    protected void processMouseMotionEvent(MouseEvent var1) {
  1141.       if (this.mouseMotionListener != null) {
  1142.          int var2 = ((AWTEvent)var1).getID();
  1143.          switch (var2) {
  1144.             case 503:
  1145.                this.mouseMotionListener.mouseMoved(var1);
  1146.                return;
  1147.             case 506:
  1148.                this.mouseMotionListener.mouseDragged(var1);
  1149.                return;
  1150.          }
  1151.       }
  1152.  
  1153.    }
  1154.  
  1155.    boolean postsOldMouseEvents() {
  1156.       return false;
  1157.    }
  1158.  
  1159.    public boolean handleEvent(Event var1) {
  1160.       switch (var1.id) {
  1161.          case 401:
  1162.          case 403:
  1163.             return this.keyDown(var1, var1.key);
  1164.          case 402:
  1165.          case 404:
  1166.             return this.keyUp(var1, var1.key);
  1167.          case 501:
  1168.             return this.mouseDown(var1, var1.x, var1.y);
  1169.          case 502:
  1170.             return this.mouseUp(var1, var1.x, var1.y);
  1171.          case 503:
  1172.             return this.mouseMove(var1, var1.x, var1.y);
  1173.          case 504:
  1174.             return this.mouseEnter(var1, var1.x, var1.y);
  1175.          case 505:
  1176.             return this.mouseExit(var1, var1.x, var1.y);
  1177.          case 506:
  1178.             return this.mouseDrag(var1, var1.x, var1.y);
  1179.          case 1001:
  1180.             return this.action(var1, var1.arg);
  1181.          case 1004:
  1182.             return this.gotFocus(var1, var1.arg);
  1183.          case 1005:
  1184.             return this.lostFocus(var1, var1.arg);
  1185.          default:
  1186.             return false;
  1187.       }
  1188.    }
  1189.  
  1190.    public boolean mouseDown(Event var1, int var2, int var3) {
  1191.       return false;
  1192.    }
  1193.  
  1194.    public boolean mouseDrag(Event var1, int var2, int var3) {
  1195.       return false;
  1196.    }
  1197.  
  1198.    public boolean mouseUp(Event var1, int var2, int var3) {
  1199.       return false;
  1200.    }
  1201.  
  1202.    public boolean mouseMove(Event var1, int var2, int var3) {
  1203.       return false;
  1204.    }
  1205.  
  1206.    public boolean mouseEnter(Event var1, int var2, int var3) {
  1207.       return false;
  1208.    }
  1209.  
  1210.    public boolean mouseExit(Event var1, int var2, int var3) {
  1211.       return false;
  1212.    }
  1213.  
  1214.    public boolean keyDown(Event var1, int var2) {
  1215.       return false;
  1216.    }
  1217.  
  1218.    public boolean keyUp(Event var1, int var2) {
  1219.       return false;
  1220.    }
  1221.  
  1222.    public boolean action(Event var1, Object var2) {
  1223.       return false;
  1224.    }
  1225.  
  1226.    public void addNotify() {
  1227.       if (this.peer == null) {
  1228.          this.peer = this.getToolkit().createComponent(this);
  1229.          long var1 = 0L;
  1230.          if (this.mouseListener != null || (this.eventMask & 16L) != 0L) {
  1231.             var1 |= 16L;
  1232.          }
  1233.  
  1234.          if (this.mouseMotionListener != null || (this.eventMask & 32L) != 0L) {
  1235.             var1 |= 32L;
  1236.          }
  1237.  
  1238.          if (this.focusListener != null || (this.eventMask & 4L) != 0L) {
  1239.             var1 |= 4L;
  1240.          }
  1241.  
  1242.          if (this.keyListener != null || (this.eventMask & 8L) != 0L) {
  1243.             var1 |= 8L;
  1244.          }
  1245.  
  1246.          if (var1 != 0L) {
  1247.             this.parent.proxyEnableEvents(var1);
  1248.          }
  1249.       } else if (this.parent != null && this.parent.peer instanceof LightweightPeer) {
  1250.          new NativeInLightFixer(this);
  1251.       }
  1252.  
  1253.       this.invalidate();
  1254.       int var4 = this.popups != null ? this.popups.size() : 0;
  1255.  
  1256.       for(int var2 = 0; var2 < var4; ++var2) {
  1257.          PopupMenu var3 = (PopupMenu)this.popups.elementAt(var2);
  1258.          var3.addNotify();
  1259.       }
  1260.  
  1261.       for(Container var5 = this.getParent(); var5 != null; var5 = ((Component)var5).getParent()) {
  1262.          if (var5 instanceof Window) {
  1263.             ((Window)var5).getWarningString();
  1264.             return;
  1265.          }
  1266.       }
  1267.  
  1268.    }
  1269.  
  1270.    public void removeNotify() {
  1271.       int var1 = this.popups != null ? this.popups.size() : 0;
  1272.  
  1273.       for(int var2 = 0; var2 < var1; ++var2) {
  1274.          PopupMenu var3 = (PopupMenu)this.popups.elementAt(var2);
  1275.          ((Menu)var3).removeNotify();
  1276.       }
  1277.  
  1278.       if (this.peer != null) {
  1279.          ComponentPeer var4 = this.peer;
  1280.          var4.hide();
  1281.          this.peer = null;
  1282.          Toolkit.getEventQueue().removeSourceEvents(this);
  1283.          var4.dispose();
  1284.       }
  1285.  
  1286.    }
  1287.  
  1288.    public boolean gotFocus(Event var1, Object var2) {
  1289.       return false;
  1290.    }
  1291.  
  1292.    public boolean lostFocus(Event var1, Object var2) {
  1293.       return false;
  1294.    }
  1295.  
  1296.    public boolean isFocusTraversable() {
  1297.       ComponentPeer var1 = this.peer;
  1298.       return var1 != null ? var1.isFocusTraversable() : false;
  1299.    }
  1300.  
  1301.    public void requestFocus() {
  1302.       ComponentPeer var1 = this.peer;
  1303.       if (var1 != null && this.isVisible()) {
  1304.          if (var1 instanceof LightweightPeer) {
  1305.             this.parent.proxyRequestFocus(this);
  1306.             return;
  1307.          }
  1308.  
  1309.          var1.requestFocus();
  1310.          if (!(this instanceof Window) && this instanceof Container) {
  1311.             Container var2 = (Container)this;
  1312.             Component var3 = var2.getWindow().getFocusOwner();
  1313.             if (var3 != null && var3 != var2 && var3.peer != null && var3.peer instanceof LightweightPeer) {
  1314.                Container var4;
  1315.                for(var4 = var3.getParent(); var4 != null && var4 != var2 && var4.peer != null && var4.peer instanceof LightweightPeer; var4 = ((Component)var4).getParent()) {
  1316.                }
  1317.  
  1318.                if (var4 == var2) {
  1319.                   ((Component)var2).dispatchEvent(new FocusEvent(var3, 1005, false));
  1320.                   ((Component)var2).dispatchEvent(new FocusEvent(var2, 1004, false));
  1321.                }
  1322.             }
  1323.          }
  1324.  
  1325.          Toolkit.getEventQueue().changeKeyEventFocus(this);
  1326.       }
  1327.  
  1328.    }
  1329.  
  1330.    public void transferFocus() {
  1331.       this.nextFocus();
  1332.    }
  1333.  
  1334.    public void nextFocus() {
  1335.       Container var1 = this.parent;
  1336.       if (var1 != null) {
  1337.          var1.transferFocus(this);
  1338.       }
  1339.  
  1340.    }
  1341.  
  1342.    public synchronized void add(PopupMenu var1) {
  1343.       if (var1.parent != null) {
  1344.          var1.parent.remove(var1);
  1345.       }
  1346.  
  1347.       if (this.popups == null) {
  1348.          this.popups = new Vector();
  1349.       }
  1350.  
  1351.       this.popups.addElement(var1);
  1352.       var1.parent = this;
  1353.       if (this.peer != null && var1.peer == null) {
  1354.          var1.addNotify();
  1355.       }
  1356.  
  1357.    }
  1358.  
  1359.    public synchronized void remove(MenuComponent var1) {
  1360.       int var2 = this.popups.indexOf(var1);
  1361.       if (var2 >= 0) {
  1362.          PopupMenu var3 = (PopupMenu)var1;
  1363.          if (var3.peer != null) {
  1364.             ((Menu)var3).removeNotify();
  1365.          }
  1366.  
  1367.          var3.parent = null;
  1368.          this.popups.removeElementAt(var2);
  1369.          if (this.popups.size() == 0) {
  1370.             this.popups = null;
  1371.          }
  1372.       }
  1373.  
  1374.    }
  1375.  
  1376.    protected String paramString() {
  1377.       String var1 = (this.name != null ? this.name : "") + "," + this.field_0 + "," + this.field_1 + "," + this.width + "x" + this.height;
  1378.       if (!this.valid) {
  1379.          var1 = var1 + ",invalid";
  1380.       }
  1381.  
  1382.       if (!this.visible) {
  1383.          var1 = var1 + ",hidden";
  1384.       }
  1385.  
  1386.       if (!this.enabled) {
  1387.          var1 = var1 + ",disabled";
  1388.       }
  1389.  
  1390.       return var1;
  1391.    }
  1392.  
  1393.    public String toString() {
  1394.       return this.getClass().getName() + "[" + this.paramString() + "]";
  1395.    }
  1396.  
  1397.    public void list() {
  1398.       this.list((PrintStream)System.out, 0);
  1399.    }
  1400.  
  1401.    public void list(PrintStream var1) {
  1402.       this.list((PrintStream)var1, 0);
  1403.    }
  1404.  
  1405.    public void list(PrintStream var1, int var2) {
  1406.       for(int var3 = 0; var3 < var2; ++var3) {
  1407.          var1.print("  ");
  1408.       }
  1409.  
  1410.       var1.println(this);
  1411.    }
  1412.  
  1413.    public void list(PrintWriter var1) {
  1414.       this.list((PrintWriter)var1, 0);
  1415.    }
  1416.  
  1417.    public void list(PrintWriter var1, int var2) {
  1418.       for(int var3 = 0; var3 < var2; ++var3) {
  1419.          var1.print("  ");
  1420.       }
  1421.  
  1422.       var1.println(this);
  1423.    }
  1424.  
  1425.    Container getNativeContainer() {
  1426.       Container var1;
  1427.       for(var1 = this.parent; var1 != null && var1.peer instanceof LightweightPeer; var1 = ((Component)var1).getParent()) {
  1428.       }
  1429.  
  1430.       return var1;
  1431.    }
  1432.  
  1433.    private void writeObject(ObjectOutputStream var1) throws IOException {
  1434.       var1.defaultWriteObject();
  1435.       AWTEventMulticaster.save(var1, "componentL", this.componentListener);
  1436.       AWTEventMulticaster.save(var1, "focusL", this.focusListener);
  1437.       AWTEventMulticaster.save(var1, "keyL", this.keyListener);
  1438.       AWTEventMulticaster.save(var1, "mouseL", this.mouseListener);
  1439.       AWTEventMulticaster.save(var1, "mouseMotionL", this.mouseMotionListener);
  1440.       var1.writeObject((Object)null);
  1441.    }
  1442.  
  1443.    private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
  1444.       var1.defaultReadObject();
  1445.  
  1446.       Object var2;
  1447.       while((var2 = var1.readObject()) != null) {
  1448.          String var3 = ((String)var2).intern();
  1449.          if (var3 == "componentL") {
  1450.             this.addComponentListener((ComponentListener)var1.readObject());
  1451.          } else if (var3 == "focusL") {
  1452.             this.addFocusListener((FocusListener)var1.readObject());
  1453.          } else if (var3 == "keyL") {
  1454.             this.addKeyListener((KeyListener)var1.readObject());
  1455.          } else if (var3 == "mouseL") {
  1456.             this.addMouseListener((MouseListener)var1.readObject());
  1457.          } else if (var3 == "mouseMotionL") {
  1458.             this.addMouseMotionListener((MouseMotionListener)var1.readObject());
  1459.          } else {
  1460.             var1.readObject();
  1461.          }
  1462.       }
  1463.  
  1464.       if (this.popups != null) {
  1465.          int var6 = this.popups.size();
  1466.  
  1467.          for(int var4 = 0; var4 < var6; ++var4) {
  1468.             PopupMenu var5 = (PopupMenu)this.popups.elementAt(var4);
  1469.             var5.parent = this;
  1470.          }
  1471.       }
  1472.  
  1473.    }
  1474.  
  1475.    static {
  1476.       SecurityManager.enablePrivilege("UniversalPropertyRead");
  1477.       String var0 = System.getProperty("awt.image.incrementaldraw");
  1478.       isInc = var0 == null || var0.equals("true");
  1479.       var0 = System.getProperty("awt.image.redrawrate");
  1480.       incRate = var0 != null ? Integer.parseInt(var0) : 100;
  1481.       SecurityManager.revertPrivilege();
  1482.    }
  1483. }
  1484.