hwnd/
_lib.rs

1#![doc = include_str!("../Readme.md")]
2#![deny(unsafe_op_in_unsafe_fn)]
3#![deny(unreachable_patterns)] // probably improperly `match { ... }`ed constants
4#![debugger_visualizer(natvis_file = "../hwnd.natvis")]
5
6use winresult::ERROR;
7#[doc(hidden)] pub use WM::WM32;
8use WS::WindowStyle;
9use WS_EX::WindowStyleExtended;
10
11#[macro_use] mod _macros;
12
13pub use winapi::shared::minwindef::LPARAM;          // OK?
14pub use winapi::shared::minwindef::LRESULT;         // OK?
15pub use winapi::shared::minwindef::WPARAM;          // OK?
16
17pub use winapi::shared::windef::HWND;               // TODO: wrap / typeify
18pub use winapi::shared::windef::HCURSOR;            // TODO: wrap / typeify
19pub use winapi::shared::windef::HMENU;              // TODO: wrap / typeify
20pub use winapi::shared::windef::HICON;              // TODO: wrap / typeify
21pub use winapi::shared::windef::HBRUSH;             // TODO: wrap / typeify
22
23#[cfg(doc)] pub mod doc {
24    //! `doc/*.md` markdown documentation
25    #[doc = include_str!("../doc/alternatives.md"               )] pub const Alternatives : () = ();
26    #[doc = include_str!("../doc/errors.md"                     )] pub const Errors : () = ();
27    #[doc = include_str!("../doc/features.md"                   )] pub const Features : () = ();
28    #[doc = include_str!("../doc/unsound-assumptions.md"        )] pub const Unsound_Assumptions : () = ();
29    #[doc = include_str!("../doc/window-lifecycle-events.md"    )] pub const Window_Lifecycle_Events : () = ();
30}
31
32#[path = "assoc/_assoc.rs"] pub mod assoc;
33
34mods! {
35    inl mod structures {
36        inl mod error;
37    }
38
39    inl mod utils {
40        inl mod _32;
41        inl mod gle;
42    }
43
44    /// shared/*.h
45    pub mod shared {
46        /// shared/minwindef.h
47        pub mod minwindef {
48            inl mod extras {
49                inl mod name_or_atom;
50            }
51
52            inl mod handles {
53                inl mod hmodule;
54            }
55
56            inl mod values {
57                inl mod atom;
58            }
59        }
60
61        /// shared/windef.h
62        pub mod windef {
63            inl mod handles {
64                inl mod hcursor;
65                inl mod hicon;
66                inl mod hwnd_;
67            }
68
69            inl mod structures {
70                inl mod point;
71                inl mod rect;
72            }
73        }
74    }
75
76    /// um/*.h
77    pub mod um {
78        /// um/libloaderapi.h
79        pub mod libloaderapi {
80            inl mod functions {
81                inl mod get_module_handle_;
82            }
83        }
84
85        /// um/processthreadsapi.h
86        pub mod processthreadsapi {
87            inl mod functions {
88                inl mod get_current_x_id;
89            }
90        }
91
92        /// um/winuser.h
93        pub mod winuser {
94            inl mod enums {
95                pub mod GWL;
96                pub mod GWLP;
97                pub mod IDC;
98                pub mod IDI;
99                pub mod SW;
100                pub mod WM;
101            }
102
103            inl mod flags {
104                pub mod ISMEX;
105                pub mod PM;
106                pub mod SMTO;
107                pub mod SWP;
108                pub mod WPF;
109                pub mod WS;
110                pub mod WS_EX;
111            }
112
113            inl mod functions {
114                inl mod adjust_window_rect_;
115                inl mod close_window_;
116                inl mod create_window_;
117                inl mod def_window_proc;
118                inl mod destroy_window_;
119                inl mod dispatch_message;
120                inl mod get_client_rect_;
121                inl mod get_message;
122                inl mod get_window_long_ptr;
123                inl mod get_window_long;
124                inl mod get_window_placement_;
125                inl mod get_window_rect_;
126                inl mod get_window_text;
127                inl mod get_window_thread_process_id_;
128                inl mod get_x_window;
129                inl mod in_send_message_;
130                inl mod is;
131                inl mod load_cursor;
132                inl mod load_icon;
133                inl mod peek_message;
134                inl mod post_message;
135                inl mod register_class_;
136                inl mod register_window_message;
137                inl mod reply_message_;
138                inl mod send_message;
139                inl mod set_foreground_window_;
140                inl mod set_window_placement_;
141                inl mod set_window_pos_;
142                inl mod set_window_text;
143                inl mod show_window_;
144                inl mod timer;
145                inl mod translate_message_;
146            }
147
148            inl mod structures {
149                inl mod msg;
150                inl mod window_placement;
151                inl mod wndclass;
152            }
153
154            inl mod values {
155                pub mod TIMERV;
156                pub mod USER_TIMER;
157            }
158        }
159    }
160}
161
162#[doc(no_inline)] pub use shared::minwindef::*;
163#[doc(no_inline)] pub use shared::windef::*;
164#[doc(no_inline)] pub use um::libloaderapi::*;
165#[doc(no_inline)] pub use um::processthreadsapi::*;
166#[doc(no_inline)] pub use um::winuser::*;