OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libjava/] [classpath/] [java/] [awt/] [event/] [WindowEvent.java] - Blame information for rev 771

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 771 jeremybenn
/* WindowEvent.java -- window change event
2
   Copyright (C) 1999, 2002, 2005  Free Software Foundation, Inc.
3
 
4
This file is part of GNU Classpath.
5
 
6
GNU Classpath is free software; you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation; either version 2, or (at your option)
9
any later version.
10
 
11
GNU Classpath is distributed in the hope that it will be useful, but
12
WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14
General Public License for more details.
15
 
16
You should have received a copy of the GNU General Public License
17
along with GNU Classpath; see the file COPYING.  If not, write to the
18
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19
02110-1301 USA.
20
 
21
Linking this library statically or dynamically with other modules is
22
making a combined work based on this library.  Thus, the terms and
23
conditions of the GNU General Public License cover the whole
24
combination.
25
 
26
As a special exception, the copyright holders of this library give you
27
permission to link this library with independent modules to produce an
28
executable, regardless of the license terms of these independent
29
modules, and to copy and distribute the resulting executable under
30
terms of your choice, provided that you also meet, for each linked
31
independent module, the terms and conditions of the license of that
32
module.  An independent module is a module which is not derived from
33
or based on this library.  If you modify this library, you may extend
34
this exception to your version of the library, but you are not
35
obligated to do so.  If you do not wish to do so, delete this
36
exception statement from your version. */
37
 
38
 
39
package java.awt.event;
40
 
41
import gnu.java.lang.CPStringBuilder;
42
 
43
import java.awt.Frame;
44
import java.awt.Window;
45
 
46
/**
47
 * This event is generated when there is a change in a window. This includes
48
 * creation, closing, iconification, activation, and focus changes. There
49
 * are three listeners, for three types of events: WindowListeners deal with
50
 * the lifecycle of a window, WindowStateListeners deal with window state
51
 * like maximization, and WindowFocusListeners deal with focus switching to
52
 * or from a window.
53
 *
54
 * @author Aaron M. Renn (arenn@urbanophile.com)
55
 * @see WindowAdapter
56
 * @see WindowListener
57
 * @see WindowFocusListener
58
 * @see WindowStateListener
59
 * @since 1.1
60
 * @status updated to 1.4
61
 */
62
public class WindowEvent extends ComponentEvent
63
{
64
  /**
65
   * Compatible with JDK 1.1+.
66
   */
67
  private static final long serialVersionUID = -1567959133147912127L;
68
 
69
  /** This is the first id in the range of event ids used by this class. */
70
  public static final int WINDOW_FIRST = 200;
71
 
72
  /** This is the id for a window that is opened. */
73
  public static final int WINDOW_OPENED = 200;
74
 
75
  /** This is the id for a window that is about to close. */
76
  public static final int WINDOW_CLOSING = 201;
77
 
78
  /** This is the id for a window that finished closing. */
79
  public static final int WINDOW_CLOSED = 202;
80
 
81
  /** This is the id for a window that is iconified. */
82
  public static final int WINDOW_ICONIFIED = 203;
83
 
84
  /** This is the id for a window that is de-iconified. */
85
  public static final int WINDOW_DEICONIFIED = 204;
86
 
87
  /** This is the id for a window that is activated. */
88
  public static final int WINDOW_ACTIVATED = 205;
89
 
90
  /** This is the id for a window that is de-activated. */
91
  public static final int WINDOW_DEACTIVATED = 206;
92
 
93
  /**
94
   * This is the id for a window becoming the focused window.
95
   *
96
   * @since 1.4
97
   */
98
  public static final int WINDOW_GAINED_FOCUS = 207;
99
 
100
  /**
101
   * This is the id for a window losing all focus.
102
   *
103
   * @since 1.4
104
   */
105
  public static final int WINDOW_LOST_FOCUS = 208;
106
 
107
  /**
108
   * This is the id for a window state change, such as maximization.
109
   *
110
   * @since 1.4
111
   */
112
  public static final int WINDOW_STATE_CHANGED = 209;
113
 
114
  /** This is the last id in the range of event ids used by this class. */
115
  public static final int WINDOW_LAST = 209;
116
 
117
  /**
118
   * The other Window involved in a focus or activation change. For
119
   * WINDOW_ACTIVATED and WINDOW_GAINED_FOCUS events, this is the window that
120
   * lost focus; for WINDOW_DEACTIVATED and WINDOW_LOST_FOCUS, this is the
121
   * window that stole focus; and for other events (or when native
122
   * implementation does not have the data available), this is null.
123
   *
124
   * @see #getOppositeWindow()
125
   * @serial the opposite window, or null
126
   * @since 1.4
127
   */
128
  private final Window opposite;
129
 
130
  /**
131
   * The former state of the window.
132
   *
133
   * @serial bitmask of the old window state
134
   * @since 1.4
135
   */
136
  private final int oldState;
137
 
138
  /**
139
   * The present state of the window.
140
   *
141
   * @serial bitmask of the new window state
142
   * @since 1.4
143
   */
144
  private final int newState;
145
 
146
  /**
147
   * Initializes a new instance of <code>WindowEvent</code> with the specified
148
   * parameters. Note that an invalid id leads to unspecified results.
149
   *
150
   * @param source the window that generated this event
151
   * @param id the event id
152
   * @param opposite the window that received the opposite event, or null
153
   * @param oldState the previous state of this window
154
   * @param newState the new state of this window
155
   * @throws IllegalArgumentException if source is null
156
   * @since 1.4
157
   */
158
  public WindowEvent(Window source, int id, Window opposite,
159
                     int oldState, int newState)
160
  {
161
    super(source, id);
162
    this.opposite = opposite;
163
    this.oldState = oldState;
164
    this.newState = newState;
165
  }
166
 
167
  /**
168
   * Initializes a new instance of <code>WindowEvent</code> with the specified
169
   * parameters. Note that an invalid id leads to unspecified results.
170
   *
171
   * @param source the window that generated this event
172
   * @param id the event id
173
   * @param opposite the window that received the opposite event, or null
174
   * @throws IllegalArgumentException if source is null
175
   * @since 1.4
176
   */
177
  public WindowEvent(Window source, int id, Window opposite)
178
  {
179
    this(source, id, opposite, 0, 0);
180
  }
181
 
182
  /**
183
   * Initializes a new instance of <code>WindowEvent</code> with the specified
184
   * parameters. Note that an invalid id leads to unspecified results.
185
   *
186
   * @param source the window that generated this event
187
   * @param id the event id
188
   * @param oldState the previous state of this window
189
   * @param newState the new state of this window
190
   * @throws IllegalArgumentException if source is null
191
   * @since 1.4
192
   */
193
  public WindowEvent(Window source, int id, int oldState, int newState)
194
  {
195
    this(source, id, null, oldState, newState);
196
  }
197
 
198
  /**
199
   * Initializes a new instance of <code>WindowEvent</code> with the specified
200
   * parameters. Note that an invalid id leads to unspecified results.
201
   *
202
   * @param source the window that generated this event
203
   * @param id the event id
204
   * @throws IllegalArgumentException if source is null
205
   */
206
  public WindowEvent(Window source, int id)
207
  {
208
    this(source, id, null, 0, 0);
209
  }
210
 
211
  /**
212
   * Returns the event source as a <code>Window</code>. If the source has
213
   * subsequently been modified to a non-Window, this returns null.
214
  *
215
  * @return the event source as a <code>Window</code>
216
  */
217
  public Window getWindow()
218
  {
219
    return source instanceof Window ? (Window) source : null;
220
  }
221
 
222
  /**
223
   * Returns the opposite window if this window was involved in an activation
224
   * or focus change. For WINDOW_ACTIVATED and WINDOW_GAINED_FOCUS events,
225
   * this is the window that lost focus; for WINDOW_DEACTIVATED and
226
   * WINDOW_LOST_FOCUS, this is the window that stole focus; and for other
227
   * events (or when native implementation does not have the data available),
228
   * this is null.
229
   *
230
   * @return the opposite window, or null
231
   * @since 1.4
232
   */
233
  public Window getOppositeWindow()
234
  {
235
    return opposite;
236
  }
237
 
238
  /**
239
   * Returns the state of this window before the event. This is the bitwise
240
   * or of fields in Frame: NORMAL, ICONIFIED, MAXIMIZED_HORIZ, MAXIMIZED_VERT,
241
   * and MAXIMIZED_BOTH.
242
   *
243
   * @return the former state
244
   * @see Frame#getExtendedState()
245
   * @since 1.4
246
   */
247
  public int getOldState()
248
  {
249
    return oldState;
250
  }
251
 
252
  /**
253
   * Returns the state of this window after the event. This is the bitwise
254
   * or of fields in Frame: NORMAL, ICONIFIED, MAXIMIZED_HORIZ, MAXIMIZED_VERT,
255
   * and MAXIMIZED_BOTH.
256
   *
257
   * @return the updated state
258
   * @see Frame#getExtendedState()
259
   * @since 1.4
260
   */
261
  public int getNewState()
262
  {
263
    return newState;
264
  }
265
 
266
  /**
267
   * Returns a string that identifies this event. This is formatted as the
268
   * field name of the id, followed by the opposite window, old state, and
269
   * new state.
270
   *
271
   * @return a string that identifies this event
272
   */
273
  public String paramString()
274
  {
275
    CPStringBuilder s = new CPStringBuilder();
276
    switch (id)
277
      {
278
      case WINDOW_OPENED:
279
        s.append("WINDOW_OPENED,opposite=");
280
        break;
281
      case WINDOW_CLOSING:
282
        s.append("WINDOW_CLOSING,opposite=");
283
        break;
284
      case WINDOW_CLOSED:
285
        s.append("WINDOW_CLOSED,opposite=");
286
        break;
287
      case WINDOW_ICONIFIED:
288
        s.append("WINDOW_ICONIFIED,opposite=");
289
        break;
290
      case WINDOW_DEICONIFIED:
291
        s.append("WINDOW_DEICONIFIED,opposite=");
292
        break;
293
      case WINDOW_ACTIVATED:
294
        s.append("WINDOW_ACTIVATED,opposite=");
295
        break;
296
      case WINDOW_DEACTIVATED:
297
        s.append("WINDOW_DEACTIVATED,opposite=");
298
        break;
299
      case WINDOW_GAINED_FOCUS:
300
        s.append("WINDOW_GAINED_FOCUS,opposite=");
301
        break;
302
      case WINDOW_LOST_FOCUS:
303
        s.append("WINDOW_LOST_FOCUS,opposite=");
304
        break;
305
      case WINDOW_STATE_CHANGED:
306
        s.append("WINDOW_STATE_CHANGED,opposite=");
307
        break;
308
      default:
309
        s.append("unknown type,opposite=");
310
      }
311
    return s.append(opposite).append(",oldState=").append(oldState)
312
      .append(",newState=").append(newState).toString();
313
  }
314
} // class WindowEvent

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.