aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/awt/MenuItem.java
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2000-12-26 00:25:13 +0000
committerTom Tromey <tromey@gcc.gnu.org>2000-12-26 00:25:13 +0000
commit5472d1951a2f96bf92d004dec143cd21a4da3965 (patch)
treea938f800a6d828c421e0820a9d7ebe6d666e7f6e /libjava/java/awt/MenuItem.java
parent83050e0d93035b6d3f426df57e9096243d63800e (diff)
downloadgcc-5472d1951a2f96bf92d004dec143cd21a4da3965.zip
gcc-5472d1951a2f96bf92d004dec143cd21a4da3965.tar.gz
gcc-5472d1951a2f96bf92d004dec143cd21a4da3965.tar.bz2
MenuContainer.java: Fixed typo.
* java/awt/MenuContainer.java: Fixed typo. * Makefile.in: Rebuilt. * Makefile.am (awt_java_source_files): Added SystemColor.java. * java/awt/SystemColor.java: New file. * java/awt/Color.java (rgba): Now package-private. * java/awt/event/InputEvent.java (isAltGraphDown): New method. * java/awt/event/ContainerEvent.java (getContainer): Renamed from getComponent. * java/awt/MenuItem.java (addNotify): New method. (MenuItem(String,MenuShortcut)): New constructor. (setLabel): Notify peer of change. (setEnabled): Likewise. * java/awt/GridLayout.java (toString): New method. * java/awt/FlowLayout.java (LEADING, TRAILING): New constants. (FlowLayout): Check for LEADING and TRAILING. (setAlignment): Likewise. (layoutContainer): Handle component orientation. * java/awt/Component.java (orientatin): New field. (setComponentOrientation): Wrote. (getComponentOrientation): Wrote. * java/awt/Event.java (Event): Implements Serializable. (consumed): New field for serialization. * java/awt/Dimension.java (Dimension): Implements Serializable. * java/awt/Cursor.java (Cursor): Implements Serializable. * java/awt/Container.java (Container): No longer abstract. * java/awt/Choice.java: Wrote. * java/awt/Checkbox.java: Wrote. * java/awt/ItemSelectable.java: Documented. * java/awt/CheckboxGroup.java: Wrote. * java/awt/CardLayout.java (layoutContainer): Directly use fields in other classes. (getSize): Likewise. From-SVN: r38486
Diffstat (limited to 'libjava/java/awt/MenuItem.java')
-rw-r--r--libjava/java/awt/MenuItem.java37
1 files changed, 34 insertions, 3 deletions
diff --git a/libjava/java/awt/MenuItem.java b/libjava/java/awt/MenuItem.java
index 6e79ca0..06b5acc 100644
--- a/libjava/java/awt/MenuItem.java
+++ b/libjava/java/awt/MenuItem.java
@@ -9,8 +9,7 @@ details. */
package java.awt;
import java.awt.event.*;
import java.util.EventListener;
-
-/* A very incomplete placeholder. */
+import java.awt.peer.MenuItemPeer;
public class MenuItem extends MenuComponent
{
@@ -34,6 +33,12 @@ public class MenuItem extends MenuComponent
this.label = label;
}
+ public MenuItem (String label, MenuShortcut shortcut)
+ {
+ this.label = label;
+ this.shortcut = shortcut;
+ }
+
public String getLabel()
{
return label;
@@ -42,6 +47,11 @@ public class MenuItem extends MenuComponent
public synchronized void setLabel(String label)
{
this.label = label;
+ if (peer != null)
+ {
+ MenuItemPeer mp = (MenuItemPeer) peer;
+ mp.setLabel (label);
+ }
}
public boolean isEnabled()
@@ -51,7 +61,18 @@ public class MenuItem extends MenuComponent
public synchronized void setEnabled(boolean b)
{
- this.enabled = b;
+ // The JCL says this method is ignored if the enabled state does
+ // not change. I take that to mean that the peer is not notified
+ // in this case.
+ if (this.enabled != b)
+ {
+ this.enabled = b;
+ if (peer != null)
+ {
+ MenuItemPeer mp = (MenuItemPeer) peer;
+ mp.setEnabled (b);
+ }
+ }
}
/** @deprecated Use setEnabled() instead. */
@@ -120,6 +141,16 @@ public class MenuItem extends MenuComponent
actionListener = AWTEventMulticaster.remove(actionListener, l);
}
+ public void addNotify ()
+ {
+ if (peer != null)
+ {
+ // This choice of toolkit seems unsatisfying, but I'm not sure
+ // what else to do.
+ peer = Toolkit.getDefaultToolkit ().createMenuItem (this);
+ }
+ }
+
/** Returns all registered EventListers of the given listenerType.
* listenerType must be a subclass of EventListener, or a
* ClassClassException is thrown.