1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
use eframe::egui;
use egui_extras::{Size, Strip, StripBuilder};

pub fn header_body_controls(ui: &mut egui::Ui, content: impl FnOnce(&mut Strip)) {
    StripBuilder::new(ui)
        .size(Size::exact(30.0))
        .size(Size::exact(100.0))
        .size(Size::exact(30.0))
        .size(Size::remainder())
        .size(Size::exact(30.0))
        .size(Size::exact(100.0))
        .size(Size::exact(30.0))
        .vertical(|mut strip| {
            strip.empty();
            content(&mut strip);
            strip.empty();
        });
}

pub fn center_x(builder: StripBuilder, width: f32, content: impl FnOnce(&mut egui::Ui)) {
    builder
        .size(Size::remainder())
        .size(Size::exact(width))
        .size(Size::remainder())
        .horizontal(|mut strip| {
            strip.empty();
            strip.cell(|ui| content(ui));
            strip.empty();
        });
}