Hey, based on Robert Schuster's suggestion, I have modified Cursor.java.
Could someone kindly approve or comment on this patch, so that I may
commit it.

On Sat, 2006-07-08 at 09:46 +0200, Robert Schuster wrote:
> Hi Tania
> 
> >>+    if (type == 0)
> >>+      name = "Default Cursor";
> >>+    else if (type == 1)
> >>+      name = "Crosshair Cursor";
> >>+    else if (type == 2)
> >>+      name = "Text Cursor";
> >>+    else if (type == 3)
> >>+      name = "Wait Cursor";
> >>+    else if (type == 4)
> >>+      name = "Southwest Resize Cursor";
> >>+    else if (type == 5)
> >>+      name = "Southeast Resize Cursor";
> >>+    else if (type == 6)
> >>+      name = "Northwest Resize Cursor";
> >>+    else if (type == 7)
> >>+      name = "Northeast Resize Cursor";
> >>+    else if (type == 8)
> >>+      name = "North Resize Cursor";
> >>+    else if (type == 9)
> >>+      name = "South Resize Cursor";
> >>+    else if (type == 10)
> >>+      name = "West Resize Cursor";
> >>+    else if (type == 11)
> >>+      name = "East Resize Cursor";
> >>+    else if (type == 12)
> >>+      name = "Hand Cursor";
> >>+    else if (type == 13)
> >>+      name = "Move Cursor";
> >>+      
> >>+    // FIXME: lookup?
> There are names for these constants and I see a pattern how you could 
> implement
> this much more efficiently:
> 
> String[] NAMES = { "Default Cursor", "Crosshair Cursor", ... };
> 
> if (type >= 0 && type < NAMES.length
>       name = NAMES[type];
> else
>     // dont know. Try on the RI :)
> 
> 
> cya
> Robert
Index: java/awt/Cursor.java
===================================================================
RCS file: /cvsroot/classpath/classpath/java/awt/Cursor.java,v
retrieving revision 1.9
diff -u -r1.9 Cursor.java
--- java/awt/Cursor.java	30 Jan 2006 12:23:26 -0000	1.9
+++ java/awt/Cursor.java	10 Jul 2006 17:20:55 -0000
@@ -116,6 +116,16 @@
   */
   public static final int MOVE_CURSOR = 13;
 
+  public static String[] NAMES = { "Default Cursor", "Crosshair Cursor",
+                                  "Text Cursor", "Wait Cursor",
+                                  "Southwest Resize Cursor",
+                                  "Southeast Resize Cursor",
+                                  "Northwest Resize Cursor",
+                                  "Northeast Resize Cursor",
+                                  "North Resize Cursor", "South Resize Cursor",
+                                  "West Resize Cursor", "East Resize Cursor",
+                                  "Hand Cursor", "Move Cursor" };
+  
   public static final int CUSTOM_CURSOR    = 0xFFFFFFFF;
 
   private static final int PREDEFINED_COUNT = 14;
@@ -142,7 +152,10 @@
       throw new IllegalArgumentException ("invalid cursor " + type);
 
     this.type = type;
-    // FIXME: lookup and set name?
+
+    name = NAMES[type];
+      
+    // FIXME: lookup?
   }
 
   /** This constructor is used internally only. 

Reply via email to