Crate wita[−][src]
Expand description
A window library in Rust for Windows.
wita
is a library that create a window and run an event loop.
It is only for Windows.
Example
struct Application; impl Application { fn new() -> Result<Self, wita::ApiError> { wita::WindowBuilder::new() .title("hello, world!") .build()?; Ok(Self) } } impl wita::EventHandler for Application { fn closed(&mut self, _: &wita::Window) { println!("closed"); } } fn main() { wita::run(wita::RunType::Wait, Application::new).unwrap(); }
Event handling
You must implement EventHandler
for the your defined object, and can handle events in the impl EventHandler
.
struct Foo {} impl Foo { fn new() -> Result<Self, wita::ApiError> { wita::WindowBuilder::new().build()?; Ok(Self {}) } } impl wita::EventHandler for Foo { // You define handlers. // For example, handle the event that closed the window. fn closed(&mut self, _: &wita::Window) { // write handling codes } }
Next, pass the your defined object to run
.
wita::run(wita::RunType::Wait, Foo::new).unwrap();
Drawing on the window
There are directly no any methods for drawing on a Window
in wita
.
However, a Window
provides the raw_handle
that return a pointer which is HWND
.
You can create a drawing context by using the raw_handle
such as DirectX, Vulkan, etc.
Modules
Structs
Represents an Win32 API error.
Represents the borderless window style.
The object to build a window into the parent window.
A virtual key and a scan code.
Logical coordinate.
Describes monitor info.
A mouse cursor position and pressed mouse buttons.
Physical coordinate.
A generic position
A keyboard scan code
Screen coordinate.
A generic size
Represents a window.
The object to build a window.
Represents a window style.
Enums
Describes a icon.
Describes the state of a keyboard key and a mouse button.
Describes mouse buttons.
Describes event loop types.
Describes keyboard key names.
Constants
The value is an unit in logical coordinates.
Traits
Trait that must implements for handling events.
A window style and the borderless window style.
Converts to a logical position.
Converts to a logical size.
Converts to a physical position.
Converts to a physical size.
Functions
Return monitors info.
Get current key states.
A screen position to a monitor.
Run the event loop.
Type Definitions
A position in logical coordinate.
A size in logical coordinate.
A position in physical coordinate.
A size in physical coordinate.
A position in screen coordinate.