dropdown_labeled

Function dropdown_labeled 

Source
pub fn dropdown_labeled<L: Into<String>, S: Into<String>, F: FnOnce(&mut UI<'_, '_>)>(
    ui: &mut UI<'_, '_>,
    label_text: L,
    dropdown_text: S,
    contents: F,
)
Examples found in repository?
examples/widget_gallery.rs (lines 90-100)
87    fn ui(&mut self, ui: &mut pierro::UI) {
88
89        pierro::margin(ui, |ui| {
90            pierro::dropdown_labeled(ui, "Axis: ", match self.axis {
91                pierro::Axis::X => "X",
92                pierro::Axis::Y => "Y",
93            }, |ui| {
94                if pierro::menu_button(ui, "X").mouse_clicked() {
95                    self.axis = pierro::Axis::X;
96                }
97                if pierro::menu_button(ui, "Y").mouse_clicked() {
98                    self.axis = pierro::Axis::Y;
99                }
100            });
101            pierro::v_spacing(ui, 5.0);
102
103            pierro::dropdown_labeled(ui, "Justify: ", match self.justify {
104                pierro::Justify::Min => "Min",
105                pierro::Justify::Center => "Center",
106                pierro::Justify::Max => "Max",
107            }, |ui| {
108                if pierro::menu_button(ui, "Min").mouse_clicked() {
109                    self.justify = pierro::Justify::Min;
110                }
111                if pierro::menu_button(ui, "Center").mouse_clicked() {
112                    self.justify = pierro::Justify::Center;
113                }
114                if pierro::menu_button(ui, "Max").mouse_clicked() {
115                    self.justify = pierro::Justify::Max;
116                }
117            });
118            pierro::v_spacing(ui, 5.0);
119
120            pierro::dropdown_labeled(ui, "Align: ", match self.align {
121                pierro::Align::Min => "Min",
122                pierro::Align::Center => "Center",
123                pierro::Align::Max => "Max",
124            }, |ui| {
125                if pierro::menu_button(ui, "Min").mouse_clicked() {
126                    self.align = pierro::Align::Min;
127                }
128                if pierro::menu_button(ui, "Center").mouse_clicked() {
129                    self.align = pierro::Align::Center;
130                }
131                if pierro::menu_button(ui, "Max").mouse_clicked() {
132                    self.align = pierro::Align::Max;
133                }
134            });
135        });
136
137        pierro::h_divider(ui);
138        pierro::container(ui,
139            pierro::Size::fr(1.0),
140            pierro::Size::fr(1.0),
141            pierro::Layout::new(self.axis).with_justify(self.justify).with_align(self.align),
142            |ui| {
143                self.node(ui, pierro::Color::RED);   
144                self.node(ui, pierro::Color::GREEN);   
145                self.node(ui, pierro::Color::BLUE);
146            });
147    }