//! Entidades de widgets que la fachada `Ui` crea una sola vez (campos de texto, listas, selectores).
//!
//! `State` guarda valores; esto guarda las entidades que tienen estado interno propio y deben conservar foco,
//! cursor, scroll y suscripciones entre frames.
use crate::core::Handle;
use crate::widgets::TextInput;
use std::collections::HashMap;
#[derive(Default)]
pub(crate) struct WidgetStore {
text_inputs: HashMap<&'static str, Handle<TextInput>>,
}
impl WidgetStore {
pub(crate) fn text_input(&self, key: &'static str) -> Option<Handle<TextInput>> {
self.text_inputs.get(key).copied()
}
pub(crate) fn insert_text_input(&mut self, key: &'static str, input: Handle<TextInput>) {
self.text_inputs.insert(key, input);
}
}