1
0
mirror of https://github.com/emilk/egui.git synced 2026-09-01 14:20:04 -04:00

Fixes after update

This commit is contained in:
lucasmerlin
2025-06-16 10:05:10 +02:00
parent b85a1d95bc
commit 3c39dee7f0
2 changed files with 42 additions and 40 deletions

View File

@@ -255,11 +255,12 @@ impl<'a> AtomLayout<'a> {
let desired_size = Vec2::new(desired_width, height); let desired_size = Vec2::new(desired_width, height);
let frame_size = (desired_size + margin.sum()).at_least(min_size); let frame_size = (desired_size + margin.sum()).at_least(min_size);
let (_, rect) = ui.allocate_space(frame_size); let intrinsic_size =
(Vec2::new(preferred_width, preferred_height) + margin.sum()).at_least(min_size);
let (_, rect) = ui.allocate_space(frame_size, intrinsic_size);
let mut response = ui.interact(rect, id, sense); let mut response = ui.interact(rect, id, sense);
response.intrinsic_size = response.intrinsic_size = Some(intrinsic_size);
Some((Vec2::new(preferred_width, preferred_height) + margin.sum()).at_least(min_size));
AllocatedAtomLayout { AllocatedAtomLayout {
sized_atoms: sized_items, sized_atoms: sized_items,

View File

@@ -42,47 +42,48 @@ impl PopupsDemo {
let _ = ui.button("Item"); let _ = ui.button("Item");
ui.menu_button("Recursive", |ui| self.nested_menus(ui)); ui.menu_button("Recursive", |ui| self.nested_menus(ui));
// if ui.button(if *checked { "short" } else { "Very long text for this item that should be wrapped" }).clicked() { // if ui.button(if self.checked { "short" } else { "Very long text for this item that should be wrapped" }).clicked() {
// *checked = !*checked; // self.checked = !self.checked;
// } // }
ui.checkbox( let checked = self.checked;
checked, ui.checkbox(
if *checked { &mut self.checked,
"short" if checked {
} else { "short"
"Very long text for this item that should be wrapped" } else {
}, "Very long text for this item that should be wrapped"
); },
}); );
ui.menu_button("SubMenu", |ui| { });
if ui.button("Open").clicked() { ui.menu_button("SubMenu", |ui| {
ui.close(); if ui.button("Open…").clicked() {
} ui.close();
}
let _ = ui.button("Item");
});
let _ = ui.button("Item"); let _ = ui.button("Item");
});
let _ = ui.button("Item");
if ui.button("Open…").clicked() {
ui.close();
}
});
ui.menu_image_text_button(
include_image!("../../data/icon.png"),
"I have an icon!",
|ui| {
let _ = ui.button("Item1");
let _ = ui.button("Item2");
let _ = ui.button("Item3");
let _ = ui.button("Item4");
if ui.button("Open…").clicked() { if ui.button("Open…").clicked() {
ui.close(); ui.close();
} }
}, });
); ui.menu_image_text_button(
let _ = ui.button("Very long text for this item that should be wrapped"); include_image!("../../data/icon.png"),
SubMenuButton::new("Always CloseOnClickOutside") "I have an icon!",
.config(MenuConfig::new().close_behavior(PopupCloseBehavior::CloseOnClickOutside)) |ui| {
.ui(ui, |ui| { let _ = ui.button("Item1");
ui.checkbox(&mut self.checked, "Checkbox"); let _ = ui.button("Item2");
let _ = ui.button("Item3");
let _ = ui.button("Item4");
if ui.button("Open…").clicked() {
ui.close();
}
},
);
let _ = ui.button("Very long text for this item that should be wrapped");
SubMenuButton::new("Always CloseOnClickOutside")
.config(MenuConfig::new().close_behavior(PopupCloseBehavior::CloseOnClickOutside))
.ui(ui, |ui| {
ui.checkbox(&mut self.checked, "Checkbox");
// Customized color SubMenuButton // Customized color SubMenuButton
let is_bright = self.color.intensity() > 0.5; let is_bright = self.color.intensity() > 0.5;