home *** CD-ROM | disk | FTP | other *** search
- package java.awt;
-
- import java.awt.GraphicsCallback.PaintAllCallback;
- import java.awt.GraphicsCallback.PaintCallback;
- import java.awt.GraphicsCallback.PaintHeavyweightComponentsCallback;
- import java.awt.GraphicsCallback.PrintAllCallback;
- import java.awt.GraphicsCallback.PrintCallback;
- import java.awt.GraphicsCallback.PrintHeavyweightComponentsCallback;
- import java.awt.event.ContainerEvent;
- import java.awt.event.ContainerListener;
- import java.awt.event.KeyEvent;
- import java.awt.peer.ContainerPeer;
- import java.awt.peer.LightweightPeer;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.io.ObjectOutputStream;
- import java.io.PrintStream;
- import java.io.PrintWriter;
- import java.util.EventListener;
- import java.util.Vector;
- import javax.accessibility.Accessible;
- import javax.accessibility.AccessibleComponent;
- import javax.accessibility.AccessibleContext;
- import javax.swing.JRootPane;
- import sun.awt.DebugHelper;
- import sun.awt.GlobalCursorManager;
-
- public class Container extends Component {
- int ncomponents;
- Component[] component = new Component[4];
- LayoutManager layoutMgr;
- private LightweightDispatcher dispatcher;
- private Dimension maxSize;
- private transient Vector printingThreads = new Vector();
- private transient boolean printing = false;
- transient ContainerListener containerListener;
- transient int listeningChildren;
- transient int listeningBoundsChildren;
- private static final long serialVersionUID = 4613797578919906343L;
- private static final DebugHelper dbg;
- private int containerSerializedDataVersion = 1;
- // $FF: synthetic field
- static Class class$java$awt$Container;
- // $FF: synthetic field
- static Class class$java$awt$event$ContainerListener;
-
- private static native void initIDs();
-
- public int getComponentCount() {
- return this.countComponents();
- }
-
- public int countComponents() {
- return this.ncomponents;
- }
-
- public Component getComponent(int var1) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- if (var1 >= 0 && var1 < this.ncomponents) {
- Component var3 = this.component[var1];
- return var3;
- } else {
- throw new ArrayIndexOutOfBoundsException("No such child: " + var1);
- }
- }
- }
-
- public Component[] getComponents() {
- return this.getComponents_NoClientCode();
- }
-
- final Component[] getComponents_NoClientCode() {
- Object var1 = ((Component)this).getTreeLock();
- synchronized(var1) {
- Component[] var2 = new Component[this.ncomponents];
- System.arraycopy(this.component, 0, var2, 0, this.ncomponents);
- return var2;
- }
- }
-
- public Insets getInsets() {
- return this.insets();
- }
-
- public Insets insets() {
- if (super.peer != null && super.peer instanceof ContainerPeer) {
- ContainerPeer var1 = (ContainerPeer)super.peer;
- return (Insets)var1.insets().clone();
- } else {
- return new Insets(0, 0, 0, 0);
- }
- }
-
- public Component add(Component var1) {
- this.addImpl(var1, (Object)null, -1);
- return var1;
- }
-
- public Component add(String var1, Component var2) {
- this.addImpl(var2, var1, -1);
- return var2;
- }
-
- public Component add(Component var1, int var2) {
- this.addImpl(var1, (Object)null, var2);
- return var1;
- }
-
- public void add(Component var1, Object var2) {
- this.addImpl(var1, var2, -1);
- }
-
- public void add(Component var1, Object var2, int var3) {
- this.addImpl(var1, var2, var3);
- }
-
- protected void addImpl(Component var1, Object var2, int var3) {
- Object var4 = ((Component)this).getTreeLock();
- synchronized(var4) {
- GraphicsConfiguration var5 = ((Component)this).getGraphicsConfiguration();
- if (var3 <= this.ncomponents && (var3 >= 0 || var3 == -1)) {
- if (var1 instanceof Container) {
- for(Container var6 = this; var6 != null; var6 = var6.parent) {
- if (var6 == var1) {
- throw new IllegalArgumentException("adding container's parent to itself");
- }
- }
-
- if (var1 instanceof Window) {
- throw new IllegalArgumentException("adding a window to a container");
- }
- }
-
- if (var5 != null) {
- var1.checkGD(var5.getDevice().getIDstring());
- }
-
- if (var1.parent != null) {
- var1.parent.remove(var1);
- }
-
- if (this.ncomponents == this.component.length) {
- Component[] var9 = new Component[this.ncomponents * 2];
- System.arraycopy(this.component, 0, var9, 0, this.ncomponents);
- this.component = var9;
- }
-
- if (var3 != -1 && var3 != this.ncomponents) {
- System.arraycopy(this.component, var3, this.component, var3 + 1, this.ncomponents - var3);
- this.component[var3] = var1;
- ++this.ncomponents;
- } else {
- this.component[this.ncomponents++] = var1;
- }
-
- var1.parent = this;
- this.adjustListeningChildren(32768L, var1.numListening(32768L));
- this.adjustListeningChildren(65536L, var1.numListening(65536L));
- if (super.valid) {
- this.invalidate();
- }
-
- if (super.peer != null) {
- var1.addNotify();
- }
-
- if (this.layoutMgr != null) {
- if (this.layoutMgr instanceof LayoutManager2) {
- ((LayoutManager2)this.layoutMgr).addLayoutComponent(var1, var2);
- } else if (var2 instanceof String) {
- this.layoutMgr.addLayoutComponent((String)var2, var1);
- }
- }
-
- if (this.containerListener != null || (super.eventMask & 2L) != 0L) {
- ContainerEvent var10 = new ContainerEvent(this, 300, var1);
- ((Component)this).dispatchEvent(var10);
- }
-
- var1.createHierarchyEvents(1400, var1, this, 1L);
- if (super.peer != null && this.layoutMgr == null && ((Component)this).isVisible()) {
- GlobalCursorManager.updateCursorImmediately();
- }
-
- } else {
- throw new IllegalArgumentException("illegal component position");
- }
- }
- }
-
- void checkGD(String var1) {
- for(int var3 = 0; var3 < this.component.length; ++var3) {
- Component var2 = this.component[var3];
- if (var2 != null) {
- var2.checkGD(var1);
- }
- }
-
- }
-
- public void remove(int var1) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- Component var3 = this.component[var1];
- if (super.peer != null) {
- var3.removeNotify();
- }
-
- if (this.layoutMgr != null) {
- this.layoutMgr.removeLayoutComponent(var3);
- }
-
- this.adjustListeningChildren(32768L, -var3.numListening(32768L));
- this.adjustListeningChildren(65536L, -var3.numListening(65536L));
- var3.parent = null;
- System.arraycopy(this.component, var1 + 1, this.component, var1, this.ncomponents - var1 - 1);
- this.component[--this.ncomponents] = null;
- if (super.valid) {
- this.invalidate();
- }
-
- if (this.containerListener != null || (super.eventMask & 2L) != 0L) {
- ContainerEvent var4 = new ContainerEvent(this, 301, var3);
- ((Component)this).dispatchEvent(var4);
- }
-
- var3.createHierarchyEvents(1400, var3, this, 1L);
- if (super.peer != null && this.layoutMgr == null && ((Component)this).isVisible()) {
- GlobalCursorManager.updateCursorImmediately();
- }
-
- }
- }
-
- public void remove(Component var1) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- if (var1.parent == this) {
- Component[] var3 = this.component;
- int var4 = this.ncomponents;
-
- while(true) {
- --var4;
- if (var4 < 0) {
- break;
- }
-
- if (var3[var4] == var1) {
- this.remove(var4);
- }
- }
- }
-
- }
- }
-
- public void removeAll() {
- Object var1 = ((Component)this).getTreeLock();
- synchronized(var1) {
- this.adjustListeningChildren(32768L, -this.listeningChildren);
- this.adjustListeningChildren(65536L, -this.listeningBoundsChildren);
-
- Component var2;
- for(; this.ncomponents > 0; var2.createHierarchyEvents(1400, var2, this, 1L)) {
- var2 = this.component[--this.ncomponents];
- this.component[this.ncomponents] = null;
- if (super.peer != null) {
- var2.removeNotify();
- }
-
- if (this.layoutMgr != null) {
- this.layoutMgr.removeLayoutComponent(var2);
- }
-
- var2.parent = null;
- if (this.containerListener != null || (super.eventMask & 2L) != 0L) {
- ContainerEvent var3 = new ContainerEvent(this, 301, var2);
- ((Component)this).dispatchEvent(var3);
- }
- }
-
- if (super.peer != null && this.layoutMgr == null && ((Component)this).isVisible()) {
- GlobalCursorManager.updateCursorImmediately();
- }
-
- if (super.valid) {
- this.invalidate();
- }
-
- }
- }
-
- int numListening(long var1) {
- int var3 = super.numListening(var1);
- if (var1 == 32768L) {
- return this.listeningChildren + var3;
- } else {
- return var1 == 65536L ? this.listeningBoundsChildren + var3 : var3;
- }
- }
-
- void adjustListeningChildren(long var1, int var3) {
- if (var3 != 0) {
- if ((var1 & 32768L) != 0L) {
- this.listeningChildren += var3;
- }
-
- if ((var1 & 65536L) != 0L) {
- this.listeningBoundsChildren += var3;
- }
-
- if (super.parent != null) {
- super.parent.adjustListeningChildren(var1, var3);
- }
-
- }
- }
-
- int createHierarchyEvents(int var1, Component var2, Container var3, long var4) {
- int var6 = 0;
- switch (var1) {
- case 1400:
- var6 = this.listeningChildren;
- break;
- case 1401:
- case 1402:
- var6 = this.listeningBoundsChildren;
- }
-
- int var7 = var6;
-
- for(int var8 = 0; var7 > 0; ++var8) {
- var7 -= this.component[var8].createHierarchyEvents(var1, var2, var3, var4);
- }
-
- return var6 + super.createHierarchyEvents(var1, var2, var3, var4);
- }
-
- void createChildHierarchyEvents(int var1, long var2) {
- Object var4 = ((Component)this).getTreeLock();
- synchronized(var4) {
- int var5 = 0;
- switch (var1) {
- case 1400:
- var5 = this.listeningChildren;
- break;
- case 1401:
- case 1402:
- var5 = this.listeningBoundsChildren;
- }
-
- int var6 = var5;
-
- for(int var7 = 0; var6 > 0; ++var7) {
- var6 -= this.component[var7].createHierarchyEvents(var1, this, super.parent, var2);
- }
-
- }
- }
-
- public LayoutManager getLayout() {
- return this.layoutMgr;
- }
-
- public void setLayout(LayoutManager var1) {
- this.layoutMgr = var1;
- if (super.valid) {
- this.invalidate();
- }
-
- }
-
- public void doLayout() {
- this.layout();
- }
-
- public void layout() {
- LayoutManager var1 = this.layoutMgr;
- if (var1 != null) {
- var1.layoutContainer(this);
- }
-
- }
-
- public void invalidate() {
- if (this.layoutMgr instanceof LayoutManager2) {
- LayoutManager2 var1 = (LayoutManager2)this.layoutMgr;
- var1.invalidateLayout(this);
- }
-
- super.invalidate();
- }
-
- public void validate() {
- if (!super.valid) {
- boolean var1 = false;
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- if (!super.valid && super.peer != null) {
- ContainerPeer var3 = null;
- if (super.peer instanceof ContainerPeer) {
- var3 = (ContainerPeer)super.peer;
- }
-
- if (var3 != null) {
- var3.beginValidate();
- }
-
- this.validateTree();
- super.valid = true;
- if (var3 != null) {
- var3.endValidate();
- var1 = ((Component)this).isVisible();
- }
- }
- }
-
- if (var1) {
- GlobalCursorManager.updateCursorImmediately();
- }
- }
-
- }
-
- protected void validateTree() {
- if (!super.valid) {
- this.doLayout();
- Component[] var1 = this.component;
-
- for(int var2 = 0; var2 < this.ncomponents; ++var2) {
- Component var3 = var1[var2];
- if (var3 instanceof Container && !(var3 instanceof Window) && !var3.valid) {
- ((Container)var3).validateTree();
- } else {
- var3.validate();
- }
- }
- }
-
- super.valid = true;
- }
-
- void invalidateTree() {
- Object var1 = ((Component)this).getTreeLock();
- synchronized(var1) {
- for(int var2 = 0; var2 < this.ncomponents; ++var2) {
- Component var3 = this.component[var2];
- if (var3 instanceof Container) {
- ((Container)var3).invalidateTree();
- } else if (var3.valid) {
- var3.invalidate();
- }
- }
-
- if (super.valid) {
- this.invalidate();
- }
-
- }
- }
-
- public void setFont(Font var1) {
- boolean var2 = false;
- Font var3 = ((Component)this).getFont();
- super.setFont(var1);
- Font var4 = ((Component)this).getFont();
- if (var4 != var3 && (var3 == null || !var3.equals(var4))) {
- this.invalidateTree();
- }
-
- }
-
- public Dimension getPreferredSize() {
- return this.preferredSize();
- }
-
- public Dimension preferredSize() {
- Dimension var1 = super.prefSize;
- if (var1 != null && ((Component)this).isValid()) {
- return var1;
- } else {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- super.prefSize = this.layoutMgr != null ? this.layoutMgr.preferredLayoutSize(this) : super.preferredSize();
- Dimension var3 = super.prefSize;
- return var3;
- }
- }
- }
-
- public Dimension getMinimumSize() {
- return this.minimumSize();
- }
-
- public Dimension minimumSize() {
- Dimension var1 = super.minSize;
- if (var1 != null && ((Component)this).isValid()) {
- return var1;
- } else {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- super.minSize = this.layoutMgr != null ? this.layoutMgr.minimumLayoutSize(this) : super.minimumSize();
- Dimension var3 = super.minSize;
- return var3;
- }
- }
- }
-
- public Dimension getMaximumSize() {
- Dimension var1 = this.maxSize;
- if (var1 != null && ((Component)this).isValid()) {
- return var1;
- } else {
- if (this.layoutMgr instanceof LayoutManager2) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- LayoutManager2 var3 = (LayoutManager2)this.layoutMgr;
- this.maxSize = var3.maximumLayoutSize(this);
- }
- } else {
- this.maxSize = super.getMaximumSize();
- }
-
- return this.maxSize;
- }
- }
-
- public float getAlignmentX() {
- float var1;
- if (this.layoutMgr instanceof LayoutManager2) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- LayoutManager2 var3 = (LayoutManager2)this.layoutMgr;
- var1 = var3.getLayoutAlignmentX(this);
- }
- } else {
- var1 = super.getAlignmentX();
- }
-
- return var1;
- }
-
- public float getAlignmentY() {
- float var1;
- if (this.layoutMgr instanceof LayoutManager2) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- LayoutManager2 var3 = (LayoutManager2)this.layoutMgr;
- var1 = var3.getLayoutAlignmentY(this);
- }
- } else {
- var1 = super.getAlignmentY();
- }
-
- return var1;
- }
-
- public void paint(Graphics var1) {
- if (((Component)this).isShowing() && (!this.printing || !this.printingThreads.contains(Thread.currentThread()))) {
- PaintCallback.getInstance().runComponents(this.component, var1, 2);
- }
-
- }
-
- public void update(Graphics var1) {
- if (((Component)this).isShowing()) {
- if (!(super.peer instanceof LightweightPeer)) {
- var1.clearRect(0, 0, super.width, super.height);
- }
-
- this.paint(var1);
- }
-
- }
-
- public void print(Graphics var1) {
- if (((Component)this).isShowing()) {
- Thread var2 = Thread.currentThread();
-
- try {
- this.printingThreads.addElement(var2);
- this.printing = true;
- super.print(var1);
- } finally {
- this.printingThreads.removeElement(var2);
- this.printing = !this.printingThreads.isEmpty();
- }
-
- PrintCallback.getInstance().runComponents(this.component, var1, 2);
- }
-
- }
-
- public void paintComponents(Graphics var1) {
- if (((Component)this).isShowing()) {
- PaintAllCallback.getInstance().runComponents(this.component, var1, 4);
- }
-
- }
-
- void lightweightPaint(Graphics var1) {
- super.lightweightPaint(var1);
- this.paintHeavyweightComponents(var1);
- }
-
- void paintHeavyweightComponents(Graphics var1) {
- if (((Component)this).isShowing()) {
- PaintHeavyweightComponentsCallback.getInstance().runComponents(this.component, var1, 3);
- }
-
- }
-
- public void printComponents(Graphics var1) {
- if (((Component)this).isShowing()) {
- PrintAllCallback.getInstance().runComponents(this.component, var1, 4);
- }
-
- }
-
- void lightweightPrint(Graphics var1) {
- super.lightweightPrint(var1);
- this.printHeavyweightComponents(var1);
- }
-
- void printHeavyweightComponents(Graphics var1) {
- if (((Component)this).isShowing()) {
- PrintHeavyweightComponentsCallback.getInstance().runComponents(this.component, var1, 3);
- }
-
- }
-
- public synchronized void addContainerListener(ContainerListener var1) {
- if (var1 != null) {
- this.containerListener = AWTEventMulticaster.add(this.containerListener, var1);
- super.newEventsOnly = true;
- }
- }
-
- public synchronized void removeContainerListener(ContainerListener var1) {
- if (var1 != null) {
- this.containerListener = AWTEventMulticaster.remove(this.containerListener, var1);
- }
- }
-
- public EventListener[] getListeners(Class var1) {
- Object var2 = null;
- if (var1 == (class$java$awt$event$ContainerListener == null ? (class$java$awt$event$ContainerListener = class$("java.awt.event.ContainerListener")) : class$java$awt$event$ContainerListener)) {
- ContainerListener var3 = this.containerListener;
- return AWTEventMulticaster.getListeners(var3, var1);
- } else {
- return super.getListeners(var1);
- }
- }
-
- boolean eventEnabled(AWTEvent var1) {
- int var2 = var1.getID();
- if (var2 != 300 && var2 != 301) {
- return super.eventEnabled(var1);
- } else {
- return (super.eventMask & 2L) != 0L || this.containerListener != null;
- }
- }
-
- protected void processEvent(AWTEvent var1) {
- if (var1 instanceof ContainerEvent) {
- this.processContainerEvent((ContainerEvent)var1);
- } else {
- super.processEvent(var1);
- }
- }
-
- protected void processContainerEvent(ContainerEvent var1) {
- if (this.containerListener != null) {
- switch (((AWTEvent)var1).getID()) {
- case 300:
- this.containerListener.componentAdded(var1);
- break;
- case 301:
- this.containerListener.componentRemoved(var1);
- }
- }
-
- }
-
- void dispatchEventImpl(AWTEvent var1) {
- if (this.dispatcher != null && this.dispatcher.dispatchEvent(var1)) {
- var1.consume();
- if (super.peer != null) {
- super.peer.handleEvent(var1);
- }
-
- } else {
- super.dispatchEventImpl(var1);
- switch (var1.getID()) {
- case 100:
- this.createChildHierarchyEvents(1401, 0L);
- break;
- case 101:
- this.createChildHierarchyEvents(1402, 0L);
- }
-
- }
- }
-
- void dispatchEventToSelf(AWTEvent var1) {
- super.dispatchEventImpl(var1);
- }
-
- Component getMouseEventTarget(int var1, int var2, boolean var3) {
- int var4 = this.ncomponents;
- Component[] var5 = this.component;
-
- for(int var6 = 0; var6 < var4; ++var6) {
- Component var7 = var5[var6];
- if (var7 != null && var7.contains(var1 - var7.x, var2 - var7.y) && var7.peer instanceof LightweightPeer && var7.visible) {
- if (var7 instanceof Container) {
- Container var8 = (Container)var7;
- Component var9 = var8.getMouseEventTarget(var1 - var8.x, var2 - var8.y, var3);
- if (var9 != null) {
- return var9;
- }
- } else if (var7.mouseListener != null || (var7.eventMask & 16L) != 0L || var7.mouseMotionListener != null || (var7.eventMask & 32L) != 0L) {
- return var7;
- }
- }
- }
-
- boolean var11 = super.peer instanceof LightweightPeer || var3;
- boolean var12 = ((Component)this).contains(var1, var2);
- boolean var13 = super.mouseListener != null || (super.eventMask & 16L) != 0L;
- boolean var10 = super.mouseMotionListener != null || (super.eventMask & 32L) != 0L;
- if (!var12 || !var11 || !var13 && !var10) {
- return null;
- } else {
- return this;
- }
- }
-
- void proxyEnableEvents(long var1) {
- if (super.peer instanceof LightweightPeer) {
- if (super.parent != null) {
- super.parent.proxyEnableEvents(var1);
- }
- } else if (this.dispatcher != null) {
- this.dispatcher.enableEvents(var1);
- }
-
- }
-
- Window getWindow() {
- Container var1;
- for(var1 = this; !(var1 instanceof Window); var1 = ((Component)var1).getParent()) {
- }
-
- return (Window)var1;
- }
-
- void proxyRequestFocus(Component var1) {
- if (super.peer instanceof LightweightPeer) {
- if (super.parent != null) {
- super.parent.proxyRequestFocus(var1);
- }
- } else if (this.dispatcher != null && this.dispatcher.setFocusRequest(var1)) {
- Container var2;
- for(var2 = this; !(var2 instanceof Window) && var2 != null; var2 = ((Component)var2).getParent()) {
- }
-
- if (var2 != null && (((Window)var2).isActive() || !(var2 instanceof Frame) && !(var2 instanceof Dialog))) {
- super.peer.requestFocus();
- }
-
- Toolkit.getEventQueue().changeKeyEventFocus(this);
- }
-
- }
-
- public void deliverEvent(Event var1) {
- Component var2 = this.getComponentAt(var1.x, var1.y);
- if (var2 != null && var2 != this) {
- var1.translate(-var2.x, -var2.y);
- var2.deliverEvent(var1);
- } else {
- ((Component)this).postEvent(var1);
- }
-
- }
-
- public Component getComponentAt(int var1, int var2) {
- return this.locate(var1, var2);
- }
-
- public Component locate(int var1, int var2) {
- if (!((Component)this).contains(var1, var2)) {
- return null;
- } else {
- Object var3 = ((Component)this).getTreeLock();
- synchronized(var3) {
- for(int var4 = 0; var4 < this.ncomponents; ++var4) {
- Component var5 = this.component[var4];
- if (var5 != null && !(var5.peer instanceof LightweightPeer) && var5.contains(var1 - var5.x, var2 - var5.y)) {
- return var5;
- }
- }
-
- for(int var10 = 0; var10 < this.ncomponents; ++var10) {
- Component var6 = this.component[var10];
- if (var6 != null && var6.peer instanceof LightweightPeer && var6.contains(var1 - var6.x, var2 - var6.y)) {
- return var6;
- }
- }
-
- return this;
- }
- }
- }
-
- public Component getComponentAt(Point var1) {
- return this.getComponentAt(var1.x, var1.y);
- }
-
- public Component findComponentAt(int var1, int var2) {
- Object var3 = ((Component)this).getTreeLock();
- synchronized(var3) {
- Component var4 = this.findComponentAt(var1, var2, true, false);
- return var4;
- }
- }
-
- final Component findComponentAt(int var1, int var2, boolean var3, boolean var4) {
- if (((Component)this).contains(var1, var2) && super.visible && (var3 || super.enabled)) {
- int var5 = this.ncomponents;
- Component[] var6 = this.component;
- Component var7 = null;
- if (var4 && this instanceof JRootPane) {
- var7 = ((JRootPane)this).getGlassPane();
- }
-
- for(int var8 = 0; var8 < var5; ++var8) {
- Component var9 = var6[var8];
- if (var9 != null && var9 != var7 && !(var9.peer instanceof LightweightPeer)) {
- if (var9 instanceof Container) {
- var9 = ((Container)var9).findComponentAt(var1 - var9.x, var2 - var9.y, var3, var4);
- } else {
- var9 = var9.locate(var1 - var9.x, var2 - var9.y);
- }
-
- if (var9 != null && var9.visible && (var3 || var9.enabled)) {
- return var9;
- }
- }
- }
-
- for(int var12 = 0; var12 < var5; ++var12) {
- Component var10 = var6[var12];
- if (var10 != null && var10 != var7 && var10.peer instanceof LightweightPeer) {
- if (var10 instanceof Container) {
- var10 = ((Container)var10).findComponentAt(var1 - var10.x, var2 - var10.y, var3, var4);
- } else {
- var10 = var10.locate(var1 - var10.x, var2 - var10.y);
- }
-
- if (var10 != null && var10.visible && (var3 || var10.enabled)) {
- return var10;
- }
- }
- }
-
- return this;
- } else {
- return null;
- }
- }
-
- public Component findComponentAt(Point var1) {
- return this.findComponentAt(var1.x, var1.y);
- }
-
- public void addNotify() {
- Object var1 = ((Component)this).getTreeLock();
- synchronized(var1) {
- super.addNotify();
- if (!(super.peer instanceof LightweightPeer)) {
- this.dispatcher = new LightweightDispatcher(this);
- }
-
- int var2 = this.ncomponents;
- Component[] var3 = this.component;
-
- for(int var4 = 0; var4 < var2; ++var4) {
- var3[var4].addNotify();
- }
-
- }
- }
-
- public void removeNotify() {
- Object var1 = ((Component)this).getTreeLock();
- synchronized(var1) {
- int var2 = this.ncomponents;
- Component[] var3 = this.component;
-
- for(int var4 = 0; var4 < var2; ++var4) {
- var3[var4].removeNotify();
- }
-
- if (this.dispatcher != null) {
- this.dispatcher.dispose();
- }
-
- super.removeNotify();
- }
- }
-
- public boolean isAncestorOf(Component var1) {
- Container var2;
- if (var1 != null && (var2 = var1.getParent()) != null) {
- while(var2 != null) {
- if (var2 == this) {
- return true;
- }
-
- var2 = ((Component)var2).getParent();
- }
-
- return false;
- } else {
- return false;
- }
- }
-
- protected String paramString() {
- String var1 = super.paramString();
- LayoutManager var2 = this.layoutMgr;
- if (var2 != null) {
- var1 = var1 + ",layout=" + var2.getClass().getName();
- }
-
- return var1;
- }
-
- public void list(PrintStream var1, int var2) {
- super.list(var1, var2);
- int var3 = this.ncomponents;
- Component[] var4 = this.component;
-
- for(int var5 = 0; var5 < var3; ++var5) {
- Component var6 = var4[var5];
- if (var6 != null) {
- var6.list(var1, var2 + 1);
- }
- }
-
- }
-
- public void list(PrintWriter var1, int var2) {
- super.list(var1, var2);
- int var3 = this.ncomponents;
- Component[] var4 = this.component;
-
- for(int var5 = 0; var5 < var3; ++var5) {
- Component var6 = var4[var5];
- if (var6 != null) {
- var6.list(var1, var2 + 1);
- }
- }
-
- }
-
- void setFocusOwner(Component var1) {
- Container var2 = super.parent;
- if (var2 != null) {
- var2.setFocusOwner(var1);
- }
-
- }
-
- void preProcessKeyEvent(KeyEvent var1) {
- Container var2 = super.parent;
- if (var2 != null) {
- var2.preProcessKeyEvent(var1);
- }
-
- }
-
- void postProcessKeyEvent(KeyEvent var1) {
- Container var2 = super.parent;
- if (var2 != null) {
- var2.postProcessKeyEvent(var1);
- }
-
- }
-
- void transferFocus(Component var1) {
- this.nextFocus(var1);
- }
-
- boolean postsOldMouseEvents() {
- return true;
- }
-
- void nextFocus(Component var1) {
- Container var2 = super.parent;
- if (var2 != null) {
- var2.transferFocus(var1);
- }
-
- }
-
- void applyOrientation(ComponentOrientation var1) {
- ((Component)this).setComponentOrientation(var1);
-
- for(int var2 = 0; var2 < this.ncomponents; ++var2) {
- Component var3 = this.component[var2];
- if (var3 instanceof Container) {
- ((Container)var3).applyOrientation(var1);
- } else {
- var3.setComponentOrientation(var1);
- }
- }
-
- }
-
- private void writeObject(ObjectOutputStream var1) throws IOException {
- var1.defaultWriteObject();
- AWTEventMulticaster.save(var1, "containerL", this.containerListener);
- var1.writeObject((Object)null);
- }
-
- private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
- var1.defaultReadObject();
- Component[] var2 = this.component;
-
- for(int var3 = 0; var3 < this.ncomponents; ++var3) {
- var2[var3].parent = this;
- this.adjustListeningChildren(32768L, var2[var3].numListening(32768L));
- this.adjustListeningChildren(65536L, var2[var3].numListening(65536L));
- }
-
- Object var4;
- while(null != (var4 = var1.readObject())) {
- String var5 = ((String)var4).intern();
- if ("containerL" == var5) {
- this.addContainerListener((ContainerListener)var1.readObject());
- } else {
- var1.readObject();
- }
- }
-
- }
-
- Accessible getAccessibleAt(Point var1) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- if (this instanceof Accessible) {
- Accessible var14 = (Accessible)this;
- AccessibleContext var17 = var14.getAccessibleContext();
- if (var17 != null) {
- int var21 = var17.getAccessibleChildrenCount();
-
- for(int var8 = 0; var8 < var21; ++var8) {
- var14 = var17.getAccessibleChild(var8);
- if (var14 != null) {
- var17 = var14.getAccessibleContext();
- if (var17 != null) {
- AccessibleComponent var18 = var17.getAccessibleComponent();
- if (var18 != null && var18.isShowing()) {
- Point var20 = var18.getLocation();
- Point var9 = new Point(var1.x - var20.x, var1.y - var20.y);
- if (var18.contains(var9)) {
- return var14;
- }
- }
- }
- }
- }
- }
-
- Accessible var19 = (Accessible)this;
- return var19;
- } else {
- Object var3 = this;
- if (!((Component)this).contains(var1.x, var1.y)) {
- var3 = null;
- } else {
- int var4 = this.getComponentCount();
-
- for(int var5 = 0; var5 < var4; ++var5) {
- Component var6 = this.getComponent(var5);
- if (var6 != null && var6.isShowing()) {
- Point var7 = var6.getLocation();
- if (var6.contains(var1.x - var7.x, var1.y - var7.y)) {
- var3 = var6;
- }
- }
- }
- }
-
- if (var3 instanceof Accessible) {
- Accessible var16 = (Accessible)var3;
- return var16;
- } else {
- var3 = null;
- return (Accessible)var3;
- }
- }
- }
- }
-
- int getAccessibleChildrenCount() {
- Object var1 = ((Component)this).getTreeLock();
- synchronized(var1) {
- int var2 = 0;
- Component[] var3 = this.getComponents();
-
- for(int var4 = 0; var4 < var3.length; ++var4) {
- if (var3[var4] instanceof Accessible) {
- ++var2;
- }
- }
-
- return var2;
- }
- }
-
- Accessible getAccessibleChild(int var1) {
- Object var2 = ((Component)this).getTreeLock();
- synchronized(var2) {
- Component[] var3 = this.getComponents();
- int var4 = 0;
-
- for(int var5 = 0; var5 < var3.length; ++var5) {
- if (var3[var5] instanceof Accessible) {
- if (var4 == var1) {
- Accessible var6 = (Accessible)var3[var5];
- return var6;
- }
-
- ++var4;
- }
- }
-
- Object var9 = null;
- return (Accessible)var9;
- }
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(((Throwable)var2).getMessage());
- }
- }
-
- static {
- dbg = DebugHelper.create(class$java$awt$Container == null ? (class$java$awt$Container = class$("java.awt.Container")) : class$java$awt$Container);
- Toolkit.loadLibraries();
- initIDs();
- }
- }
-