Panda3D
Loading...
Searching...
No Matches
get_x11.h
Go to the documentation of this file.
1/**
2 * PANDA 3D SOFTWARE
3 * Copyright (c) Carnegie Mellon University. All rights reserved.
4 *
5 * All use of this software is subject to the terms of the revised BSD
6 * license. You should have received a copy of this license along
7 * with this source code in a file named "LICENSE."
8 *
9 * @file get_x11.h
10 * @author drose
11 * @date 2011-08-28
12 */
13
14#ifndef GET_X11_H
15#define GET_X11_H
16
17#include "pandabase.h"
18
19#ifdef HAVE_X11
20// This header file is designed to help work around some of the namespace
21// spamming that X11 causes, by renaming the symbols that X11 declares that
22// are known to conflict with other library names (like Apple's Core Graphics,
23// for instance).
24
25// In order for this to work, everyone who uses X11 within Panda should
26// include this file instead of including the X11 headers directly.
27
28#ifdef CPPPARSER
29// A simple hack so interrogate can get all of the necessary typenames.
30typedef struct _XDisplay X11_Display;
31typedef unsigned int XID;
32typedef unsigned int Atom;
33typedef unsigned int Cardinal;
34typedef XID Colormap;
35typedef XID X11_Window;
36typedef XID X11_Cursor;
37typedef struct _XIM *XIM;
38typedef struct _XIC *XIC;
39struct XErrorEvent;
40struct XVisualInfo;
41#define Bool int
42#define Status int
43#define True 1
44#define False 0
45#else
46
47#include "pre_x11_include.h"
48#include <X11/XKBlib.h>
49#include <X11/Xlib.h>
50#include <X11/Xutil.h>
51#include <X11/keysym.h>
52#include <X11/Xatom.h>
53#include "post_x11_include.h"
54
55#endif // CPPPARSER
56#endif // HAVE_X11
57
58#endif
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.