prototty_glutin

Crates.ioprototty_glutin
lib.rsprototty_glutin
version0.27.0
sourcesrc
created_at2018-01-07 21:44:42.058213
updated_at2019-03-30 10:03:09.080518
descriptionPrototty context for glutin windows.
homepagehttps://github.com/stevebob/prototty.git
repositoryhttps://github.com/stevebob/prototty.git
max_upload_size
id45880
size43,238
Stephen Sherratt (gridbugs)

documentation

https://docs.rs/prototty_glutin

README

prototty_glutin

Version Documentation

A prototty frontend for opengl which uses glutin for window creation and input. Provides a Context which can render a view to a window, and access inputs.

Example

Let's continue the title example started here:

extern crate prototty;
extern crate prototty_glutin;

// Assuming the title and its views were defined here
extern crate prototty_title;

use prototty::{Renderer, inputs};
use prototty_title::*;

fn main() {

    // Use a builder to configure how text should be rendered.
    // This assumes "Hack-Regular.ttf" is in your "src" directory.
    let mut context = prototty_glutin::ContextBuilder::new_with_font(
        include_bytes!("Hack-Regular.ttf"))
        .with_window_dimensions(320, 240)
        .with_font_scale(32.0, 32.0)
        .with_cell_dimensions(16, 32)
        .with_underline_position(28)
        .with_underline_width(2)
        .with_max_grid_size(30, 30)
        .build().unwrap();

    let title = Title {
        width: 20,
        text: "My Title".to_string(),
    };

    let mut running = true;
    while running {

        // render the title using the DemoTitleView
        context.render(&DemoTitleView, &title).unwrap();

        // exit after the window is closed
        context.poll_input(|input| {
            if input == inputs::ETX {
                running = false;
            }
        });
    }
}

Running this will produce the following output in a new window:

Example

Commit count: 1090

cargo fmt