view_state.rs (707B)
1 use std::collections::HashMap; 2 3 use enostr::Pubkey; 4 5 use crate::deck_state::DeckState; 6 use crate::login_manager::AcquireKeyState; 7 use crate::profile_state::ProfileState; 8 use crate::ui::search::SearchQueryState; 9 10 /// Various state for views 11 #[derive(Default)] 12 pub struct ViewState { 13 pub login: AcquireKeyState, 14 pub id_to_deck_state: HashMap<egui::Id, DeckState>, 15 pub id_state_map: HashMap<egui::Id, AcquireKeyState>, 16 pub id_string_map: HashMap<egui::Id, String>, 17 pub searches: HashMap<egui::Id, SearchQueryState>, 18 pub pubkey_to_profile_state: HashMap<Pubkey, ProfileState>, 19 } 20 21 impl ViewState { 22 pub fn login_mut(&mut self) -> &mut AcquireKeyState { 23 &mut self.login 24 } 25 }