aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/lib.rs64
1 files changed, 63 insertions, 1 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 0c82ebb..92acde3 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,7 +1,69 @@
//! Custom dialog for `iced`
//!
//! # Example
-//! See [here](https://github.com/pml68/iced_dialog/tree/master/example)
+//! ```no_run
+//! use iced::{
+//! Element, Length, Task,
+//! widget::{button, center, column, text},
+//! };
+//! use iced_dialog::dialog;
+//!
+//! #[derive(Default)]
+//! struct State {
+//! is_open: bool,
+//! action_text: String,
+//! }
+//!
+//! #[derive(Debug, Clone)]
+//! enum Message {
+//! OpenDialog,
+//! Saved,
+//! Cancelled,
+//! }
+//!
+//! fn main() -> iced::Result {
+//! iced::run(State::update, State::view)
+//! }
+//!
+//! impl State {
+//! fn update(&mut self, message: Message) -> Task<Message> {
+//! match message {
+//! Message::OpenDialog => self.is_open = true,
+//! Message::Saved => {
+//! self.action_text = "User saved their work".to_owned();
+//! self.is_open = false;
+//! }
+//! Message::Cancelled => {
+//! self.action_text = "User cancelled the dialog".to_owned();
+//! self.is_open = false;
+//! }
+//! }
+//! Task::none()
+//! }
+//!
+//! fn view(&self) -> Element<'_, Message> {
+//! let base = center(
+//! column![
+//! text(&self.action_text),
+//! button("Open Dialog").on_press(Message::OpenDialog)
+//! ]
+//! .spacing(14.0),
+//! )
+//! .width(Length::Fill)
+//! .height(Length::Fill);
+//!
+//! let dialog_content = text("Do you want to save?");
+//!
+//! dialog(self.is_open, base, dialog_content)
+//! .title("Save")
+//! .push_button(iced_dialog::button("Save", Message::Saved))
+//! .push_button(iced_dialog::button("Cancel", Message::Cancelled))
+//! .width(350)
+//! .height(234)
+//! .into()
+//! }
+//! }
+//! ```
pub mod dialog;
pub use dialog::Dialog;
use iced_core as core;