pub struct SettingsCategoryProvider;Expand description
Navigation provider for settings categories.
This provider implements the NavigationProvider trait for the flat
category hierarchy used in the settings editor. Since categories don’t
have a parent-child relationship, this provider treats all categories
as independent root-level items.
Trait Implementations§
Source§impl Default for SettingsCategoryProvider
impl Default for SettingsCategoryProvider
Source§fn default() -> SettingsCategoryProvider
fn default() -> SettingsCategoryProvider
Returns the “default value” for a type. Read more
Source§fn estimate_line_count(
&self,
_key: &Self::LevelKey,
_data: &Self::LevelData,
) -> usize
fn estimate_line_count( &self, _key: &Self::LevelKey, _data: &Self::LevelData, ) -> usize
Return 1 here, as the amount of categories fits on 1 line
Source§type Bar = CategoryNavigationBar
type Bar = CategoryNavigationBar
Concrete view used to render a level.
Source§fn parent(&self, _current: &Self::LevelKey) -> Option<Self::LevelKey>
fn parent(&self, _current: &Self::LevelKey) -> Option<Self::LevelKey>
Returns the parent key, if any.
Source§fn is_ancestor(
&self,
ancestor: &Self::LevelKey,
descendant: &Self::LevelKey,
) -> bool
fn is_ancestor( &self, ancestor: &Self::LevelKey, descendant: &Self::LevelKey, ) -> bool
Returns true if
ancestor is an ancestor of descendant.Source§fn is_root(&self, _key: &Self::LevelKey, _context: &Context) -> bool
fn is_root(&self, _key: &Self::LevelKey, _context: &Context) -> bool
Returns true if the key is the root of the stack.
Source§fn fetch_level_data(
&self,
_key: &Self::LevelKey,
_context: &mut Context,
) -> Self::LevelData
fn fetch_level_data( &self, _key: &Self::LevelKey, _context: &mut Context, ) -> Self::LevelData
Fetch the data for a level.
Source§fn create_bar(&self, rect: Rectangle, key: &Self::LevelKey) -> Self::Bar
fn create_bar(&self, rect: Rectangle, key: &Self::LevelKey) -> Self::Bar
Creates a new empty bar for the given level key. Read more
Source§fn bar_key(&self, bar: &Self::Bar) -> Self::LevelKey
fn bar_key(&self, bar: &Self::Bar) -> Self::LevelKey
Returns the key that is currently displayed by a bar.
Source§fn update_bar(
&self,
bar: &mut Self::Bar,
_data: &Self::LevelData,
selected: &Self::LevelKey,
fonts: &mut Fonts,
)
fn update_bar( &self, bar: &mut Self::Bar, _data: &Self::LevelData, selected: &Self::LevelKey, fonts: &mut Fonts, )
Update bar content using only fonts (no context borrowing).
Source§fn update_bar_selection(&self, bar: &mut Self::Bar, selected: &Self::LevelKey)
fn update_bar_selection(&self, bar: &mut Self::Bar, selected: &Self::LevelKey)
Update bar selection when the content is unchanged.
Source§fn resize_bar_by(
&self,
bar: &mut Self::Bar,
delta_y: i32,
fonts: &mut Fonts,
) -> i32
fn resize_bar_by( &self, bar: &mut Self::Bar, delta_y: i32, fonts: &mut Fonts, ) -> i32
Apply a vertical resize delta to a bar. Read more
Auto Trait Implementations§
impl Freeze for SettingsCategoryProvider
impl RefUnwindSafe for SettingsCategoryProvider
impl Send for SettingsCategoryProvider
impl Sync for SettingsCategoryProvider
impl Unpin for SettingsCategoryProvider
impl UnwindSafe for SettingsCategoryProvider
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
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.