mirror of
https://github.com/autc04/Retro68.git
synced 2024-11-30 19:53:46 +00:00
104 lines
3.3 KiB
Java
104 lines
3.3 KiB
Java
|
/* Copyright (C) 2000 Free Software Foundation
|
||
|
|
||
|
This file is part of libgcj.
|
||
|
|
||
|
This software is copyrighted work licensed under the terms of the
|
||
|
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
|
||
|
details. */
|
||
|
|
||
|
package gnu.gcj.xlib;
|
||
|
|
||
|
import gnu.gcj.RawData;
|
||
|
|
||
|
/**
|
||
|
* Mutable event structure that can contain any data from any event
|
||
|
* type. Events can be constructed or loaded from the event queue.
|
||
|
*
|
||
|
* @author Rolf W. Rasmussen <rolfwr@ii.uib.no>
|
||
|
*/
|
||
|
public final class XAnyEvent
|
||
|
{
|
||
|
// Must match the definitions in X.h:
|
||
|
public static final int
|
||
|
TYPE_KEY_PRESS = 2,
|
||
|
TYPE_KEY_RELEASE = 3,
|
||
|
TYPE_BUTTON_PRESS = 4,
|
||
|
TYPE_BUTTON_RELEASE = 5,
|
||
|
TYPE_MOTION_NOTIFY = 6,
|
||
|
TYPE_ENTER_NOTIFY = 7,
|
||
|
TYPE_LEAVE_NOTIFY = 8,
|
||
|
TYPE_FOCUS_IN = 9,
|
||
|
TYPE_FOCUS_OUT = 10,
|
||
|
TYPE_KEYMAP_NOTIFY = 11,
|
||
|
TYPE_EXPOSE = 12,
|
||
|
TYPE_GRAPHICS_EXPOSE = 13,
|
||
|
TYPE_NO_EXPOSE = 14,
|
||
|
TYPE_VISIBILITY_NOTIFY = 15,
|
||
|
TYPE_CREATE_NOTIFY = 16,
|
||
|
TYPE_DESTROY_NOTIFY = 17,
|
||
|
TYPE_UNMAP_NOTIFY = 18,
|
||
|
TYPE_MAP_NOTIFY = 19,
|
||
|
TYPE_MAP_REQUEST = 20,
|
||
|
TYPE_REPARENT_NOTIFY = 21,
|
||
|
TYPE_CONFIGURE_NOTIFY = 22,
|
||
|
TYPE_CONFIGURE_REQUEST = 23,
|
||
|
TYPE_GRAVITY_NOTIFY = 24,
|
||
|
TYPE_RESIZE_REQUEST = 25,
|
||
|
TYPE_CIRCULATE_NOTIFY = 26,
|
||
|
TYPE_CIRCULATE_REQUEST = 27,
|
||
|
TYPE_PROPERTY_NOTIFY = 28,
|
||
|
TYPE_SELECTION_CLEAR = 29,
|
||
|
TYPE_SELECTION_REQUEST = 30,
|
||
|
TYPE_SELECTION_NOTIFY = 31,
|
||
|
TYPE_COLORMAP_NOTIFY = 32,
|
||
|
TYPE_CLIENT_MESSAGE = 33,
|
||
|
TYPE_MAPPING_NOTIFY = 34;
|
||
|
|
||
|
// Must match the definitions in X.h:
|
||
|
public final static long MASK_SUBSTRUCTURE_NOTIFY = 1L<<19,
|
||
|
MASK_SUBSTRUCTURE_REDIRECT = 1L<<20;
|
||
|
|
||
|
public XAnyEvent(Display display)
|
||
|
{
|
||
|
this.display = display;
|
||
|
init();
|
||
|
}
|
||
|
|
||
|
private native void init();
|
||
|
protected native void finalize();
|
||
|
|
||
|
/**
|
||
|
* Load next event into the event structure.
|
||
|
*/
|
||
|
public native boolean loadNext(boolean block);
|
||
|
public native void interrupt();
|
||
|
|
||
|
public native int getType();
|
||
|
public native void setType(int type);
|
||
|
|
||
|
public native Window getWindow();
|
||
|
public native void setWindow(Window window);
|
||
|
|
||
|
/**
|
||
|
* @returns the number of the last request processed by the server.
|
||
|
*/
|
||
|
public native long getSerial();
|
||
|
|
||
|
public native void send(Window destination, boolean propagate,
|
||
|
long mask);
|
||
|
|
||
|
RawData pipefds;
|
||
|
RawData structure;
|
||
|
Display display;
|
||
|
|
||
|
public String toString()
|
||
|
{
|
||
|
if (structure == null)
|
||
|
return getClass().getName() + "[no-structure]";
|
||
|
|
||
|
return getClass().getName() +
|
||
|
"[type=" + getType() +
|
||
|
",window=" + getWindow() + "]";
|
||
|
}
|
||
|
}
|