aboutsummaryrefslogtreecommitdiff
path: root/vendor/dialoguer/examples/select.rs
diff options
context:
space:
mode:
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]);
+}