Add meu item for disabled buttons

This commit is contained in:
Jeremy Soller 2024-09-27 09:14:03 -06:00
parent 2006ebe447
commit cf6a35474e
No known key found for this signature in database
GPG key ID: D02FD439211AF56F

View file

@ -172,6 +172,8 @@ pub fn menu_button<'a, Message: 'a>(
pub enum MenuItem<A: MenuAction, L: Into<Cow<'static, str>>> {
/// Represents a button menu item.
Button(L, A),
/// Represents a button menu item that is disabled.
ButtonDisabled(L, A),
/// Represents a checkbox menu item.
CheckBox(L, bool, A),
/// Represents a folder menu item.
@ -250,6 +252,16 @@ where
trees.push(MenuTree::<Message, Renderer>::new(menu_button));
}
MenuItem::ButtonDisabled(label, action) => {
let key = find_key(&action, key_binds);
let menu_button = menu_button(vec![
widget::text(label).into(),
widget::horizontal_space(Length::Fill).into(),
widget::text(key).into(),
]);
trees.push(MenuTree::<Message, Renderer>::new(menu_button));
}
MenuItem::CheckBox(label, value, action) => {
let key = find_key(&action, key_binds);
trees.push(MenuTree::new(