src/windows/classes/sun/awt/windows/WToolkit.java

Print this page




  47 import sun.print.PrintJob2D;
  48 
  49 import java.awt.dnd.DragSource;
  50 import java.awt.dnd.DragGestureListener;
  51 import java.awt.dnd.DragGestureEvent;
  52 import java.awt.dnd.DragGestureRecognizer;
  53 import java.awt.dnd.MouseDragGestureRecognizer;
  54 import java.awt.dnd.InvalidDnDOperationException;
  55 import java.awt.dnd.peer.DragSourceContextPeer;
  56 
  57 import java.util.Hashtable;
  58 import java.util.Locale;
  59 import java.util.Map;
  60 import java.util.Properties;
  61 
  62 import sun.font.FontManager;
  63 import sun.font.FontManagerFactory;
  64 import sun.font.SunFontManager;
  65 import sun.misc.PerformanceLogger;
  66 import sun.util.logging.PlatformLogger;

  67 
  68 public class WToolkit extends SunToolkit implements Runnable {
  69 
  70     private static final PlatformLogger log = PlatformLogger.getLogger("sun.awt.windows.WToolkit");
  71 
  72     static GraphicsConfiguration config;
  73 
  74     // System clipboard.
  75     WClipboard clipboard;
  76 
  77     // cache of font peers
  78     private Hashtable<String,FontPeer> cacheFontPeer;
  79 
  80     // Windows properties
  81     private WDesktopProperties  wprops;
  82 
  83     // Dynamic Layout Resize client code setting
  84     protected boolean dynamicLayoutSetting = false;
  85 
  86     //Is it allowed to generate events assigned to extra mouse buttons.


 664             throw new IllegalArgumentException("invalid key for Toolkit.getLockingKeyState");
 665         }
 666         return getLockingKeyStateNative(key);
 667     }
 668 
 669     public native boolean getLockingKeyStateNative(int key);
 670 
 671     public void setLockingKeyState(int key, boolean on) {
 672         if (! (key == KeyEvent.VK_CAPS_LOCK || key == KeyEvent.VK_NUM_LOCK ||
 673                key == KeyEvent.VK_SCROLL_LOCK || key == KeyEvent.VK_KANA_LOCK)) {
 674             throw new IllegalArgumentException("invalid key for Toolkit.setLockingKeyState");
 675         }
 676         setLockingKeyStateNative(key, on);
 677     }
 678 
 679     public native void setLockingKeyStateNative(int key, boolean on);
 680 
 681     public Clipboard getSystemClipboard() {
 682         SecurityManager security = System.getSecurityManager();
 683         if (security != null) {
 684           security.checkSystemClipboardAccess();
 685         }
 686         synchronized (this) {
 687             if (clipboard == null) {
 688                 clipboard = new WClipboard();
 689             }
 690         }
 691         return clipboard;
 692     }
 693 
 694     protected native void loadSystemColors(int[] systemColors);
 695 
 696     public static final Object targetToPeer(Object target) {
 697         return SunToolkit.targetToPeer(target);
 698     }
 699 
 700     public static final void targetDisposedPeer(Object target, Object peer) {
 701         SunToolkit.targetDisposedPeer(target, peer);
 702     }
 703 
 704     /**




  47 import sun.print.PrintJob2D;
  48 
  49 import java.awt.dnd.DragSource;
  50 import java.awt.dnd.DragGestureListener;
  51 import java.awt.dnd.DragGestureEvent;
  52 import java.awt.dnd.DragGestureRecognizer;
  53 import java.awt.dnd.MouseDragGestureRecognizer;
  54 import java.awt.dnd.InvalidDnDOperationException;
  55 import java.awt.dnd.peer.DragSourceContextPeer;
  56 
  57 import java.util.Hashtable;
  58 import java.util.Locale;
  59 import java.util.Map;
  60 import java.util.Properties;
  61 
  62 import sun.font.FontManager;
  63 import sun.font.FontManagerFactory;
  64 import sun.font.SunFontManager;
  65 import sun.misc.PerformanceLogger;
  66 import sun.util.logging.PlatformLogger;
  67 import sun.security.util.SecurityConstants;
  68 
  69 public class WToolkit extends SunToolkit implements Runnable {
  70 
  71     private static final PlatformLogger log = PlatformLogger.getLogger("sun.awt.windows.WToolkit");
  72 
  73     static GraphicsConfiguration config;
  74 
  75     // System clipboard.
  76     WClipboard clipboard;
  77 
  78     // cache of font peers
  79     private Hashtable<String,FontPeer> cacheFontPeer;
  80 
  81     // Windows properties
  82     private WDesktopProperties  wprops;
  83 
  84     // Dynamic Layout Resize client code setting
  85     protected boolean dynamicLayoutSetting = false;
  86 
  87     //Is it allowed to generate events assigned to extra mouse buttons.


 665             throw new IllegalArgumentException("invalid key for Toolkit.getLockingKeyState");
 666         }
 667         return getLockingKeyStateNative(key);
 668     }
 669 
 670     public native boolean getLockingKeyStateNative(int key);
 671 
 672     public void setLockingKeyState(int key, boolean on) {
 673         if (! (key == KeyEvent.VK_CAPS_LOCK || key == KeyEvent.VK_NUM_LOCK ||
 674                key == KeyEvent.VK_SCROLL_LOCK || key == KeyEvent.VK_KANA_LOCK)) {
 675             throw new IllegalArgumentException("invalid key for Toolkit.setLockingKeyState");
 676         }
 677         setLockingKeyStateNative(key, on);
 678     }
 679 
 680     public native void setLockingKeyStateNative(int key, boolean on);
 681 
 682     public Clipboard getSystemClipboard() {
 683         SecurityManager security = System.getSecurityManager();
 684         if (security != null) {
 685             security.checkPermission(SecurityConstants.AWT.ACCESS_CLIPBOARD_PERMISSION);
 686         }
 687         synchronized (this) {
 688             if (clipboard == null) {
 689                 clipboard = new WClipboard();
 690             }
 691         }
 692         return clipboard;
 693     }
 694 
 695     protected native void loadSystemColors(int[] systemColors);
 696 
 697     public static final Object targetToPeer(Object target) {
 698         return SunToolkit.targetToPeer(target);
 699     }
 700 
 701     public static final void targetDisposedPeer(Object target, Object peer) {
 702         SunToolkit.targetDisposedPeer(target, peer);
 703     }
 704 
 705     /**