tabs/
tabs.rs

1use fltk::{
2    app,
3    button::*,
4    group::{Flex, Tabs},
5    input::Input,
6    menu::{Choice, MenuButton},
7    output::Output,
8    prelude::{GroupExt, InputExt, MenuExt, WidgetBase, WidgetExt, WindowExt},
9    window::Window,
10};
11
12fn draw_gallery() {
13    let mut tab = Tabs::default_fill();
14
15    let mut grp1 = Flex::default_fill().with_label("Tab1\t\t").row();
16    let mut col = Flex::default().column();
17    grp1.fixed(&col, 160);
18    col.set_pad(10);
19    col.set_margin(10);
20    let _but1 = Button::default().with_label("Button");
21    let _but2 = RoundButton::default().with_label("Round");
22    let _but3 = CheckButton::default().with_label("Check");
23    let _but4 = LightButton::default().with_label("Light");
24    let mut but5 = MenuButton::default().with_label("Menu");
25    but5.add_choice("Hello|World|From|Rust");
26    let _but6 = ReturnButton::default().with_label("Return");
27    let mut chce = Choice::default();
28    chce.add_choice("Hello");
29    let _inp = Input::default();
30    let mut out = Output::default();
31    out.set_value("output");
32    col.end();
33    grp1.end();
34
35    let grp2 = Flex::default_fill().with_label("Tab2\t\t").row();
36    grp2.end();
37    tab.end();
38    tab.auto_layout();
39}
40
41fn main() {
42    let app = app::App::default().with_scheme(app::Scheme::Gtk);
43    app::background(221, 221, 221);
44
45    let mut wind = Window::default()
46        .with_size(500, 450)
47        .with_label("Tabs")
48        .center_screen();
49
50    draw_gallery();
51
52    wind.make_resizable(true);
53    wind.end();
54    wind.show();
55
56    app.run().unwrap();
57}