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();}
 
This object represents a window on the desktop, not necessarily a Panda window.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
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...
virtual size_t get_int_handle() const
Returns the OS-specific handle converted to an integer, if this is possible for the particular repres...
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.