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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25 package javax.swing.event;
26
27 import java.awt.AWTEvent;
28 import javax.swing.JInternalFrame;
29
30 /**
31 * An <code>AWTEvent</code> that adds support for
32 * <code>JInternalFrame</code> objects as the event source. This class has the
33 * same event types as <code>WindowEvent</code>,
34 * although different IDs are used.
35 * Help on handling internal frame events
36 * is in
37 * <a href="http://docs.oracle.com/javase/tutorial/uiswing/events/internalframelistener.html" target="_top">How to Write an Internal Frame Listener</a>,
38 * a section in <em>The Java Tutorial</em>.
39 * <p>
40 * <strong>Warning:</strong>
41 * Serialized objects of this class will not be compatible with
42 * future Swing releases. The current serialization support is
43 * appropriate for short term storage or RMI between applications running
44 * the same version of Swing. As of 1.4, support for long term storage
45 * of all JavaBeans™
46 * has been added to the <code>java.beans</code> package.
47 * Please see {@link java.beans.XMLEncoder}.
48 *
49 * @see java.awt.event.WindowEvent
50 * @see java.awt.event.WindowListener
51 * @see JInternalFrame
52 * @see InternalFrameListener
53 *
54 * @author Thomas Ball
55 */
56 @SuppressWarnings("serial") // Same-version serialization only
57 public class InternalFrameEvent extends AWTEvent {
58
59 /**
60 * The first number in the range of IDs used for internal frame events.
61 */
62 public static final int INTERNAL_FRAME_FIRST = 25549;
63
64 /**
65 * The last number in the range of IDs used for internal frame events.
66 */
67 public static final int INTERNAL_FRAME_LAST = 25555;
68
69 /**
70 * The "window opened" event. This event is delivered only
71 * the first time the internal frame is made visible.
72 *
73 * @see JInternalFrame#show
74 */
75 public static final int INTERNAL_FRAME_OPENED = INTERNAL_FRAME_FIRST;
76
77 /**
78 * The "window is closing" event. This event is delivered when
79 * the user attempts to close the internal frame, such as by
80 * clicking the internal frame's close button,
81 * or when a program attempts to close the internal frame
82 * by invoking the <code>setClosed</code> method.
83 *
84 * @see JInternalFrame#setDefaultCloseOperation
85 * @see JInternalFrame#doDefaultCloseAction
86 * @see JInternalFrame#setClosed
87 */
88 public static final int INTERNAL_FRAME_CLOSING = 1 + INTERNAL_FRAME_FIRST;
89
90 /**
91 * The "window closed" event. This event is delivered after
92 * the internal frame has been closed as the result of a call to
93 * the <code>setClosed</code> or
94 * <code>dispose</code> method.
95 *
96 * @see JInternalFrame#setClosed
97 * @see JInternalFrame#dispose
98 */
99 public static final int INTERNAL_FRAME_CLOSED = 2 + INTERNAL_FRAME_FIRST;
100
101 /**
102 * The "window iconified" event.
103 * This event indicates that the internal frame
104 * was shrunk down to a small icon.
105 *
106 * @see JInternalFrame#setIcon
107 */
108 public static final int INTERNAL_FRAME_ICONIFIED = 3 + INTERNAL_FRAME_FIRST;
109
110 /**
111 * The "window deiconified" event type. This event indicates that the
112 * internal frame has been restored to its normal size.
113 *
114 * @see JInternalFrame#setIcon
116 public static final int INTERNAL_FRAME_DEICONIFIED = 4 + INTERNAL_FRAME_FIRST;
117
118 /**
119 * The "window activated" event type. This event indicates that keystrokes
120 * and mouse clicks are directed towards this internal frame.
121 *
122 * @see JInternalFrame#show
123 * @see JInternalFrame#setSelected
124 */
125 public static final int INTERNAL_FRAME_ACTIVATED = 5 + INTERNAL_FRAME_FIRST;
126
127 /**
128 * The "window deactivated" event type. This event indicates that keystrokes
129 * and mouse clicks are no longer directed to the internal frame.
130 *
131 * @see JInternalFrame#setSelected
132 */
133 public static final int INTERNAL_FRAME_DEACTIVATED = 6 + INTERNAL_FRAME_FIRST;
134
135 /**
136 * Constructs an <code>InternalFrameEvent</code> object.
137 * @param source the <code>JInternalFrame</code> object that originated the event
138 * @param id an integer indicating the type of event
139 */
140 public InternalFrameEvent(JInternalFrame source, int id) {
141 super(source, id);
142 }
143
144 /**
145 * Returns a parameter string identifying this event.
146 * This method is useful for event logging and for debugging.
147 *
148 * @return a string identifying the event and its attributes
149 */
150 public String paramString() {
151 String typeStr;
152 switch(id) {
153 case INTERNAL_FRAME_OPENED:
154 typeStr = "INTERNAL_FRAME_OPENED";
155 break;
156 case INTERNAL_FRAME_CLOSING:
157 typeStr = "INTERNAL_FRAME_CLOSING";
164 break;
165 case INTERNAL_FRAME_DEICONIFIED:
166 typeStr = "INTERNAL_FRAME_DEICONIFIED";
167 break;
168 case INTERNAL_FRAME_ACTIVATED:
169 typeStr = "INTERNAL_FRAME_ACTIVATED";
170 break;
171 case INTERNAL_FRAME_DEACTIVATED:
172 typeStr = "INTERNAL_FRAME_DEACTIVATED";
173 break;
174 default:
175 typeStr = "unknown type";
176 }
177 return typeStr;
178 }
179
180
181 /**
182 * Returns the originator of the event.
183 *
184 * @return the <code>JInternalFrame</code> object that originated the event
185 * @since 1.3
186 */
187
188 public JInternalFrame getInternalFrame () {
189 return (source instanceof JInternalFrame)? (JInternalFrame)source : null;
190 }
191
192
193 }
|
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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25 package javax.swing.event;
26
27 import java.awt.AWTEvent;
28 import javax.swing.JInternalFrame;
29
30 /**
31 * An {@code AWTEvent} that adds support for
32 * {@code JInternalFrame} objects as the event source. This class has the
33 * same event types as {@code WindowEvent},
34 * although different IDs are used.
35 * Help on handling internal frame events
36 * is in
37 * <a href="http://docs.oracle.com/javase/tutorial/uiswing/events/internalframelistener.html" target="_top">How to Write an Internal Frame Listener</a>,
38 * a section in <em>The Java Tutorial</em>.
39 * <p>
40 * <strong>Warning:</strong>
41 * Serialized objects of this class will not be compatible with
42 * future Swing releases. The current serialization support is
43 * appropriate for short term storage or RMI between applications running
44 * the same version of Swing. As of 1.4, support for long term storage
45 * of all JavaBeans™
46 * has been added to the {@code java.beans} package.
47 * Please see {@link java.beans.XMLEncoder}.
48 *
49 * @see java.awt.event.WindowEvent
50 * @see java.awt.event.WindowListener
51 * @see JInternalFrame
52 * @see InternalFrameListener
53 *
54 * @author Thomas Ball
55 */
56 @SuppressWarnings("serial") // Same-version serialization only
57 public class InternalFrameEvent extends AWTEvent {
58
59 /**
60 * The first number in the range of IDs used for internal frame events.
61 */
62 public static final int INTERNAL_FRAME_FIRST = 25549;
63
64 /**
65 * The last number in the range of IDs used for internal frame events.
66 */
67 public static final int INTERNAL_FRAME_LAST = 25555;
68
69 /**
70 * The "window opened" event. This event is delivered only
71 * the first time the internal frame is made visible.
72 *
73 * @see JInternalFrame#show
74 */
75 public static final int INTERNAL_FRAME_OPENED = INTERNAL_FRAME_FIRST;
76
77 /**
78 * The "window is closing" event. This event is delivered when
79 * the user attempts to close the internal frame, such as by
80 * clicking the internal frame's close button,
81 * or when a program attempts to close the internal frame
82 * by invoking the {@code setClosed} method.
83 *
84 * @see JInternalFrame#setDefaultCloseOperation
85 * @see JInternalFrame#doDefaultCloseAction
86 * @see JInternalFrame#setClosed
87 */
88 public static final int INTERNAL_FRAME_CLOSING = 1 + INTERNAL_FRAME_FIRST;
89
90 /**
91 * The "window closed" event. This event is delivered after
92 * the internal frame has been closed as the result of a call to
93 * the {@code setClosed} or
94 * {@code dispose} method.
95 *
96 * @see JInternalFrame#setClosed
97 * @see JInternalFrame#dispose
98 */
99 public static final int INTERNAL_FRAME_CLOSED = 2 + INTERNAL_FRAME_FIRST;
100
101 /**
102 * The "window iconified" event.
103 * This event indicates that the internal frame
104 * was shrunk down to a small icon.
105 *
106 * @see JInternalFrame#setIcon
107 */
108 public static final int INTERNAL_FRAME_ICONIFIED = 3 + INTERNAL_FRAME_FIRST;
109
110 /**
111 * The "window deiconified" event type. This event indicates that the
112 * internal frame has been restored to its normal size.
113 *
114 * @see JInternalFrame#setIcon
116 public static final int INTERNAL_FRAME_DEICONIFIED = 4 + INTERNAL_FRAME_FIRST;
117
118 /**
119 * The "window activated" event type. This event indicates that keystrokes
120 * and mouse clicks are directed towards this internal frame.
121 *
122 * @see JInternalFrame#show
123 * @see JInternalFrame#setSelected
124 */
125 public static final int INTERNAL_FRAME_ACTIVATED = 5 + INTERNAL_FRAME_FIRST;
126
127 /**
128 * The "window deactivated" event type. This event indicates that keystrokes
129 * and mouse clicks are no longer directed to the internal frame.
130 *
131 * @see JInternalFrame#setSelected
132 */
133 public static final int INTERNAL_FRAME_DEACTIVATED = 6 + INTERNAL_FRAME_FIRST;
134
135 /**
136 * Constructs an {@code InternalFrameEvent} object.
137 * @param source the {@code JInternalFrame} object that originated the event
138 * @param id an integer indicating the type of event
139 */
140 public InternalFrameEvent(JInternalFrame source, int id) {
141 super(source, id);
142 }
143
144 /**
145 * Returns a parameter string identifying this event.
146 * This method is useful for event logging and for debugging.
147 *
148 * @return a string identifying the event and its attributes
149 */
150 public String paramString() {
151 String typeStr;
152 switch(id) {
153 case INTERNAL_FRAME_OPENED:
154 typeStr = "INTERNAL_FRAME_OPENED";
155 break;
156 case INTERNAL_FRAME_CLOSING:
157 typeStr = "INTERNAL_FRAME_CLOSING";
164 break;
165 case INTERNAL_FRAME_DEICONIFIED:
166 typeStr = "INTERNAL_FRAME_DEICONIFIED";
167 break;
168 case INTERNAL_FRAME_ACTIVATED:
169 typeStr = "INTERNAL_FRAME_ACTIVATED";
170 break;
171 case INTERNAL_FRAME_DEACTIVATED:
172 typeStr = "INTERNAL_FRAME_DEACTIVATED";
173 break;
174 default:
175 typeStr = "unknown type";
176 }
177 return typeStr;
178 }
179
180
181 /**
182 * Returns the originator of the event.
183 *
184 * @return the {@code JInternalFrame} object that originated the event
185 * @since 1.3
186 */
187
188 public JInternalFrame getInternalFrame () {
189 return (source instanceof JInternalFrame)? (JInternalFrame)source : null;
190 }
191
192
193 }
|