Mercurial > sdl-ios-xcode
view src/video/Xext/extensions/xme.h @ 1258:b2283b0ded26
Date: Thu, 19 Jan 2006 20:02:29 +0200
From: Vassilis Virvilis <vasvir@iit.demokritos.gr>
Subject: [SDL] Request: Please reconsider adding tag in SDL_Event
Hi,
Patch in question:
--- include/SDL_events.h 20 Aug 2004 18:57:01 -0000 1.11
+++ include/SDL_events.h 19 Jan 2006 17:35:09 -0000
@@ -214,7 +214,7 @@
} SDL_SysWMEvent;
/* General event structure */
-typedef union {
+typedef union SDL_Event {
Uint8 type;
SDL_ActiveEvent active;
SDL_KeyboardEvent key;
Reasoning:
----------
1) Allows forward declaration of the SDL_Event union in C++. Please
note that in plain C it is possible to forward declare it.
2) Forward declaration is good because it allows encapsulation. It hides
the specific implementation and does not necessarily exposes SDL staff
to my appication's namespace
3) It can't harm plain C because tags are living in a different namespace
than typenames
4) It is already done like this in other places in SDL. Check for example
SDL_KeySym, and SDL_.*Event structures.
5) Right now I have to include SDL/event.h from a C++ header file. See 2)
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Fri, 20 Jan 2006 13:07:25 +0000 |
parents | caf0328c8058 |
children | 782fd950bd46 c121d94672cb a10bddfdc40f |
line wrap: on
line source
/* * Copyright 1993-2001 by Xi Graphics, Inc. * All Rights Reserved. * * Please see the LICENSE file accompanying this distribution for licensing * information. * * Please send any bug fixes and modifications to src@xig.com. * * $XiGId: xme.h,v 1.1.1.1 2001/11/19 19:01:10 jon Exp $ * */ #ifndef _XME_H_INCLUDED #define _XME_H_INCLUDED typedef struct { short x; short y; unsigned short w; unsigned short h; } XiGMiscViewInfo; typedef struct { unsigned short width; unsigned short height; int refresh; } XiGMiscResolutionInfo; extern Bool XiGMiscQueryVersion(Display *dpy, int *major, int *minor); extern int XiGMiscQueryViews(Display *dpy, int screen, XiGMiscViewInfo **pviews); extern int XiGMiscQueryResolutions(Display *dpy, int screen, int view, int *pactive, XiGMiscResolutionInfo **presolutions); extern void XiGMiscChangeResolution(Display *dpy, int screen, int view, int width, int height, int refresh); #endif /* _XME_H_INCLUDED */