aboutsummaryrefslogtreecommitdiff
path: root/vendor/dialoguer/examples/buffered.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/dialoguer/examples/buffered.rs')
-rw-r--r--vendor/dialoguer/examples/buffered.rs42
1 files changed, 42 insertions, 0 deletions
diff --git a/vendor/dialoguer/examples/buffered.rs b/vendor/dialoguer/examples/buffered.rs
new file mode 100644
index 0000000..96f62bd
--- /dev/null
+++ b/vendor/dialoguer/examples/buffered.rs
@@ -0,0 +1,42 @@
+use console::Term;
+use dialoguer::{theme::ColorfulTheme, Confirm, Input, MultiSelect, Select, Sort};
+
+fn main() {
+ let items = &[
+ "Ice Cream",
+ "Vanilla Cupcake",
+ "Chocolate Muffin",
+ "A Pile of sweet, sweet mustard",
+ ];
+ let term = Term::buffered_stderr();
+ let theme = ColorfulTheme::default();
+
+ println!("All the following controls are run in a buffered terminal");
+ Confirm::with_theme(&theme)
+ .with_prompt("Do you want to continue?")
+ .interact_on(&term)
+ .unwrap();
+
+ let _: String = Input::with_theme(&theme)
+ .with_prompt("Your name")
+ .interact_on(&term)
+ .unwrap();
+
+ Select::with_theme(&theme)
+ .with_prompt("Pick an item")
+ .items(items)
+ .interact_on(&term)
+ .unwrap();
+
+ MultiSelect::with_theme(&theme)
+ .with_prompt("Pick some items")
+ .items(items)
+ .interact_on(&term)
+ .unwrap();
+
+ Sort::with_theme(&theme)
+ .with_prompt("Order these items")
+ .items(items)
+ .interact_on(&term)
+ .unwrap();
+}