15 #ifndef WINDOWHANDLE_H
16 #define WINDOWHANDLE_H
18 #include "pandabase.h"
20 #include "typedReferenceCount.h"
21 #include "pointerTo.h"
45 INLINE WindowHandle(
const WindowHandle ©);
46 virtual ~WindowHandle();
48 INLINE
OSHandle *get_os_handle()
const;
49 INLINE
void set_os_handle(
OSHandle *os_handle);
51 void send_windows_message(
unsigned int msg,
int wparam,
int lparam);
53 size_t get_int_handle()
const;
55 void output(ostream &out)
const;
59 virtual void attach_child(WindowHandle *child);
60 virtual void detach_child(WindowHandle *child);
62 virtual void request_keyboard_focus(WindowHandle *child);
63 virtual void receive_windows_message(
unsigned int msg,
int wparam,
int lparam);
75 virtual size_t get_int_handle()
const;
76 virtual void output(ostream &out)
const;
82 static void init_type() {
83 TypedReferenceCount::init_type();
84 register_type(_type_handle,
"WindowHandle::OSHandle",
85 TypedReferenceCount::get_class_type());
88 return get_class_type();
90 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
99 PT(WindowHandle) _keyboard_window;
105 static void init_type() {
106 TypedReferenceCount::init_type();
107 register_type(_type_handle,
"WindowHandle",
108 TypedReferenceCount::get_class_type());
111 return get_class_type();
113 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
119 #include "windowHandle.I"
121 INLINE ostream &operator << (ostream &out,
const WindowHandle &handle) {
This object represents a window on the desktop, not necessarily a Panda window.
A base class for things which need to inherit from both TypedObject and from ReferenceCount.
TypeHandle is the identifier used to differentiate C++ class types.