01 /*
02 * Copyright 1996-2006 Sun Microsystems, Inc. All Rights Reserved.
03 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
04 *
05 * This code is free software; you can redistribute it and/or modify it
06 * under the terms of the GNU General Public License version 2 only, as
07 * published by the Free Software Foundation. Sun designates this
08 * particular file as subject to the "Classpath" exception as provided
09 * by Sun in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
22 * CA 95054 USA or visit www.sun.com if you need additional information or
23 * have any questions.
24 */
25
26 package java.awt.event;
27
28 import java.util.EventListener;
29
30 /**
31 * The listener interface for receiving component events.
32 * The class that is interested in processing a component event
33 * either implements this interface (and all the methods it
34 * contains) or extends the abstract <code>ComponentAdapter</code> class
35 * (overriding only the methods of interest).
36 * The listener object created from that class is then registered with a
37 * component using the component's <code>addComponentListener</code>
38 * method. When the component's size, location, or visibility
39 * changes, the relevant method in the listener object is invoked,
40 * and the <code>ComponentEvent</code> is passed to it.
41 * <P>
42 * Component events are provided for notification purposes ONLY;
43 * The AWT will automatically handle component moves and resizes
44 * internally so that GUI layout works properly regardless of
45 * whether a program registers a <code>ComponentListener</code> or not.
46 *
47 * @see ComponentAdapter
48 * @see ComponentEvent
49 * @see <a href="http://java.sun.com/docs/books/tutorial/post1.0/ui/componentlistener.html">Tutorial: Writing a Component Listener</a>
50 *
51 * @author Carl Quinn
52 * @version 1.24 05/05/07
53 * @since 1.1
54 */
55 public interface ComponentListener extends EventListener {
56 /**
57 * Invoked when the component's size changes.
58 */
59 public void componentResized(ComponentEvent e);
60
61 /**
62 * Invoked when the component's position changes.
63 */
64 public void componentMoved(ComponentEvent e);
65
66 /**
67 * Invoked when the component has been made visible.
68 */
69 public void componentShown(ComponentEvent e);
70
71 /**
72 * Invoked when the component has been made invisible.
73 */
74 public void componentHidden(ComponentEvent e);
75 }
|