OSDN Git Service

libjava/classpath/ChangeLog.gcj:
[pf3gnuchains/gcc-fork.git] / libjava / classpath / java / awt / Toolkit.java
index 6904072..305402e 100644 (file)
@@ -1,5 +1,5 @@
 /* Toolkit.java -- AWT Toolkit superclass
-   Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+   Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
    Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
@@ -40,6 +40,7 @@ exception statement from your version. */
 package java.awt;
 
 import gnu.classpath.SystemProperties;
+import gnu.java.awt.AWTUtilities;
 import gnu.java.awt.peer.GLightweightPeer;
 import gnu.java.awt.peer.headless.HeadlessToolkit;
 
@@ -62,6 +63,7 @@ import java.awt.peer.CanvasPeer;
 import java.awt.peer.CheckboxMenuItemPeer;
 import java.awt.peer.CheckboxPeer;
 import java.awt.peer.ChoicePeer;
+import java.awt.peer.DesktopPeer;
 import java.awt.peer.DialogPeer;
 import java.awt.peer.FileDialogPeer;
 import java.awt.peer.FontPeer;
@@ -148,6 +150,15 @@ public abstract class Toolkit
   }
 
   /**
+   * 
+   * @param target
+   * @return
+   * @throws HeadlessException
+   */
+  protected abstract DesktopPeer createDesktopPeer(Desktop target)
+    throws HeadlessException;
+  
+  /**
    * Creates a peer object for the specified <code>Button</code>.
    *
    * @param target The <code>Button</code> to create the peer for.
@@ -802,12 +813,11 @@ public abstract class Toolkit
    */
   public boolean getLockingKeyState(int keyCode)
   {
-    if (keyCode != KeyEvent.VK_CAPS_LOCK
-        && keyCode != KeyEvent.VK_NUM_LOCK
-        && keyCode != KeyEvent.VK_SCROLL_LOCK)
-      throw new IllegalArgumentException();
-    
-    throw new UnsupportedOperationException();
+    if (AWTUtilities.isValidKey(keyCode))
+      throw new UnsupportedOperationException
+       ("cannot get locking state of key code " + keyCode);
+
+    throw new IllegalArgumentException("invalid key code " + keyCode);
   }
 
   /**