[kaffe] CVS kaffe (robilad): Resynced with classpath: awt cleanups
Kaffe CVS
cvs-commits at kaffe.org
Sun May 15 02:58:16 PDT 2005
PatchSet 6476
Date: 2005/05/15 09:46:06
Author: robilad
Branch: HEAD
Tag: (none)
Log:
Resynced with classpath: awt cleanups
Members:
ChangeLog:1.4003->1.4004
libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics2D.java:1.17->1.18
libraries/javalib/gnu/java/beans/decoder/PersistenceParser.java:1.1->1.2
libraries/javalib/gnu/javax/swing/text/html/parser/support/Parser.java:1.1->1.2
libraries/javalib/java/awt/Button.java:INITIAL->1.12
libraries/javalib/java/awt/Checkbox.java:INITIAL->1.9
libraries/javalib/java/awt/Choice.java:INITIAL->1.8
libraries/javalib/java/awt/Frame.java:INITIAL->1.26
libraries/javalib/java/awt/MenuComponent.java:INITIAL->1.17
libraries/javalib/java/awt/MenuItem.java:INITIAL->1.20
libraries/javalib/java/awt/TextComponent.java:INITIAL->1.6
libraries/javalib/java/awt/Window.java:INITIAL->1.32
libraries/javalib/java/awt/geom/Arc2D.java:INITIAL->1.9
libraries/javalib/java/awt/geom/Area.java:INITIAL->1.6
libraries/javalib/java/awt/geom/GeneralPath.java:INITIAL->1.8
libraries/javalib/javax/swing/JColorChooser.java:1.3->1.4
libraries/javalib/javax/swing/JFormattedTextField.java:1.8->1.9
libraries/javalib/javax/swing/RepaintManager.java:1.6->1.7
libraries/javalib/javax/swing/Timer.java:1.9->1.10
libraries/javalib/javax/swing/ToolTipManager.java:1.7->1.8
libraries/javalib/javax/swing/TransferHandler.java:1.6->1.7
libraries/javalib/javax/swing/colorchooser/DefaultHSBChooserPanel.java:1.3->1.4
libraries/javalib/javax/swing/colorchooser/DefaultRGBChooserPanel.java:1.4->1.5
libraries/javalib/javax/swing/colorchooser/DefaultSwatchChooserPanel.java:1.3->1.4
libraries/javalib/javax/swing/plaf/basic/BasicArrowButton.java:1.7->1.8
libraries/javalib/javax/swing/plaf/basic/BasicColorChooserUI.java:1.2->1.3
libraries/javalib/javax/swing/plaf/basic/BasicComboBoxUI.java:1.5->1.6
libraries/javalib/javax/swing/plaf/basic/BasicDesktopIconUI.java:1.2->1.3
libraries/javalib/javax/swing/plaf/basic/BasicInternalFrameTitlePane.java:1.4->1.5
libraries/javalib/javax/swing/plaf/basic/BasicListUI.java:1.9->1.10
libraries/javalib/javax/swing/plaf/basic/BasicOptionPaneUI.java:1.6->1.7
libraries/javalib/javax/swing/plaf/basic/BasicPopupMenuUI.java:1.5->1.6
libraries/javalib/javax/swing/plaf/basic/BasicScrollBarUI.java:1.11->1.12
libraries/javalib/javax/swing/plaf/basic/BasicSliderUI.java:1.8->1.9
libraries/javalib/javax/swing/plaf/basic/BasicSplitPaneDivider.java:1.6->1.7
libraries/javalib/javax/swing/plaf/basic/BasicTabbedPaneUI.java:1.9->1.10
libraries/javalib/javax/swing/plaf/basic/BasicToolBarUI.java:1.8->1.9
libraries/javalib/javax/swing/text/JTextComponent.java:1.13->1.14
libraries/javalib/javax/swing/text/StringContent.java:1.2->1.3
libraries/javalib/javax/swing/text/html/parser/DocumentParser.java:1.3->1.4
libraries/javalib/javax/swing/text/html/parser/ParserDelegator.java:1.3->1.4
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.4003 kaffe/ChangeLog:1.4004
--- kaffe/ChangeLog:1.4003 Sun May 15 09:40:45 2005
+++ kaffe/ChangeLog Sun May 15 09:46:06 2005
@@ -2,6 +2,102 @@
Resynced with GNU Classpath.
+ 2005-04-26 Tom Tromey <tromey at redhat.com>
+
+ * javax/swing/text/html/parser/ParserDelegator.java (callBack,
+ gnu): Now package-private.
+ * javax/swing/text/html/parser/DocumentParser.java (parser,
+ callBack, gnu): Now package-private.
+ * javax/swing/text/StringContent.java (content, setOffset,
+ checkLocation): Now package-private.
+ * javax/swing/text/JTextComponent.java (doc): Now
+ package-private.
+ * javax/swing/plaf/basic/BasicToolBarUI.java (owner,
+ lastGoodOrientation, origParent, borders, cachedBounds,
+ cachedOrientation, DragWindow): Now package-private.
+ * javax/swing/plaf/basic/BasicTabbedPaneUI.java (incrButton,
+ decrButton, viewport, panel, currentScrollLocation, layoutManager,
+ tabAreaRect, contentRect, createIncreaseButton,
+ createDecreaseButton, findPointForIndex): Now package-private.
+ * javax/swing/plaf/basic/BasicSplitPaneDivider.java
+ (currentDividerLocation, moveDividerTo): Now package-private.
+ * javax/swing/plaf/basic/BasicSliderUI.java (findClosestTick): Now
+ package-private.
+ * javax/swing/plaf/basic/BasicScrollBarUI.java
+ (calculatePreferredSize, valueForYPosition, valueForXPosition):
+ Now package-private.
+ * javax/swing/plaf/basic/BasicPopupMenuUI.java
+ (topWindowListener): Now package-private.
+ * javax/swing/plaf/basic/BasicOptionPaneUI.java (iconSize,
+ OK_STRING, YES_STRING, NO_STRING, CANCEL_STRING): Now constants.
+ (messageAreaContainer, buttonContainer, resetSelectedValue): Now
+ package-private.
+ * javax/swing/plaf/basic/BasicListUI.java (damageLayout): Now
+ package-private.
+ * javax/swing/plaf/basic/BasicInternalFrameTitlePane.java (title):
+ Now package-private.
+ * javax/swing/plaf/basic/BasicDesktopIconUI.java (button): Now
+ package-private.
+ * javax/swing/plaf/basic/BasicComboBoxUI.java (largestItemSize,
+ borderInsets): Now package-private.
+ (arrowButtonWidth): Likewise. Now a constant.
+ * javax/swing/plaf/basic/BasicColorChooserUI.java (chooser, pane,
+ makeTabs, updatePreviewPanel): Now package-private.
+ * javax/swing/plaf/basic/BasicArrowButton.java (shadow,
+ darkShadow, highlight): Now package-private.
+ * javax/swing/colorchooser/DefaultSwatchChooserPanel.java
+ (addColorToQueue): Now package-private.
+ * javax/swing/colorchooser/DefaultRGBChooserPanel.java
+ (spinnerChange, sliderChange, updateChange, R, G, B, RSpinner,
+ GSpinner, BSpinner): Now package-private.
+ * javax/swing/colorchooser/DefaultHSBChooserPanel.java
+ (gradientImage, trackImage, slider, hRadio, sRadio, bRadio,
+ hSpinner, sSpinner, bSpinner, gradientPoint, internalChange,
+ spinnerTrigger, locked, handlingMouse, updateImage, updateSlider,
+ updateTrack): Now package-private.
+ * javax/swing/TransferHandler.java (clipboard): Now
+ package-private.
+ * javax/swing/ToolTipManager.java (showTip, hideTip): Now
+ package-private.
+ * javax/swing/Timer.java (drainEvents, queueEvent): Now
+ package-private.
+ * javax/swing/RepaintManager.java (globalManager): Now
+ package-private.
+ * javax/swing/JFormattedTextField.java (editValid): Now
+ package-private.
+ * javax/swing/JColorChooser.java (makeModal): Now
+ package-private.
+ * java/awt/geom/GeneralPath.java (rule, types, xpoints, ypoints,
+ index, path): Now package-private.
+ * java/awt/geom/Area.java (solids, holes, cubicCubicIntersect,
+ lineQuadIntersect, lineCubicIntersect, linesIntersect,
+ pointEquals): Now package-private.
+ * java/awt/geom/Arc2D.java (type): Now package-private.
+ * java/awt/Window.java (windowFocusOwner): Now package-private.
+ * java/awt/TextComponent.java (editable, selectionStart,
+ selectionEnd, text, getIndexAtPoint, getCharacterBounds): Now
+ package-private.
+ * java/awt/MenuItem.java (actionCommand, enabled, label): Now
+ package-private.
+ * java/awt/MenuComponent.java (focusListener): Now
+ package-private.
+ * java/awt/Frame.java (state): Now package-private.
+ * java/awt/Choice.java (pItems): Now package-private.
+ * java/awt/Checkbox.java (state): Now package-private.
+ * java/awt/Button.java (actionCommand, label): Now
+ package-private.
+ * gnu/javax/swing/text/html/parser/support/Parser.java
+ (attributes, _handleEndTag_remaining, _handleStartTag): Now
+ package-private.
+ * gnu/java/beans/decoder/PersistenceParser.java (javaHandler): Now
+ package-private.
+ * gnu/java/awt/peer/gtk/GdkGraphics2D.java (paint, stroke, fg, bg,
+ clip, transform, font, comp): Now package-private.
+
+2005-05-15 Dalibor Topic <robilad at kaffe.org>
+
+ Resynced with GNU Classpath.
+
2005-04-26 Chris Burdess <dog at gnu.org>
* gnu/java/net/protocol/http/HTTPURLConnection.java: Throw
Index: kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics2D.java
diff -u kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics2D.java:1.17 kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics2D.java:1.18
--- kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics2D.java:1.17 Sat Feb 19 15:30:25 2005
+++ kaffe/libraries/javalib/gnu/java/awt/peer/gtk/GdkGraphics2D.java Sun May 15 09:46:12 2005
@@ -114,19 +114,22 @@
private final int native_state = GtkGenericPeer.getUniqueInteger();
- private Paint paint;
- private Stroke stroke;
- private Color fg;
- private Color bg;
- private Shape clip;
- private AffineTransform transform;
+ // These are package-private to avoid accessor methods.
+ Paint paint;
+ Stroke stroke;
+ Color fg;
+ Color bg;
+ Shape clip;
+ AffineTransform transform;
private GtkComponentPeer component;
- private Font font;
+ // This is package-private to avoid an accessor method.
+ Font font;
private RenderingHints hints;
private BufferedImage bimage;
private boolean pixelConversionRequired;
private int[] pixelBuffer;
- private Composite comp;
+ // This is package-private to avoid an accessor method.
+ Composite comp;
private Stack stateStack;
private native void initState(GtkComponentPeer component);
Index: kaffe/libraries/javalib/gnu/java/beans/decoder/PersistenceParser.java
diff -u kaffe/libraries/javalib/gnu/java/beans/decoder/PersistenceParser.java:1.1 kaffe/libraries/javalib/gnu/java/beans/decoder/PersistenceParser.java:1.2
--- kaffe/libraries/javalib/gnu/java/beans/decoder/PersistenceParser.java:1.1 Thu Jan 6 22:38:54 2005
+++ kaffe/libraries/javalib/gnu/java/beans/decoder/PersistenceParser.java Sun May 15 09:46:13 2005
@@ -1,5 +1,5 @@
/* gnu.java.beans.PersistenceParser
- Copyright (C) 2004 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -83,8 +83,9 @@
private ElementHandler currentHandler;
/** The real root element that stores all objects created during parsing.
+ * Package-private to avoid an accessor method.
*/
- private JavaHandler javaHandler;
+ JavaHandler javaHandler;
/** Stores the decoded objects. */
private List objects = new LinkedList();
Index: kaffe/libraries/javalib/gnu/javax/swing/text/html/parser/support/Parser.java
diff -u kaffe/libraries/javalib/gnu/javax/swing/text/html/parser/support/Parser.java:1.1 kaffe/libraries/javalib/gnu/javax/swing/text/html/parser/support/Parser.java:1.2
--- kaffe/libraries/javalib/gnu/javax/swing/text/html/parser/support/Parser.java:1.1 Fri Mar 11 20:04:52 2005
+++ kaffe/libraries/javalib/gnu/javax/swing/text/html/parser/support/Parser.java Sun May 15 09:46:14 2005
@@ -157,8 +157,9 @@
/**
* The attributes of the current HTML element.
+ * Package-private to avoid an accessor method.
*/
- private htmlAttributeSet attributes =
+ htmlAttributeSet attributes =
htmlAttributeSet.EMPTY_HTML_ATTRIBUTE_SET;
/**
@@ -1154,9 +1155,10 @@
/**
* Actions that are also required if the closing action was
- * intiated by the tag validator.
+ * initiated by the tag validator.
+ * Package-private to avoid an accessor method.
*/
- private void _handleEndTag_remaining(TagElement tag)
+ void _handleEndTag_remaining(TagElement tag)
{
HTML.Tag h = tag.getHTMLTag();
@@ -1183,9 +1185,10 @@
* A hooks for operations, preceeding call to handleStartTag().
* The method is called when the HTML opening tag ((like <table>)
* is found.
+ * Package-private to avoid an accessor method.
* @param The tag
*/
- private void _handleStartTag(TagElement tag)
+ void _handleStartTag(TagElement tag)
{
validator.openTag(tag, attributes);
startingTag(tag);
===================================================================
Checking out kaffe/libraries/javalib/java/awt/Button.java
RCS: /home/cvs/kaffe/kaffe/libraries/javalib/java/awt/Button.java,v
VERS: 1.12
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/libraries/javalib/java/awt/Button.java Sun May 15 09:58:15 2005
@@ -0,0 +1,466 @@
+/* Button.java -- AWT button widget
+ Copyright (C) 1999, 2002, 2004, 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package java.awt;
+
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.peer.ButtonPeer;
+import java.lang.reflect.Array;
+import java.util.EventListener;
+
+import javax.accessibility.Accessible;
+import javax.accessibility.AccessibleAction;
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleRole;
+import javax.accessibility.AccessibleValue;
+
+/**
+ * This class provides a button widget for the AWT.
+ *
+ * @author Aaron M. Renn (arenn at urbanophile.com)
+ * @author Tom Tromey (tromey at cygnus.com)
+ */
+public class Button extends Component
+ implements java.io.Serializable, Accessible
+{
+
+/*
+ * Static Variables
+ */
+
+// FIXME: Need readObject/writeObject for serialization
+
+// Serialization version constant
+private static final long serialVersionUID = -8774683716313001058L;
+
+/*************************************************************************/
+
+/*
+ * Instance Variables
+ */
+
+/**
+ * @serial The action command name for this button.
+ * This is package-private to avoid an accessor method.
+ */
+String actionCommand;
+
+/**
+ * @serial The label for this button.
+ * This is package-private to avoid an accessor method.
+ */
+String label;
+
+// List of ActionListeners for this class.
+private transient ActionListener action_listeners;
+
+ /*
+ * The number used to generate the name returned by getName.
+ */
+ private static transient long next_button_number;
+
+ protected class AccessibleAWTButton extends AccessibleAWTComponent
+ implements AccessibleAction, AccessibleValue
+ {
+ protected AccessibleAWTButton()
+ {
+ // Do nothing here.
+ }
+
+ /* (non-Javadoc)
+ * @see javax.accessibility.AccessibleAction#getAccessibleActionCount()
+ */
+ public int getAccessibleActionCount()
+ {
+ // Only 1 action possible
+ return 1;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.accessibility.AccessibleAction#getAccessibleActionDescription(int)
+ */
+ public String getAccessibleActionDescription(int i)
+ {
+ // JDK 1.4.2 returns the string "click" for action 0. However, the API
+ // docs don't say what the string to be returned is, beyond being a
+ // description of the action. So we return the same thing for
+ // compatibility with 1.4.2.
+ if (i == 0)
+ return "click";
+ return null;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.accessibility.AccessibleAction#doAccessibleAction(int)
+ */
+ public boolean doAccessibleAction(int i)
+ {
+ if (i != 0)
+ return false;
+ processActionEvent(new ActionEvent(this, ActionEvent.ACTION_PERFORMED, actionCommand));
+ return true;
+ }
+
+ public String getAccessibleName()
+ {
+ return label;
+ }
+
+ public AccessibleAction getAccessibleAction()
+ {
+ return this;
+ }
+
+ public AccessibleValue getAccessibleValue()
+ {
+ return this;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.accessibility.AccessibleValue#getCurrentAccessibleValue()
+ */
+ public Number getCurrentAccessibleValue()
+ {
+ // Docs say return 1 if selected, but buttons can't be selected, right?
+ return new Integer(0);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.accessibility.AccessibleValue#setCurrentAccessibleValue(java.lang.Number)
+ */
+ public boolean setCurrentAccessibleValue(Number number)
+ {
+ // Since there's no selection with buttons, we're ignoring this.
+ // TODO someone who knows shoulw check this.
+ return false;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.accessibility.AccessibleValue#getMinimumAccessibleValue()
+ */
+ public Number getMinimumAccessibleValue()
+ {
+ return new Integer(0);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.accessibility.AccessibleValue#getMaximumAccessibleValue()
+ */
+ public Number getMaximumAccessibleValue()
+ {
+ return new Integer(0);
+ }
+
+ public AccessibleRole getAccessibleRole()
+ {
+ return AccessibleRole.PUSH_BUTTON;
+ }
+ }
+
+/*************************************************************************/
+
+/*
+ * Constructors
+ */
+
+/**
+ * Initializes a new instance of <code>Button</code> with no label.
+ *
+ * @exception HeadlessException If GraphicsEnvironment.isHeadless()
+ * returns true
+ */
+public
+Button()
+{
+ this("");
+}
+
+/*************************************************************************/
+
+/**
+ * Initializes a new instance of <code>Button</code> with the specified
+ * label. The action command name is also initialized to this value.
+ *
+ * @param label The label to display on the button.
+ *
+ * @exception HeadlessException If GraphicsEnvironment.isHeadless()
+ * returns true
+ */
+public
+Button(String label)
+{
+ this.label = label;
+ actionCommand = label;
+
+ if (GraphicsEnvironment.isHeadless ())
+ throw new HeadlessException ();
+}
+
+/*************************************************************************/
+
+/*
+ * Instance Variables
+ */
+
+/**
+ * Returns the label for this button.
+ *
+ * @return The label for this button.
+ */
+public String
+getLabel()
+{
+ return(label);
+}
+
+/*************************************************************************/
+
+/**
+ * Sets the label for this button to the specified value.
+ *
+ * @param label The new label for this button.
+ */
+public synchronized void
+setLabel(String label)
+{
+ this.label = label;
+ actionCommand = label;
+ if (peer != null)
+ {
+ ButtonPeer bp = (ButtonPeer) peer;
+ bp.setLabel (label);
+ }
+}
+
+/*************************************************************************/
+
+/**
+ * Returns the action command name for this button.
+ *
+ * @return The action command name for this button.
+ */
+public String
+getActionCommand()
+{
+ return(actionCommand);
+}
+
+/*************************************************************************/
+
+/**
+ * Sets the action command name for this button to the specified value.
+ *
+ * @param actionCommand The new action command name.
+ */
+public void
+setActionCommand(String actionCommand)
+{
+ this.actionCommand = actionCommand == null ? label : actionCommand;
+}
+
+/*************************************************************************/
+
+/**
+ * Adds a new entry to the list of listeners that will receive
+ * action events from this button.
+ *
+ * @param listener The listener to add.
+ */
+public synchronized void
+addActionListener(ActionListener listener)
+{
+ action_listeners = AWTEventMulticaster.add(action_listeners, listener);
+}
+
+/*************************************************************************/
+
+/**
+ * Removes the specified listener from the list of listeners that will
+ * receive action events from this button.
+ *
+ * @param listener The listener to remove.
+ */
+public synchronized void
+removeActionListener(ActionListener listener)
+{
+ action_listeners = AWTEventMulticaster.remove(action_listeners, listener);
+}
+
+ /**
+ * Returns all added <code>ActionListener</code> objects.
+ *
+ * @return an array of listeners
+ *
+ * @since 1.4
+ */
+ public synchronized ActionListener[] getActionListeners()
+ {
+ return (ActionListener[])
+ AWTEventMulticaster.getListeners(action_listeners,
+ ActionListener.class);
+ }
+
+/**
+ * Returns all registered EventListers of the given listenerType.
+ * listenerType must be a subclass of EventListener, or a
+ * ClassClassException is thrown.
+ *
+ * @param listenerType the listener type to return
+ *
+ * @return an array of listeners
+ *
+ * @exception ClassCastException If listenerType doesn't specify a class or
+ * interface that implements @see java.util.EventListener.
+ *
+ * @since 1.3
+ */
+ public EventListener[] getListeners(Class listenerType)
+ {
+ if (listenerType == ActionListener.class)
+ return getActionListeners();
+ return (EventListener[]) Array.newInstance(listenerType, 0);
+ }
+
+/*************************************************************************/
+
+/**
+ * Notifies this button that it should create its native peer object.
+ */
+public void
+addNotify()
+{
+ if (peer == null)
+ peer = getToolkit ().createButton (this);
+ super.addNotify();
+}
+
+/*************************************************************************/
+
+/**
+ * Processes an event for this button. If the specified event is an
+ * instance of <code>ActionEvent</code>, then the
+ * <code>processActionEvent()</code> method is called to dispatch it
+ * to any registered listeners. Otherwise, the superclass method
+ * will be invoked. Note that this method will not be called at all
+ * unless <code>ActionEvent</code>'s are enabled. This will be done
+ * implicitly if any listeners are added.
+ *
+ * @param event The event to process.
+ */
+protected void
+processEvent(AWTEvent event)
+{
+ if (event instanceof ActionEvent)
+ processActionEvent((ActionEvent)event);
+ else
+ super.processEvent(event);
+}
+
+/*************************************************************************/
+
+/**
+ * This method dispatches an action event for this button to any
+ * registered listeners.
+ *
+ * @param event The event to process.
+ */
+protected void
+processActionEvent(ActionEvent event)
+{
+ if (action_listeners != null)
+ action_listeners.actionPerformed(event);
+}
+
+void
+dispatchEventImpl(AWTEvent e)
+{
+ if (e.id <= ActionEvent.ACTION_LAST
+ && e.id >= ActionEvent.ACTION_FIRST
+ && (action_listeners != null
+ || (eventMask & AWTEvent.ACTION_EVENT_MASK) != 0))
+ processEvent(e);
+ else
+ super.dispatchEventImpl(e);
+}
+
+/*************************************************************************/
+
+/**
+ * Returns a debugging string for this button.
+ *
+ * @return A debugging string for this button.
+ */
+protected String
+paramString()
+{
+ return getName () + "," + getX () + "," + getY () + ","
+ + getWidth () + "x" + getHeight () + ",label=" + getLabel ();
+}
+
+/**
+ * Gets the AccessibleContext associated with this <code>Button</code>.
+ * The context is created, if necessary.
+ *
+ * @return the associated context
+ */
+public AccessibleContext getAccessibleContext()
+{
+ /* Create the context if this is the first request */
+ if (accessibleContext == null)
+ accessibleContext = new AccessibleAWTButton();
+ return accessibleContext;
+}
+
+ /**
+ * Generate a unique name for this button.
+ *
+ * @return A unique name for this button.
+ */
+ String generateName ()
+ {
+ return "button" + getUniqueLong ();
+ }
+
+ private static synchronized long getUniqueLong ()
+ {
+ return next_button_number++;
+ }
+
+} // class Button
+
===================================================================
Checking out kaffe/libraries/javalib/java/awt/Checkbox.java
RCS: /home/cvs/kaffe/kaffe/libraries/javalib/java/awt/Checkbox.java,v
VERS: 1.9
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/libraries/javalib/java/awt/Checkbox.java Sun May 15 09:58:16 2005
@@ -0,0 +1,649 @@
+/* Checkbox.java -- An AWT checkbox widget
+ Copyright (C) 1999, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package java.awt;
+
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.awt.peer.CheckboxPeer;
+import java.io.Serializable;
+
+import javax.accessibility.Accessible;
+import javax.accessibility.AccessibleAction;
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleRole;
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+import javax.accessibility.AccessibleValue;
+
+/**
+ * This class implements a component which has an on/off state. Two
+ * or more Checkboxes can be grouped by a CheckboxGroup.
+ *
+ * @author Aaron M. Renn (arenn at urbanophile.com)
+ * @author Tom Tromey (tromey at redhat.com)
+ */
+public class Checkbox extends Component
+ implements ItemSelectable, Accessible, Serializable
+{
+
+// FIXME: Need readObject/writeObject for this.
+
+/*
+ * Static Variables
+ */
+
+// Serialization Constant
+private static final long serialVersionUID = 7270714317450821763L;
+
+/*************************************************************************/
+
+/*
+ * Instance Variables
+ */
+
+/**
+ * @serial The checkbox group for this checkbox.
+ */
+private CheckboxGroup group;
+
+/**
+ * @serial The label on this checkbox.
+ */
+private String label;
+
+/**
+ * @serial The state of this checkbox.
+ * This is package-private to avoid an accessor method.
+ */
+boolean state;
+
+// The list of listeners for this object.
+private transient ItemListener item_listeners;
+
+ /*
+ * The number used to generate the name returned by getName.
+ */
+ private static transient long next_checkbox_number;
+
+/**
+ * This class provides accessibility support for the
+ * checkbox.
+ *
+ * @author Jerry Quinn (jlquinn at optonline.net)
+ * @author Andrew John Hughes (gnu_andrew at member.fsf.org)
+ */
+protected class AccessibleAWTCheckbox
+ extends AccessibleAWTComponent
+ implements ItemListener, AccessibleAction, AccessibleValue
+{
+ /**
+ * Serialization constant to match JDK 1.5
+ */
+ private static final long serialVersionUID = 7881579233144754107L;
+
+ /**
+ * Default constructor which simply calls the
+ * super class for generic component accessibility
+ * handling.
+ */
+ public AccessibleAWTCheckbox()
+ {
+ super();
+ }
+
+ /**
+ * Captures changes to the state of the checkbox and
+ * fires appropriate accessible property change events.
+ *
+ * @param event the event fired.
+ * @see java.awt.event.ItemListener#itemStateChanged(java.awt.event.ItemEvent)
+ */
+ public void itemStateChanged(ItemEvent event)
+ {
+ firePropertyChange(ACCESSIBLE_STATE_PROPERTY,
+ state ? null : AccessibleState.CHECKED,
+ state ? AccessibleState.CHECKED : null);
+ }
+
+ /**
+ * Returns an implementation of the <code>AccessibleAction</code>
+ * interface for this accessible object. In this case, the
+ * current instance is simply returned (with a more appropriate
+ * type), as it also implements the accessible action as well as
+ * the context.
+ *
+ * @return the accessible action associated with this context.
+ * @see javax.accessibility.AccessibleAction
+ */
+ public AccessibleAction getAccessibleAction()
+ {
+ return this;
+ }
+
+ /**
+ * Returns an implementation of the <code>AccessibleValue</code>
+ * interface for this accessible object. In this case, the
+ * current instance is simply returned (with a more appropriate
+ * type), as it also implements the accessible value as well as
+ * the context.
+ *
+ * @return the accessible value associated with this context.
+ * @see javax.accessibility.AccessibleValue
+ */
+ public AccessibleValue getAccessibleValue()
+ {
+ return this;
+ }
+
+ /*
+ * The following methods are implemented in the JDK (up to
+ * 1.5) as stubs. We do likewise here.
+ */
+
+ /**
+ * Returns the number of actions associated with this accessible
+ * object. This default implementation returns 0.
+ *
+ * @return the number of accessible actions available.
+ * @see javax.accessibility.AccessibleAction#getAccessibleActionCount()
+ */
+ public int getAccessibleActionCount()
+ {
+ // 1.4.1 and 1.5 do this
+ return 0;
+ }
+
+ /**
+ * Returns a description of the action with the supplied id.
+ * This default implementation always returns null.
+ *
+ * @param i the id of the action whose description should be
+ * retrieved.
+ * @return a <code>String</code> describing the action.
+ * @see javax.accessibility.AccessibleAction#getAccessibleActionDescription(int)
+ */
+ public String getAccessibleActionDescription(int i)
+ {
+ // 1.5 does this
+ return null;
+ }
+
+ /**
+ * Executes the action with the specified id. This
+ * default implementation simply returns false.
+ *
+ * @param i the id of the action to perform.
+ * @return true if the action was performed.
+ * @see javax.accessibility.AccessibleAction#doAccessibleAction(int)
+ */
+ public boolean doAccessibleAction(int i)
+ {
+ // 1.5 does this
+ return false;
+ }
+
+ /**
+ * Returns the current value of this accessible object.
+ * If no value has been set, null is returned. This
+ * default implementation always returns null, regardless.
+ *
+ * @return the numeric value of this object, or null if
+ * no value has been set.
+ * @see javax.accessibility.AccessibleValue#getCurrentAccessibleValue()
+ */
+ public Number getCurrentAccessibleValue()
+ {
+ // 1.5 does this
+ return null;
+ }
+
+ /**
+ * Sets the current value of this accessible object
+ * to that supplied. In this default implementation,
+ * the value is never set and the method always returns
+ * false.
+ *
+ * @param number the new accessible value.
+ * @return true if the value was set.
+ * @see javax.accessibility.AccessibleValue#setCurrentAccessibleValue(java.lang.Number)
+ */
+ public boolean setCurrentAccessibleValue(Number number)
+ {
+ // 1.5 does this
+ return false;
+ }
+
+ /**
+ * Returns the minimum acceptable accessible value used
+ * by this object, or null if no minimum value exists.
+ * This default implementation always returns null.
+ *
+ * @return the minimum acceptable accessible value, or null
+ * if there is no minimum.
+ * @see javax.accessibility.AccessibleValue#getMinimumAccessibleValue()
+ */
+ public Number getMinimumAccessibleValue()
+ {
+ return null;
*** Patch too long, truncated ***
More information about the kaffe
mailing list