checkbox/
checkbox.rs

1extern crate pushrod;
2extern crate sdl2;
3
4use pushrod::render::engine::Engine;
5use pushrod::render::{make_points, make_size};
6use pushrod::widgets::checkbox_widget::*;
7
8pub fn main() {
9    let sdl_context = sdl2::init().unwrap();
10    let video_subsystem = sdl_context.video().unwrap();
11    let window = video_subsystem
12        .window("pushrod-render image button demo", 400, 180)
13        .position_centered()
14        .opengl()
15        .build()
16        .unwrap();
17    let mut engine = Engine::new(400, 180, 60);
18    let widget1 = CheckboxWidget::new(
19        make_points(20, 20),
20        make_size(360, 30),
21        String::from(" Checkbox Item 1"),
22        22,
23        false,
24    );
25    let widget2 = CheckboxWidget::new(
26        make_points(20, 70),
27        make_size(360, 30),
28        String::from(" Checked Checkbox"),
29        22,
30        true,
31    );
32    let widget3 = CheckboxWidget::new(
33        make_points(20, 120),
34        make_size(360, 30),
35        String::from(" Unchecked Checkbox"),
36        22,
37        false,
38    );
39
40    engine.add_widget(Box::new(widget1), String::from("widget1"));
41    engine.add_widget(Box::new(widget2), String::from("widget2"));
42    engine.add_widget(Box::new(widget3), String::from("widget3"));
43
44    engine.run(sdl_context, window);
45}