14 #ifndef NATIVEWINDOWHANDLE_H
15 #define NATIVEWINDOWHANDLE_H
23 #ifndef WIN32_LEAN_AND_MEAN
24 #define WIN32_LEAN_AND_MEAN 1
46 #if defined(HAVE_X11) && !defined(CPPPARSER)
50 #if defined(WIN32) && !defined(CPPPARSER)
55 class EXPCL_PANDA_DISPLAY
IntHandle :
public OSHandle {
58 virtual size_t get_int_handle()
const;
59 virtual void output(std::ostream &out)
const;
61 INLINE
size_t get_handle()
const;
70 static void init_type() {
71 OSHandle::init_type();
73 OSHandle::get_class_type());
76 return get_class_type();
78 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
87 virtual void output(std::ostream &out)
const;
89 INLINE
const Filename &get_filename()
const;
98 static void init_type() {
99 OSHandle::init_type();
100 register_type(_type_handle,
"NativeWindowHandle::SubprocessHandle",
101 OSHandle::get_class_type());
104 return get_class_type();
106 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
112 #if defined(HAVE_X11) && !defined(CPPPARSER)
113 class EXPCL_PANDA_DISPLAY X11Handle :
public OSHandle {
115 INLINE X11Handle(X11_Window handle);
117 virtual void output(std::ostream &out)
const;
119 INLINE X11_Window get_handle()
const;
128 static void init_type() {
129 OSHandle::init_type();
131 OSHandle::get_class_type());
134 return get_class_type();
136 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
144 #if defined(WIN32) && !defined(CPPPARSER)
145 class EXPCL_PANDA_DISPLAY WinHandle :
public OSHandle {
147 INLINE WinHandle(HWND handle);
148 virtual size_t get_int_handle()
const;
149 virtual void output(std::ostream &out)
const;
151 INLINE HWND get_handle()
const;
160 static void init_type() {
161 OSHandle::init_type();
163 OSHandle::get_class_type());
166 return get_class_type();
168 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
179 static void init_type() {
180 WindowHandle::init_type();
182 WindowHandle::get_class_type());
184 IntHandle::init_type();
185 SubprocessHandle::init_type();
186 #if defined(HAVE_X11) && !defined(CPPPARSER)
187 X11Handle::init_type();
189 #if defined(WIN32) && !defined(CPPPARSER)
190 WinHandle::init_type();
194 return get_class_type();
196 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}