pub struct App {Show 37 fields
pub daemons: Vec<Daemon>,
pub disabled: Vec<DaemonId>,
pub selected: usize,
pub view: View,
pub prev_view: View,
pub log_content: Vec<String>,
pub log_daemon_id: Option<DaemonId>,
pub log_scroll: usize,
pub log_follow: bool,
pub message: Option<String>,
pub message_time: Option<Instant>,
pub process_stats: HashMap<u32, ProcessStats>,
pub stats_history: HashMap<DaemonId, StatsHistory>,
pub pending_action: Option<PendingAction>,
pub loading_text: Option<String>,
pub search_query: String,
pub search_active: bool,
pub sort_column: SortColumn,
pub sort_order: SortOrder,
pub log_search_query: String,
pub log_search_active: bool,
pub log_search_matches: Vec<usize>,
pub log_search_current: usize,
pub details_daemon_id: Option<DaemonId>,
pub logs_expanded: bool,
pub multi_select: HashSet<DaemonId>,
pub config_daemon_ids: HashSet<DaemonId>,
pub show_available: bool,
pub editor_state: Option<EditorState>,
pub file_selector: Option<ConfigFileSelector>,
pub network_listeners: Vec<Listener>,
pub network_search_query: String,
pub network_search_active: bool,
pub network_selected: usize,
pub network_scroll_offset: usize,
pub network_selected_pid: Option<u32>,
pub network_visible_rows: usize,
}Fields§
§daemons: Vec<Daemon>§disabled: Vec<DaemonId>§selected: usize§view: View§prev_view: View§log_content: Vec<String>§log_daemon_id: Option<DaemonId>§log_scroll: usize§log_follow: bool§message: Option<String>§message_time: Option<Instant>§process_stats: HashMap<u32, ProcessStats>§stats_history: HashMap<DaemonId, StatsHistory>§pending_action: Option<PendingAction>§loading_text: Option<String>§search_query: String§search_active: bool§sort_column: SortColumn§sort_order: SortOrder§log_search_query: String§log_search_active: bool§log_search_matches: Vec<usize>§log_search_current: usize§details_daemon_id: Option<DaemonId>§logs_expanded: bool§multi_select: HashSet<DaemonId>§config_daemon_ids: HashSet<DaemonId>§show_available: bool§editor_state: Option<EditorState>§file_selector: Option<ConfigFileSelector>§network_listeners: Vec<Listener>§network_search_query: String§network_search_active: bool§network_selected: usize§network_scroll_offset: usize§network_selected_pid: Option<u32>§network_visible_rows: usizeImplementations§
Source§impl App
impl App
pub fn new() -> Self
pub fn confirm_action(&mut self, action: PendingAction)
pub fn cancel_confirm(&mut self)
pub fn take_pending_action(&mut self) -> Option<PendingAction>
pub fn start_loading(&mut self, text: impl Into<String>)
pub fn stop_loading(&mut self)
pub fn start_search(&mut self)
pub fn end_search(&mut self)
pub fn clear_search(&mut self)
pub fn search_push(&mut self, c: char)
pub fn search_pop(&mut self)
pub fn filtered_daemons(&self) -> Vec<&Daemon>
pub fn cycle_sort(&mut self)
pub fn toggle_sort_order(&mut self)
pub fn selected_daemon(&self) -> Option<&Daemon>
pub fn select_next(&mut self)
pub fn select_prev(&mut self)
pub fn toggle_log_follow(&mut self)
pub fn toggle_logs_expanded(&mut self)
pub fn toggle_select(&mut self)
pub fn select_all_visible(&mut self)
pub fn clear_selection(&mut self)
pub fn is_selected(&self, daemon_id: &DaemonId) -> bool
pub fn has_selection(&self) -> bool
pub fn selected_daemon_ids(&self) -> Vec<DaemonId>
pub fn set_message(&mut self, msg: impl Into<String>)
pub fn clear_stale_message(&mut self)
pub fn get_stats(&self, pid: u32) -> Option<&ProcessStats>
Sourcepub fn get_stats_history(&self, daemon_id: &DaemonId) -> Option<&StatsHistory>
pub fn get_stats_history(&self, daemon_id: &DaemonId) -> Option<&StatsHistory>
Get stats history for a daemon
pub async fn refresh(&mut self, client: &Arc<IpcClient>) -> Result<()>
Sourcepub async fn refresh_network(&mut self)
pub async fn refresh_network(&mut self)
Refresh network listeners data (for Network view)
Sourcepub fn filtered_network_listeners(&self) -> Vec<&Listener>
pub fn filtered_network_listeners(&self) -> Vec<&Listener>
Get filtered network listeners based on search query
Sourcepub fn toggle_network_search(&mut self)
pub fn toggle_network_search(&mut self)
Toggle network search active state
Sourcepub fn clear_network_search(&mut self)
pub fn clear_network_search(&mut self)
Clear network search
Sourcepub fn is_config_only(&self, daemon_id: &DaemonId) -> bool
pub fn is_config_only(&self, daemon_id: &DaemonId) -> bool
Check if a daemon is from config only (not currently active)
Sourcepub fn toggle_show_available(&mut self)
pub fn toggle_show_available(&mut self)
Toggle showing available daemons from config
pub fn scroll_logs_down(&mut self)
pub fn scroll_logs_up(&mut self)
Sourcepub fn scroll_logs_page_down(&mut self, visible_lines: usize)
pub fn scroll_logs_page_down(&mut self, visible_lines: usize)
Scroll down by half page (Ctrl+D)
Sourcepub fn scroll_logs_page_up(&mut self, visible_lines: usize)
pub fn scroll_logs_page_up(&mut self, visible_lines: usize)
Scroll up by half page (Ctrl+U)
pub fn start_log_search(&mut self)
pub fn end_log_search(&mut self)
pub fn clear_log_search(&mut self)
pub fn log_search_push(&mut self, c: char)
pub fn log_search_pop(&mut self)
pub fn log_search_next(&mut self)
pub fn log_search_prev(&mut self)
pub fn show_details(&mut self, daemon_id: &DaemonId)
pub fn hide_details(&mut self)
Sourcepub fn view_daemon_details(&mut self, daemon_id: &DaemonId)
pub fn view_daemon_details(&mut self, daemon_id: &DaemonId)
View daemon details (charts + logs)
pub fn show_help(&mut self)
pub fn back_to_dashboard(&mut self)
Sourcepub fn stats(&self) -> (usize, usize, usize, usize, usize)
pub fn stats(&self) -> (usize, usize, usize, usize, usize)
Returns (total, running, stopped, errored, available)
pub fn is_disabled(&self, daemon_id: &DaemonId) -> bool
Sourcepub fn get_config_files(&self) -> Vec<PathBuf>
pub fn get_config_files(&self) -> Vec<PathBuf>
Get list of available config file paths
Sourcepub fn open_file_selector(&mut self)
pub fn open_file_selector(&mut self)
Open file selector for creating a new daemon
Sourcepub fn open_editor_create(&mut self, config_path: PathBuf)
pub fn open_editor_create(&mut self, config_path: PathBuf)
Open editor for a new daemon with the selected config file
Sourcepub fn open_editor_edit(&mut self, daemon_id: &DaemonId)
pub fn open_editor_edit(&mut self, daemon_id: &DaemonId)
Open editor for an existing daemon
Sourcepub fn close_editor(&mut self)
pub fn close_editor(&mut self)
Close the editor and return to dashboard
Sourcepub fn save_editor_config(&mut self) -> Result<bool>
pub fn save_editor_config(&mut self) -> Result<bool>
Save the current editor state to config file. Returns Ok(true) if saved successfully, Ok(false) if validation/duplicate error (don’t close editor).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for App
impl RefUnwindSafe for App
impl Send for App
impl Sync for App
impl Unpin for App
impl UnsafeUnpin for App
impl UnwindSafe for App
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more