#[derive(Debug, Clone)]
pub enum Message {
MenuUp,
MenuDown,
EnterChild,
ExitChild,
ExecuteCommand(String),
CommandStarted,
CommandCompleted(CommandResult),
ScrollUp,
ScrollDown,
ScrollPageUp,
ScrollPageDown,
ScrollToTop,
ScrollToBottom,
Tick,
Quit,
ReturnToMenu,
SkipStartup,
}
#[derive(Debug, Clone)]
pub enum CommandResult {
Success(String),
Error(String),
}
impl Message {
pub fn is_state_changing(&self) -> bool {
matches!(
self,
Message::ExecuteCommand(_)
| Message::CommandStarted
| Message::CommandCompleted(_)
| Message::Quit
| Message::ReturnToMenu
| Message::EnterChild
| Message::ExitChild
| Message::SkipStartup
)
}
}