pub fn make_points(x: i32, y: i32) -> PointsExpand description
Convenience method to create a Points type.
Examples found in repository?
examples/push_button.rs (line 27)
16pub fn main() {
17 let sdl_context = sdl2::init().unwrap();
18 let video_subsystem = sdl_context.video().unwrap();
19 let window = video_subsystem
20 .window("pushrod-render push button demo", 400, 100)
21 .position_centered()
22 .opengl()
23 .build()
24 .unwrap();
25 let mut engine = Engine::new(400, 100, 30);
26 let mut button1 = PushButtonWidget::new(
27 make_points(20, 20),
28 make_size(360, 60),
29 String::from("Click me!"),
30 40,
31 );
32
33 button1.set_color(CONFIG_COLOR_BORDER, Color::RGB(0, 0, 0));
34 button1.set_numeric(CONFIG_BORDER_WIDTH, 2);
35 button1.on_click(|_x, _widgets, _layouts| {
36 eprintln!("Click me clicked!");
37 });
38
39 engine.add_widget(Box::new(button1), String::from("button1"));
40
41 engine.run(sdl_context, window);
42}More examples
examples/tab_bar.rs (line 26)
15pub fn main() {
16 let sdl_context = sdl2::init().unwrap();
17 let video_subsystem = sdl_context.video().unwrap();
18 let window = video_subsystem
19 .window("pushrod-render tab bar demo", 400, 300)
20 .position_centered()
21 .opengl()
22 .build()
23 .unwrap();
24 let mut engine = Engine::new(400, 300, 60);
25 let mut widget1 = TabBarWidget::new(
26 make_points(20, 20),
27 make_size(360, 30),
28 vec![
29 String::from("First"),
30 String::from("Second"),
31 String::from("Third"),
32 ],
33 );
34
35 widget1.set_color(CONFIG_COLOR_BASE, Color::RGB(255, 255, 255));
36 widget1.set_color(CONFIG_COLOR_HOVER, Color::RGB(192, 192, 255));
37 widget1.on_tab_selected(|_, _, _, selected_tab| {
38 eprintln!("Selected tab: {}", selected_tab);
39 });
40
41 engine.add_widget(Box::new(widget1), String::from("widget1"));
42
43 engine.run(sdl_context, window);
44}examples/progress.rs (line 21)
11pub fn main() {
12 let sdl_context = sdl2::init().unwrap();
13 let video_subsystem = sdl_context.video().unwrap();
14 let window = video_subsystem
15 .window("pushrod-render progress demo", 400, 180)
16 .position_centered()
17 .opengl()
18 .build()
19 .unwrap();
20 let mut engine = Engine::new(400, 180, 60);
21 let mut widget1 = ProgressWidget::new(make_points(20, 20), make_size(360, 40), 25);
22
23 widget1.set_color(CONFIG_COLOR_SECONDARY, Color::RGB(255, 0, 0));
24
25 let mut widget2 = ProgressWidget::new(make_points(20, 70), make_size(360, 40), 50);
26
27 widget2.set_color(CONFIG_COLOR_SECONDARY, Color::RGB(255, 0, 0));
28
29 let mut widget3 = ProgressWidget::new(make_points(20, 120), make_size(360, 40), 75);
30
31 widget3.set_color(CONFIG_COLOR_SECONDARY, Color::RGB(255, 0, 0));
32
33 engine.add_widget(Box::new(widget1), String::from("widget1"));
34 engine.add_widget(Box::new(widget2), String::from("widget2"));
35 engine.add_widget(Box::new(widget3), String::from("widget3"));
36
37 engine.run(sdl_context, window);
38}examples/checkbox.rs (line 19)
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}examples/list.rs (line 24)
14pub fn main() {
15 let sdl_context = sdl2::init().unwrap();
16 let video_subsystem = sdl_context.video().unwrap();
17 let window = video_subsystem
18 .window("pushrod-render list demo", 400, 300)
19 .position_centered()
20 .opengl()
21 .build()
22 .unwrap();
23 let mut engine = Engine::new(400, 300, 60);
24 let mut widget1 = ListWidget::new(make_points(20, 20), make_size(200, 260));
25
26 widget1.set_color(CONFIG_COLOR_BASE, Color::RGB(255, 255, 255));
27 widget1.set_color(CONFIG_COLOR_BORDER, Color::RGB(0, 0, 0));
28 widget1.set_color(CONFIG_COLOR_HOVER, Color::RGB(0x90, 0x90, 0xFF));
29 widget1.set_numeric(CONFIG_BORDER_WIDTH, 1);
30
31 widget1.add_item(String::from("Item 1"));
32 widget1.add_item(String::from("Item 2"));
33 widget1.add_item(String::from("Item 3"));
34 widget1.add_item(String::from("Item 4"));
35 widget1.add_item(String::from("Item 5"));
36
37 widget1.on_selected(|x, _widgets, _layout, selected_item| {
38 eprintln!("Selected: {}", selected_item);
39 });
40
41 engine.add_widget(Box::new(widget1), String::from("widget1"));
42
43 engine.run(sdl_context, window);
44}examples/image_button.rs (line 19)
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 = ImageButtonWidget::new(
19 make_points(20, 20),
20 make_size(360, 40),
21 String::from(" Rust Logo"),
22 24,
23 String::from("assets/rust-48x48.jpg"),
24 );
25 let widget2 = ImageButtonWidget::new(
26 make_points(20, 70),
27 make_size(360, 40),
28 String::from(" Unselected Radio Button"),
29 24,
30 String::from("assets/radio_unselected.png"),
31 );
32 let widget3 = ImageButtonWidget::new(
33 make_points(20, 120),
34 make_size(360, 40),
35 String::from(" Unchecked Button"),
36 24,
37 String::from("assets/checkbox_unselected.png"),
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}