From 133e0ace678e7fdcc73bc5606f6cb83a15e0ca19 Mon Sep 17 00:00:00 2001 From: Graydon Hoare Date: Thu, 12 Feb 2004 06:26:07 +0000 Subject: [PATCH] oops, forgot added and removed files. From-SVN: r77694 --- .../swing/plaf/basic/BasicButtonListener.java | 188 ++++++++++++++++++ .../javax/swing/plaf/basic/BasicDefaults.java | 126 ------------ .../basic/BasicRootPaneUI.java} | 28 +-- 3 files changed, 203 insertions(+), 139 deletions(-) create mode 100644 libjava/javax/swing/plaf/basic/BasicButtonListener.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicDefaults.java rename libjava/javax/swing/{ToggleButtonModel.java => plaf/basic/BasicRootPaneUI.java} (83%) diff --git a/libjava/javax/swing/plaf/basic/BasicButtonListener.java b/libjava/javax/swing/plaf/basic/BasicButtonListener.java new file mode 100644 index 00000000000..393ba3727bb --- /dev/null +++ b/libjava/javax/swing/plaf/basic/BasicButtonListener.java @@ -0,0 +1,188 @@ +/* BasicButtonListener.java + Copyright (C) 2004 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 javax.swing.plaf.basic; + +import java.awt.event.FocusEvent; +import java.awt.event.FocusListener; +import java.awt.event.InputEvent; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; +import java.awt.event.MouseMotionListener; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import javax.swing.AbstractButton; +import javax.swing.ButtonModel; +import javax.swing.UIDefaults; +import javax.swing.UIManager; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; +import javax.swing.JComponent; + +public class BasicButtonListener + implements MouseListener, MouseMotionListener, FocusListener, + ChangeListener, PropertyChangeListener +{ + public void propertyChange(PropertyChangeEvent e) + { + } + protected void checkOpacity(AbstractButton b) + { + } + public void focusGained(FocusEvent e) + { + } + + public void focusLost(FocusEvent e) + { + if (e.getSource() instanceof AbstractButton) + { + AbstractButton button = (AbstractButton) e.getSource(); + ButtonModel model = button.getModel(); + model.setArmed(false); + } + } + public void installKeyboardActions(JComponent c) + { + } + public void uninstallKeyboardActions(JComponent c) + { + } + public void stateChanged(ChangeEvent e) + { + } + public void mouseMoved(MouseEvent e) + { + System.err.println("button got mouse move"); + } + public void mouseDragged(MouseEvent e) + { + System.err.println("button got mouse drag"); + } + public void mouseClicked(MouseEvent e) + { + System.err.println("button got mouse click"); + } + + /** + * Accept a mouse press event and arm the button. + * + * @param e The mouse press event to accept + */ + public void mousePressed(MouseEvent e) + { + if (e.getSource() instanceof AbstractButton) + { + AbstractButton button = (AbstractButton) e.getSource(); + ButtonModel model = button.getModel(); + if ((e.getModifiers() & InputEvent.BUTTON1_MASK) != 0) + { + // It is important that these transitions happen in this order. + model.setArmed(true); + model.setPressed(true); + } + } + } + + + /** + * Accept a mouse release event and set the button's + * "pressed" property to true, if the model + * is armed. If the model is not armed, ignore the event. + * + * @param e The mouse release event to accept + */ + public void mouseReleased(MouseEvent e) + { + if (e.getSource() instanceof AbstractButton) + { + AbstractButton button = (AbstractButton) e.getSource(); + ButtonModel model = button.getModel(); + if ((e.getModifiers() & InputEvent.BUTTON1_MASK) != 0) + { + // It is important that these transitions happen in this order. + model.setPressed(false); + model.setArmed(false); + } + } + } + + + /** + * Accept a mouse enter event and set the button's "rollover" property to + * true, if the button's "rolloverEnabled" property is + * true. If the button is currently armed and the mouse + * button is not held down, this enter event will also disarm the model. + * + * @param e The mouse enter event to accept + */ + public void mouseEntered(MouseEvent e) + { + if (e.getSource() instanceof AbstractButton) + { + AbstractButton button = (AbstractButton) e.getSource(); + ButtonModel model = button.getModel(); + if (button.isRolloverEnabled()) + model.setRollover(true); + + if (model.isPressed() + && (e.getModifiers() & InputEvent.BUTTON1_MASK) != 0) + model.setArmed(true); + else + model.setArmed(false); + } + } + + /** + * Accept a mouse exit event and set the button's model's "rollover" + * property to false, if it's "rolloverEnabled" property is + * true. Also disarm the button. + * + * @param e The mouse exit event to accept + */ + public void mouseExited(MouseEvent e) + { + if (e.getSource() instanceof AbstractButton) + { + AbstractButton button = (AbstractButton) e.getSource(); + ButtonModel model = button.getModel(); + if (button.isRolloverEnabled()) + model.setRollover(false); + model.setArmed(false); + } + } +} diff --git a/libjava/javax/swing/plaf/basic/BasicDefaults.java b/libjava/javax/swing/plaf/basic/BasicDefaults.java deleted file mode 100644 index 6b06187b451..00000000000 --- a/libjava/javax/swing/plaf/basic/BasicDefaults.java +++ /dev/null @@ -1,126 +0,0 @@ -/* BasicDefaults.java - Copyright (C) 2002 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 javax.swing.plaf.basic; - -import java.awt.Color; -import java.awt.Component; -import java.awt.Graphics; -import java.awt.Insets; -import javax.swing.UIDefaults; -import javax.swing.border.MatteBorder; - -class BasicBorder extends MatteBorder -{ - static Color BtnPointClr = new Color( 180, 180, 180); - - BasicBorder() - { - super(5,5,5,5, Color.black); - } - - public void paintBorder(Component c, - Graphics g, - int x, - int y, - int width, - int height) - { - // System.out.println("PAINT-------------------------------------------BORDER"); - - if (g != null) - { - g.setColor( BtnPointClr); - g.draw3DRect( 0, 0, width-1, height-1, true); - } - } - } - -class PanelBorder extends MatteBorder -{ - PanelBorder() - { - super(5,5,5,5, Color.black); - } - - public void paintBorder(Component c, - Graphics g, - int x, - int y, - int width, - int height) - { - // System.out.println("PAINT-------------------------------------------BORDER"); - super.paintBorder(c, g, x, y, width, height); - } - } - -public class BasicDefaults extends UIDefaults -{ - public BasicDefaults() - { - // System.out.println("BasicDefaults !!!!!!!!!!!!!!!!!!!!!!!!!"); - put("JButton", "javax.swing.plaf.basic.BasicButtonUI"); - put("JLabel", "javax.swing.plaf.basic.BasicLabelUI"); - - put("JPanel", "javax.swing.plaf.basic.BasicPanelUI"); - put("JCheckBox", "javax.swing.plaf.basic.BasicCheckBoxUI"); - put("JRadioButton", "javax.swing.plaf.basic.BasicRadioButtonUI"); - put("JToggleButton", "javax.swing.plaf.basic.BasicToggleButtonUI"); - put("JOptionPane", "javax.swing.plaf.basic.BasicOptionPaneUI"); - put("JList", "javax.swing.plaf.basic.BasicListUI"); - put("JTree", "javax.swing.plaf.basic.BasicTreeUI"); - put("JTextComponent", "javax.swing.plaf.basic.BasicTextUI"); - put("JTabbedPane", "javax.swing.plaf.basic.BasicTabbedPaneUI"); - put("JScrollPane", "javax.swing.plaf.basic.BasicScrollPaneUI"); - put("JViewport", "javax.swing.plaf.basic.BasicViewportUI"); - - put("JButton.border", "javax.swing.plaf.basic.BasicBorder"); - put("JPanel.border", "javax.swing.plaf.basic.PanelBorder"); - - put("JToggleButton.border", "javax.swing.plaf.basic.PanelBorder"); - put("JCheckBox.border", "javax.swing.plaf.basic.PanelBorder"); - put("JRadioButton.border", "javax.swing.plaf.basic.PanelBorder"); - - put("AbstractUndoableEdit.undoText", "Undo"); - put("AbstractUndoableEdit.redoText", "Redo"); - } - -} - - diff --git a/libjava/javax/swing/ToggleButtonModel.java b/libjava/javax/swing/plaf/basic/BasicRootPaneUI.java similarity index 83% rename from libjava/javax/swing/ToggleButtonModel.java rename to libjava/javax/swing/plaf/basic/BasicRootPaneUI.java index 4954604f83f..70829d10f89 100644 --- a/libjava/javax/swing/ToggleButtonModel.java +++ b/libjava/javax/swing/plaf/basic/BasicRootPaneUI.java @@ -1,4 +1,4 @@ -/* ToggleButtonModel.java -- +/* BasicPanelUI.java Copyright (C) 2002 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -36,20 +36,22 @@ obligated to do so. If you do not wish to do so, delete this exception statement from your version. */ -package javax.swing; +package javax.swing.plaf.basic; -public class ToggleButtonModel extends DefaultButtonModel +import javax.swing.*; +import javax.swing.plaf.*; +import java.awt.*; + + +public class BasicRootPaneUI extends RootPaneUI { - public void setPressed(boolean b) + public static ComponentUI createUI(JComponent x) + { + return new BasicRootPaneUI(); + } + + public void installUI(JComponent c) { - if (! isEnabled()) - return; - - if (! b) - { - return; - } - - setSelected(b); + super.installUI(c); } } -- 2.30.2