pub struct ColorPalette(/* private fields */);Expand description
Color palette for mapping named colors to RGB values.
The ColorPalette struct provides a way to define and lookup colors by name,
which is useful for theming systems where colors are referenced by semantic names
rather than direct RGB values.
Color palette mapping named colors to RGB values.
This struct wraps a HashMap to provide named color lookups. Colors can be
added with semantic names (like “primary”, “error”, “success”) and retrieved
by those names, with optional fallback to default colors.
§Example
use ratatui_toolkit::markdown_widget::extensions::theme::ColorPalette;
use ratatui::style::Color;
let mut palette = ColorPalette::new();
palette.add_color("primary", Color::Rgb(97, 175, 239));
let color = palette.get_or_default("primary");Implementations§
Source§impl ColorPalette
impl ColorPalette
Sourcepub fn new() -> ColorPalette
Available on crate feature markdown-preview only.
pub fn new() -> ColorPalette
markdown-preview only.Create a new empty palette.
§Returns
A new ColorPalette with no colors defined.
§Example
use ratatui_toolkit::markdown_widget::extensions::theme::ColorPalette;
let palette = ColorPalette::new();
assert!(palette.get("any_color").is_none());Source§impl ColorPalette
Method to get a color by name from the palette.
impl ColorPalette
Method to get a color by name from the palette.
Sourcepub fn get(&self, name: &str) -> Option<Color>
Available on crate feature markdown-preview only.
pub fn get(&self, name: &str) -> Option<Color>
markdown-preview only.Get a color by name, with fallback.
§Arguments
name- The name of the color to retrieve
§Returns
Some(Color) if the color exists in the palette, None otherwise.
§Example
use ratatui_toolkit::markdown_widget::extensions::theme::ColorPalette;
use ratatui::style::Color;
let mut palette = ColorPalette::new();
palette.add_color("blue", Color::Rgb(97, 175, 239));
assert!(palette.get("blue").is_some());
assert!(palette.get("nonexistent").is_none());Source§impl ColorPalette
Method to get a color by name with a default fallback.
impl ColorPalette
Method to get a color by name with a default fallback.
Sourcepub fn get_or_default(&self, name: &str) -> Color
Available on crate feature markdown-preview only.
pub fn get_or_default(&self, name: &str) -> Color
markdown-preview only.Get a color by name with default fallback.
If the color is not found in the palette, returns Color::White as the default.
§Arguments
name- The name of the color to retrieve
§Returns
The Color associated with the name, or Color::White if not found.
§Example
use ratatui_toolkit::markdown_widget::extensions::theme::ColorPalette;
use ratatui::style::Color;
let palette = ColorPalette::new();
// Returns Color::White since "nonexistent" is not in the palette
let color = palette.get_or_default("nonexistent");Source§impl ColorPalette
Method to add a color to the palette.
impl ColorPalette
Method to add a color to the palette.
Sourcepub fn add_color(&mut self, name: &str, color: Color)
Available on crate feature markdown-preview only.
pub fn add_color(&mut self, name: &str, color: Color)
markdown-preview only.Add a color to the palette.
§Arguments
name- The name to associate with the color (e.g., “primary”, “error”)color- The ratatuiColorvalue
§Example
use ratatui_toolkit::markdown_widget::extensions::theme::ColorPalette;
use ratatui::style::Color;
let mut palette = ColorPalette::new();
palette.add_color("blue", Color::Rgb(97, 175, 239));Trait Implementations§
Source§impl Clone for ColorPalette
impl Clone for ColorPalette
Source§fn clone(&self) -> ColorPalette
fn clone(&self) -> ColorPalette
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ColorPalette
impl Debug for ColorPalette
Source§impl Default for ColorPalette
impl Default for ColorPalette
Source§fn default() -> ColorPalette
fn default() -> ColorPalette
Auto Trait Implementations§
impl Freeze for ColorPalette
impl RefUnwindSafe for ColorPalette
impl Send for ColorPalette
impl Sync for ColorPalette
impl Unpin for ColorPalette
impl UnsafeUnpin for ColorPalette
impl UnwindSafe for ColorPalette
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more