/[classpath]/classpath/gnu/java/awt/EmbeddedWindow.java
ViewVC logotype

Diff of /classpath/gnu/java/awt/EmbeddedWindow.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by mkoch, Sat Jul 17 07:17:04 2004 UTC revision 1.4 by mkoch, Thu Jul 29 08:06:35 2004 UTC
# Line 40  package gnu.java.awt; Line 40  package gnu.java.awt;
40    
41  import gnu.classpath.Configuration;  import gnu.classpath.Configuration;
42  import gnu.java.awt.peer.EmbeddedWindowPeer;  import gnu.java.awt.peer.EmbeddedWindowPeer;
43    import gnu.java.security.action.SetAccessibleAction;
44    
45  import java.awt.Component;  import java.awt.Component;
46  import java.awt.Frame;  import java.awt.Frame;
47  import java.awt.Toolkit;  import java.awt.Toolkit;
48  import java.lang.reflect.Field;  import java.lang.reflect.Field;
49    import java.security.AccessController;
50    
51  /**  /**
52   * Represents an AWT window that can be embedded into another   * Represents an AWT window that can be embedded into another
# Line 88  public class EmbeddedWindow extends Fram Line 90  public class EmbeddedWindow extends Fram
90    
91      if (! (tk instanceof EmbeddedWindowSupport))      if (! (tk instanceof EmbeddedWindowSupport))
92        throw new UnsupportedOperationException        throw new UnsupportedOperationException
93          ("Embedded windows are not supported by the current peers: " + tk.getClass());          ("Embedded windows are not supported by the current peers: "
94             + tk.getClass());
95    
96      // Circumvent the package-privateness of the AWT internal      // Circumvent the package-privateness of the AWT internal
97      // java.awt.Component.peer member variable.      // java.awt.Component.peer member variable.
98      try      try
99        {        {
100          Field peerField = Component.class.getDeclaredField("peer");          Field peerField = Component.class.getDeclaredField("peer");
101            AccessController.doPrivileged(new SetAccessibleAction(peerField));
102          peerField.set(this, ((EmbeddedWindowSupport) tk).createEmbeddedWindow (this));          peerField.set(this, ((EmbeddedWindowSupport) tk).createEmbeddedWindow (this));
103        }        }
104      catch (IllegalAccessException e)      catch (IllegalAccessException e)

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26