aboutsummaryrefslogtreecommitdiff
path: root/src/backends/mod.rs
diff options
context:
space:
mode:
authorRobin Krahl <robin.krahl@ireas.org>2019-01-08 02:11:55 +0000
committerRobin Krahl <robin.krahl@ireas.org>2019-01-08 04:54:00 +0100
commita0b0a3c6a57097d56c5c471e5cb72bbde8198da8 (patch)
treebc91299159628f89594053aedcef3eaa71497413 /src/backends/mod.rs
parent31e1410bf3299301879171d5677f69925828844c (diff)
downloaddialog-rs-a0b0a3c6a57097d56c5c471e5cb72bbde8198da8.tar.gz
dialog-rs-a0b0a3c6a57097d56c5c471e5cb72bbde8198da8.tar.bz2
Implement message boxes using the dialog backend
This patch adds a first dialog box type, message boxes, and a first backend, the dialog(1) tool. It does not yet address the problems of output handling and backend selection.
Diffstat (limited to 'src/backends/mod.rs')
-rw-r--r--src/backends/mod.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/backends/mod.rs b/src/backends/mod.rs
new file mode 100644
index 0000000..c316307
--- /dev/null
+++ b/src/backends/mod.rs
@@ -0,0 +1,22 @@
+// Copyright (C) 2019 Robin Krahl <robin.krahl@ireas.org>
+// SPDX-License-Identifier: MIT
+
+mod dialog;
+
+pub use crate::backends::dialog::Dialog;
+
+use std::io::Result;
+
+/// A dialog backend.
+///
+/// A dialog backend is a program that can be used to display dialog boxes. Use the
+/// [`default_backend`][] function to create a new instance of the default backend, or choose a
+/// backend and create an instance manually. To use a backend, pass it to the [`show_with`][]
+/// method of a dialog box.
+///
+/// [`default_backend`]: ../function.default_backend.html
+/// [`show_with`]: ../trait.DialogBox.html#method.show_with
+pub trait Backend {
+ /// Shows the given message dialog.
+ fn show_message(&self, message: &super::Message) -> Result<()>;
+}