Add a presets Menu to the game_of_life example
This commit is contained in:
parent
c8ac77e4e9
commit
b97954a1ee
3 changed files with 23 additions and 2 deletions
|
|
@ -1,3 +1,5 @@
|
|||
use iced::menu::{self, Menu};
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||
pub enum Preset {
|
||||
Custom,
|
||||
|
|
@ -26,6 +28,17 @@ pub static ALL: &[Preset] = &[
|
|||
];
|
||||
|
||||
impl Preset {
|
||||
pub fn menu() -> Menu<Self> {
|
||||
Menu::with_entries(
|
||||
ALL.iter()
|
||||
.copied()
|
||||
.map(|preset| {
|
||||
menu::Entry::item(preset.to_string(), None, preset)
|
||||
})
|
||||
.collect(),
|
||||
)
|
||||
}
|
||||
|
||||
pub fn life(self) -> Vec<(isize, isize)> {
|
||||
#[rustfmt::skip]
|
||||
let cells = match self {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue