Go to file
mitchmindtree 3ce7904e01 Wrap the temporarily stored user callback in a type to enforce
invariants

This also removes the need for "box"ing the callback in favour of
storing a raw `*mut` pointer. We can do this by ensuring that we never
store the pointer for longer than the lifetime of the user callback,
which is the duration of a call to `poll_events` or `run_forever`.

Also removes old commented out event code from the window module.
2017-02-05 12:51:09 +11:00
examples Fix unreachable patterns 2017-01-28 16:21:41 +01:00
src Wrap the temporarily stored user callback in a type to enforce 2017-02-05 12:51:09 +11:00
tests Wrap the temporarily stored user callback in a type to enforce 2017-02-05 12:51:09 +11:00
.gitattributes Initial commit 2014-07-27 11:41:26 +02:00
.gitignore win32: Bump user32-sys req for MapVirtualKeyA 2015-09-22 14:01:27 -04:00
.gitmodules Add basic support for Android 2014-09-11 18:28:07 +02:00
.travis.yml Fix Travis iOS build 2016-12-15 21:34:37 -06:00
appveyor.yml Fix the appveyor build 2015-09-24 08:37:52 +02:00
Cargo.toml Add categories 2017-01-31 10:01:36 +01:00
LICENSE Initial commit 2014-07-27 11:41:26 +02:00
README.md Forgot OpenGL 2016-10-31 17:33:36 +01:00

winit - Cross-platform window creation and management in Rust

Docs.rs

Build Status Build status

[dependencies]
winit = "0.5"

Documentation

Usage

Winit is a window creation and management library. It can create windows and lets you handle events (for example: the window being resized, a key being pressed, a mouse mouvement, etc.) produced by window.

Winit is designed to be a low-level brick in a hierarchy of libraries. Consequently, in order to show something on the window you need to use the platform-specific getters provided by winit, or another library.

extern crate winit;

fn main() {
    let window = winit::Window::new().unwrap();

    for event in window.wait_events() {
        match event {
            winit::Event::Closed => break,
            _ => ()
        }
    }
}