15 #ifndef NATIVEWINDOWHANDLE_H
16 #define NATIVEWINDOWHANDLE_H
18 #include "pandabase.h"
20 #include "windowHandle.h"
24 #ifndef WIN32_LEAN_AND_MEAN
25 #define WIN32_LEAN_AND_MEAN 1
43 INLINE NativeWindowHandle(
const NativeWindowHandle ©);
50 #if defined(HAVE_X11) && !defined(CPPPARSER)
54 #if defined(WIN32) && !defined(CPPPARSER)
59 class EXPCL_PANDA_DISPLAY
IntHandle :
public OSHandle {
62 virtual size_t get_int_handle()
const;
63 virtual void output(ostream &out)
const;
65 INLINE
size_t get_handle()
const;
74 static void init_type() {
75 OSHandle::init_type();
76 register_type(_type_handle,
"NativeWindowHandle::IntHandle",
77 OSHandle::get_class_type());
80 return get_class_type();
82 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
91 virtual void output(ostream &out)
const;
93 INLINE
const Filename &get_filename()
const;
102 static void init_type() {
103 OSHandle::init_type();
104 register_type(_type_handle,
"NativeWindowHandle::SubprocessHandle",
105 OSHandle::get_class_type());
108 return get_class_type();
110 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
116 #if defined(HAVE_X11) && !defined(CPPPARSER)
117 class EXPCL_PANDA_DISPLAY X11Handle :
public OSHandle {
119 INLINE X11Handle(X11_Window handle);
120 virtual size_t get_int_handle()
const;
121 virtual void output(ostream &out)
const;
123 INLINE X11_Window get_handle()
const;
132 static void init_type() {
133 OSHandle::init_type();
134 register_type(_type_handle,
"NativeWindowHandle::X11Handle",
135 OSHandle::get_class_type());
138 return get_class_type();
140 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
148 #if defined(WIN32) && !defined(CPPPARSER)
149 class EXPCL_PANDA_DISPLAY WinHandle :
public OSHandle {
151 INLINE WinHandle(HWND handle);
152 virtual size_t get_int_handle()
const;
153 virtual void output(ostream &out)
const;
155 INLINE HWND get_handle()
const;
164 static void init_type() {
165 OSHandle::init_type();
166 register_type(_type_handle,
"NativeWindowHandle::WinHandle",
167 OSHandle::get_class_type());
170 return get_class_type();
172 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
183 static void init_type() {
184 WindowHandle::init_type();
185 register_type(_type_handle,
"NativeWindowHandle",
186 WindowHandle::get_class_type());
188 IntHandle::init_type();
189 SubprocessHandle::init_type();
190 #if defined(HAVE_X11) && !defined(CPPPARSER)
191 X11Handle::init_type();
193 #if defined(WIN32) && !defined(CPPPARSER)
194 WinHandle::init_type();
198 return get_class_type();
200 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
206 #include "nativeWindowHandle.I"
This object represents a window on the desktop, not necessarily a Panda window.
The name of a file, such as a texture file or an Egg file.
This subclass of WindowHandle exists to allow simple creation of a WindowHandle of the appropriate ty...
TypeHandle is the identifier used to differentiate C++ class types.