2004-01-27 Kim Ho <kho@redhat.com>
* gnu/java/awt/peer/gtk/GtkFramePeer.java
(removeMenuBarPeer): Remove MenuBarPeer argument.
* gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java
(dispose): Call native method.
* java/awt/Frame.java (setMenuBar): Create and remove
MenuBar peers only if the Frame has a peer.
(addNotify): Create the MenuBar peer if one exists.
(removeNotify): Remove MenuBar peer if one exists.
* java/awt/Menu.java: Fix imports.
(addNotify): Don't use full class name.
(removeNotify): Call removeNotify on all children.
* java/awt/MenuBar.java (removeNotify): Call
removeNotify on all children.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
(removeMenuBarPeer): Remove MenuBarPeer argument.
Iterate through children to find the Frame's MenuBar.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c
New file.
(dispose): Remove references to the MenuComponent.
From-SVN: r76740
This commit is contained in:
@@ -41,6 +41,7 @@ package java.awt;
|
||||
import java.awt.peer.MenuPeer;
|
||||
import java.io.Serializable;
|
||||
import java.util.Vector;
|
||||
import java.util.Enumeration;
|
||||
|
||||
/**
|
||||
* This class represents a pull down or tear off menu in Java's AWT.
|
||||
@@ -379,7 +380,7 @@ addNotify()
|
||||
{
|
||||
if (peer == null)
|
||||
peer = getToolkit().createMenu(this);
|
||||
java.util.Enumeration e = items.elements();
|
||||
Enumeration e = items.elements();
|
||||
while (e.hasMoreElements())
|
||||
{
|
||||
MenuItem mi = (MenuItem)e.nextElement();
|
||||
@@ -396,6 +397,12 @@ addNotify()
|
||||
public void
|
||||
removeNotify()
|
||||
{
|
||||
Enumeration e = items.elements();
|
||||
while (e.hasMoreElements())
|
||||
{
|
||||
MenuItem mi = (MenuItem) e.nextElement();
|
||||
mi.removeNotify();
|
||||
}
|
||||
super.removeNotify();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user