src/macosx/classes/sun/lwawt/macosx/CEmbeddedFrame.java

Print this page




  26 
  27 package sun.lwawt.macosx;
  28 
  29 import java.awt.AWTKeyStroke;
  30 import java.awt.Point;
  31 import java.awt.Toolkit;
  32 
  33 import sun.awt.EmbeddedFrame;
  34 import sun.lwawt.LWWindowPeer;
  35 
  36 @SuppressWarnings("serial") // JDK implementation class
  37 public class CEmbeddedFrame extends EmbeddedFrame {
  38 
  39     private CPlatformResponder responder;
  40     private static final Object classLock = new Object();
  41     private static volatile CEmbeddedFrame focusedWindow;
  42     private boolean parentWindowActive = true;
  43 
  44     public CEmbeddedFrame() {
  45         show();

















  46     }
  47 
  48     public void addNotify() {
  49         if (getPeer() == null) {
  50             LWCToolkit toolkit = (LWCToolkit)Toolkit.getDefaultToolkit();
  51             LWWindowPeer peer = toolkit.createEmbeddedFrame(this);
  52             setPeer(peer);
  53             responder = new CPlatformResponder(peer, true);
  54         }
  55         super.addNotify();
  56     }
  57 
  58     public void registerAccelerator(AWTKeyStroke stroke) {}
  59 
  60     public void unregisterAccelerator(AWTKeyStroke stroke) {}
  61 
  62     protected long getLayerPtr() {
  63         LWWindowPeer peer = (LWWindowPeer)getPeer();
  64         return peer.getLayerPtr();
  65     }




  26 
  27 package sun.lwawt.macosx;
  28 
  29 import java.awt.AWTKeyStroke;
  30 import java.awt.Point;
  31 import java.awt.Toolkit;
  32 
  33 import sun.awt.EmbeddedFrame;
  34 import sun.lwawt.LWWindowPeer;
  35 
  36 @SuppressWarnings("serial") // JDK implementation class
  37 public class CEmbeddedFrame extends EmbeddedFrame {
  38 
  39     private CPlatformResponder responder;
  40     private static final Object classLock = new Object();
  41     private static volatile CEmbeddedFrame focusedWindow;
  42     private boolean parentWindowActive = true;
  43 
  44     public CEmbeddedFrame() {
  45         show();
  46 
  47         Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener() {
  48             public void eventDispatched(AWTEvent e) {
  49                 if (e instanceof WindowEvent &&
  50                         ((WindowEvent)e).getID() == WindowEvent.WINDOW_CLOSED) {
  51                     WindowEvent we = (WindowEvent)e;
  52                     Window w = we.getWindow();
  53                     if (w instanceof Dialog){
  54                         Dialog d = (Dialog)w;
  55                         if(d.isModal() && d.getOwner() == CEmbeddedFrame.this &&
  56                                 CEmbeddedFrame.this.isParentWindowActive()){
  57                             CEmbeddedFrame.this.synthesizeWindowActivation(true);
  58                         }
  59                     }
  60                 }
  61             }
  62         },WindowEvent.WINDOW_CLOSED);
  63     }
  64 
  65     public void addNotify() {
  66         if (getPeer() == null) {
  67             LWCToolkit toolkit = (LWCToolkit)Toolkit.getDefaultToolkit();
  68             LWWindowPeer peer = toolkit.createEmbeddedFrame(this);
  69             setPeer(peer);
  70             responder = new CPlatformResponder(peer, true);
  71         }
  72         super.addNotify();
  73     }
  74 
  75     public void registerAccelerator(AWTKeyStroke stroke) {}
  76 
  77     public void unregisterAccelerator(AWTKeyStroke stroke) {}
  78 
  79     protected long getLayerPtr() {
  80         LWWindowPeer peer = (LWWindowPeer)getPeer();
  81         return peer.getLayerPtr();
  82     }