summaryrefslogtreecommitdiff
path: root/vendor/dialoguer/examples/select.rs
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
committerValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
commit1b6a04ca5504955c571d1c97504fb45ea0befee4 (patch)
tree7579f518b23313e8a9748a88ab6173d5e030b227 /vendor/dialoguer/examples/select.rs
parent5ecd8cf2cba827454317368b68571df0d13d7842 (diff)
downloadfparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.tar.xz
fparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.zip
Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
Diffstat (limited to 'vendor/dialoguer/examples/select.rs')
-rw-r--r--vendor/dialoguer/examples/select.rs42
1 files changed, 42 insertions, 0 deletions
diff --git a/vendor/dialoguer/examples/select.rs b/vendor/dialoguer/examples/select.rs
new file mode 100644
index 0000000..3382e8b
--- /dev/null
+++ b/vendor/dialoguer/examples/select.rs
@@ -0,0 +1,42 @@
+use dialoguer::{theme::ColorfulTheme, Select};
+
+fn main() {
+ let selections = &[
+ "Ice Cream",
+ "Vanilla Cupcake",
+ "Chocolate Muffin",
+ "A Pile of sweet, sweet mustard",
+ ];
+
+ let selection = Select::with_theme(&ColorfulTheme::default())
+ .with_prompt("Pick your flavor")
+ .default(0)
+ .items(&selections[..])
+ .interact()
+ .unwrap();
+
+ println!("Enjoy your {}!", selections[selection]);
+
+ let selection = Select::with_theme(&ColorfulTheme::default())
+ .with_prompt("Optionally pick your flavor")
+ .default(0)
+ .items(&selections[..])
+ .interact_opt()
+ .unwrap();
+
+ if let Some(selection) = selection {
+ println!("Enjoy your {}!", selections[selection]);
+ } else {
+ println!("You didn't select anything!");
+ }
+
+ let selection = Select::with_theme(&ColorfulTheme::default())
+ .with_prompt("Optionally pick your flavor, hint it might be on the second page")
+ .default(0)
+ .max_length(2)
+ .items(&selections[..])
+ .interact()
+ .unwrap();
+
+ println!("Enjoy your {}!", selections[selection]);
+}