Imported GNU Classpath 0.90
Imported GNU Classpath 0.90
* scripts/makemake.tcl: Set gnu/java/awt/peer/swing to ignore.
* gnu/classpath/jdwp/VMFrame.java (SIZE): New constant.
* java/lang/VMCompiler.java: Use gnu.java.security.hash.MD5.
* java/lang/Math.java: New override file.
* java/lang/Character.java: Merged from Classpath.
(start, end): Now 'int's.
(canonicalName): New field.
(CANONICAL_NAME, NO_SPACES_NAME, CONSTANT_NAME): New constants.
(UnicodeBlock): Added argument.
(of): New overload.
(forName): New method.
Updated unicode blocks.
(sets): Updated.
* sources.am: Regenerated.
* Makefile.in: Likewise.
From-SVN: r111942
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/* Menu.java -- A Java AWT Menu
|
||||
Copyright (C) 1999, 2002, 2004 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999, 2002, 2004, 2006 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
@@ -220,15 +220,16 @@ getItem(int index)
|
||||
public MenuItem
|
||||
add(MenuItem item)
|
||||
{
|
||||
MenuContainer parent = item.getParent();
|
||||
if (parent != null)
|
||||
parent.remove(item);
|
||||
|
||||
items.addElement(item);
|
||||
if (item.parent != null)
|
||||
{
|
||||
item.parent.remove(item);
|
||||
}
|
||||
item.parent = this;
|
||||
item.setParent(this);
|
||||
|
||||
if (peer != null)
|
||||
{
|
||||
item.addNotify();
|
||||
MenuPeer mp = (MenuPeer) peer;
|
||||
mp.addItem(item);
|
||||
}
|
||||
@@ -266,26 +267,33 @@ insert(MenuItem item, int index)
|
||||
if (index < 0)
|
||||
throw new IllegalArgumentException("Index is less than zero");
|
||||
|
||||
MenuPeer peer = (MenuPeer) getPeer();
|
||||
if (peer == null)
|
||||
return;
|
||||
|
||||
int count = getItemCount ();
|
||||
|
||||
if (index >= count)
|
||||
peer.addItem (item);
|
||||
add(item);
|
||||
else
|
||||
{
|
||||
for (int i = count - 1; i >= index; i--)
|
||||
peer.delItem (i);
|
||||
MenuContainer parent = item.getParent();
|
||||
if (parent != null)
|
||||
parent.remove(item);
|
||||
|
||||
items.insertElementAt(item, index);
|
||||
item.setParent(this);
|
||||
|
||||
peer.addItem (item);
|
||||
MenuPeer peer = (MenuPeer) getPeer();
|
||||
if (peer == null)
|
||||
return;
|
||||
|
||||
for (int i = count - 1; i >= index; i--)
|
||||
peer.delItem(i);
|
||||
|
||||
item.addNotify();
|
||||
peer.addItem(item);
|
||||
|
||||
for (int i = index; i < count; i++)
|
||||
peer.addItem ((MenuItem) items.elementAt (i));
|
||||
peer.addItem((MenuItem) items.elementAt (i));
|
||||
}
|
||||
|
||||
items.insertElementAt(item, index);
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
@@ -344,11 +352,15 @@ insertSeparator(int index)
|
||||
public synchronized void
|
||||
remove(int index)
|
||||
{
|
||||
items.removeElementAt(index);
|
||||
MenuItem item = (MenuItem) items.remove(index);
|
||||
|
||||
MenuPeer mp = (MenuPeer)getPeer();
|
||||
MenuPeer mp = (MenuPeer) getPeer();
|
||||
if (mp != null)
|
||||
mp.delItem(index);
|
||||
{
|
||||
mp.delItem(index);
|
||||
item.removeNotify();
|
||||
}
|
||||
item.setParent(null);
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
@@ -393,14 +405,21 @@ removeAll()
|
||||
public void
|
||||
addNotify()
|
||||
{
|
||||
MenuPeer peer = (MenuPeer) getPeer();
|
||||
if (peer == null)
|
||||
peer = getToolkit().createMenu(this);
|
||||
{
|
||||
peer = getToolkit().createMenu(this);
|
||||
setPeer(peer);
|
||||
}
|
||||
|
||||
Enumeration e = items.elements();
|
||||
while (e.hasMoreElements())
|
||||
{
|
||||
MenuItem mi = (MenuItem)e.nextElement();
|
||||
mi.addNotify();
|
||||
}
|
||||
peer.addItem(mi);
|
||||
}
|
||||
|
||||
super.addNotify ();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user