diff options
author | Peter Hutterer <peter.hutterer@redhat.com> | 2008-12-01 21:14:01 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2009-01-15 16:11:02 +1000 |
commit | e30032d0bbbf0bf71e1b53a4ac388f3bd6f68e53 (patch) | |
tree | bb0c42f4ddced3f4ad799d71acd803005543d952 /Xext | |
parent | 1ae529bef50a8ccc4a8a264ed120aeae544b21e7 (diff) |
Xext: clean up XGE macros.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Diffstat (limited to 'Xext')
-rw-r--r-- | Xext/geext.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/Xext/geext.h b/Xext/geext.h index 3074431aa..65ce1a7a7 100644 --- a/Xext/geext.h +++ b/Xext/geext.h @@ -68,12 +68,13 @@ typedef struct _GEExtension { /* All registered extensions and their handling functions. */ extern _X_EXPORT GEExtension GEExtensions[MAXEXTENSIONS]; +/* Typecast to generic event */ +#define GEV(ev) ((xGenericEvent*)(ev)) /* Returns the extension offset from the event */ -#define GEEXT(ev) (((xGenericEvent*)(ev))->extension) +#define GEEXT(ev) (GEV(ev)->extension) +/* Return zero-based extension offset (offset - 128). Only for use in arrays */ #define GEEXTIDX(ev) (GEEXT(ev) & 0x7F) -/* Typecast to generic event */ -#define GEV(ev) ((xGenericEvent*)(ev)) /* True if mask is set for extension on window */ #define GEMaskIsSet(pWin, extension, mask) \ ((pWin)->optional && \ @@ -89,9 +90,9 @@ extern _X_EXPORT GEExtension GEExtensions[MAXEXTENSIONS]; GEExtensions[GEEXTIDX(xE)].evfill #define GEIsType(ev, ext, ev_type) \ - ((ev->u.u.type == GenericEvent) && \ - ((xGenericEvent*)(ev))->extension == ext && \ - ((xGenericEvent*)(ev))->evtype == ev_type) + ((GEV(ev)->type == GenericEvent) && \ + GEEXT(ev) == (ext) && \ + GEV(ev)->evtype == (ev_type)) /* Interface for other extensions */ |