diff options
author | Kenneth Russel <[email protected]> | 2006-05-28 21:33:14 +0000 |
---|---|---|
committer | Kenneth Russel <[email protected]> | 2006-05-28 21:33:14 +0000 |
commit | 66b19a72d52184ff4fa1951f7e5745ac9808275a (patch) | |
tree | f84d0a2b44dc280a3b978f31c4e06d0bfe5ca861 /src/native/jogl/Xinerama.h | |
parent | e1df17cd579e01e9350332cd63386384041ff7d3 (diff) |
Preliminary fix for
Issue 216: Cannot create GLCanvas on non-default GraphicsDevice
Made JOGL Xinerama-aware; now uses screen 0 rather than the screen
reported from the AWT GraphicsDevice when Xinerama is enabled. So far
only compiled and tested on non-Xinerama configuration on Linux; more
testing needed on Xinerama setups and on Solaris.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@782 232f8b59-042b-4e1e-8c03-345bb8c30851
Diffstat (limited to 'src/native/jogl/Xinerama.h')
-rw-r--r-- | src/native/jogl/Xinerama.h | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/src/native/jogl/Xinerama.h b/src/native/jogl/Xinerama.h new file mode 100644 index 000000000..7177f5131 --- /dev/null +++ b/src/native/jogl/Xinerama.h @@ -0,0 +1,76 @@ +/* +Copyright (C) 1994-2001 The XFree86 Project, Inc. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Soft- +ware"), to deal in the Software without restriction, including without +limitation the rights to use, copy, modify, merge, publish, distribute, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, provided that the above copyright +notice(s) and this permission notice appear in all copies of the Soft- +ware and that both the above copyright notice(s) and this permission +notice appear in supporting documentation. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- +ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY +RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN +THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSE- +QUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFOR- +MANCE OF THIS SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to promote the sale, use or +other dealings in this Software without prior written authorization of +the copyright holder. +*/ + +/* $XFree86: xc/include/extensions/Xinerama.h,v 3.2 2000/03/01 01:04:20 dawes Exp $ */ + +#ifdef __linux__ + +#ifndef _Xinerama_h +#define _Xinerama_h + +typedef struct { + int screen_number; + short x_org; + short y_org; + short width; + short height; +} XineramaScreenInfo; + +Bool XineramaQueryExtension ( + Display *dpy, + int *event_base, + int *error_base +); + +Status XineramaQueryVersion( + Display *dpy, + int *major, + int *minor +); + +Bool XineramaIsActive(Display *dpy); + + +/* + Returns the number of heads and a pointer to an array of + structures describing the position and size of the individual + heads. Returns NULL and number = 0 if Xinerama is not active. + + Returned array should be freed with XFree(). +*/ + +XineramaScreenInfo * +XineramaQueryScreens( + Display *dpy, + int *number +); + +#endif /* _Xinerama_h */ + +#endif /* __linux__ */ |