diff options
author | Robin Krahl <robin.krahl@ireas.org> | 2019-01-11 01:24:16 +0000 |
---|---|---|
committer | Robin Krahl <robin.krahl@ireas.org> | 2019-01-11 02:25:54 +0100 |
commit | 02190c44f7072b4fdaca50836a583f955866f8de (patch) | |
tree | 46dd928ca34ff174b6393bb3ffc71c73c0ef3f4f /src/backends | |
parent | 3efbb1ddc8b85f85621db9b37a0980ec88d2386d (diff) | |
download | dialog-rs-02190c44f7072b4fdaca50836a583f955866f8de.tar.gz dialog-rs-02190c44f7072b4fdaca50836a583f955866f8de.tar.bz2 |
Check the DIALOG environment variable in default_backend
This patch changes the logic in default_backend to respect the DIALOG
environment variable that may contain the name of the backend to use.
Diffstat (limited to 'src/backends')
-rw-r--r-- | src/backends/mod.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/backends/mod.rs b/src/backends/mod.rs index b9cecd0..20cb8c1 100644 --- a/src/backends/mod.rs +++ b/src/backends/mod.rs @@ -31,3 +31,11 @@ pub trait Backend { /// Shows the given question dialog and returns the choice. fn show_question(&self, question: &super::Question) -> Result<super::Choice>; } + +pub(crate) fn from_str(s: &str) -> Option<Box<dyn Backend>> { + match s.to_lowercase().as_ref() { + "dialog" => Some(Box::new(Dialog::new())), + "zenity" => Some(Box::new(Zenity::new())), + _ => None, + } +} |