MailComposer writes a message: To, and Cc and Bcc once asked for, as tag fields that suggest contacts and mark what is not an address; the subject and the words; the files, each with a way off; the signature under the words. Send wakes once there is someone to send to and every address is one; it hands over the draft now or at a time, and Discard lets it go. A new start from the owner begins the draft over. forms::TagInput now suggests: the rows that hold the typed words float under it through the list Combobox uses; Up, Down and Enter pick, and Escape sets them aside. RecipientInput points to it. ScheduleSend offers tomorrow morning, tomorrow afternoon, Monday morning, or a day and hour picked in a dialog. SignatureEditor writes the lines and shows how they sit under a message; it tells the owner's echo from a new signature, so the caret stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 lines
445 B
Rust
21 lines
445 B
Rust
mod boxes;
|
|
mod compose;
|
|
mod list;
|
|
mod quoted;
|
|
mod reader;
|
|
mod send;
|
|
mod signature;
|
|
mod thread;
|
|
|
|
#[cfg(all(test, feature = "test-support"))]
|
|
mod tests;
|
|
|
|
pub use boxes::{Mailbox, MailboxList};
|
|
pub use compose::{Draft, MailComposer};
|
|
pub use list::{Mail, MailItem, MailList};
|
|
pub use quoted::QuotedText;
|
|
pub use reader::{Contact, MailReader, Message};
|
|
pub use send::ScheduleSend;
|
|
pub use signature::SignatureEditor;
|
|
pub use thread::MailThreadView;
|