diff options
| author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-12-26 00:25:13 +0000 |
|---|---|---|
| committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-12-26 00:25:13 +0000 |
| commit | 9c72afc2108536a7ee9b2c2f38eeb88472d14fd5 (patch) | |
| tree | a938f800a6d828c421e0820a9d7ebe6d666e7f6e /libjava/java/awt/MenuItem.java | |
| parent | c51f00ea19cebb48e5f918eede4a10ac226d0822 (diff) | |
| download | gcc-9c72afc2108536a7ee9b2c2f38eeb88472d14fd5.tar.gz | |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38486 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/awt/MenuItem.java')
| -rw-r--r-- | libjava/java/awt/MenuItem.java | 37 |
1 files changed, 34 insertions, 3 deletions
diff --git a/libjava/java/awt/MenuItem.java b/libjava/java/awt/MenuItem.java index 6e79ca0fc85..06b5accc24e 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. |
