ThemeEngine

Struct ThemeEngine 

Source
pub struct ThemeEngine { /* private fields */ }

Implementations§

Source§

impl ThemeEngine

Source

pub fn new_with_theme(theme: &Theme) -> ThemeEngineResult<Self>

Instantiates a new ThemeEngine and sets the provided theme as the current one. This is useful for restoring a user’s theme preference across sessions.

Source

pub fn new() -> ThemeEngineResult<Self>

Source

pub fn reset_current_theme(&self)

Source

pub fn apply(&self, theme: &Theme)

Source

pub fn apply_no_set(&self, theme: &Theme)

Apply the given theme without setting current_theme to it. This is useful for previewing the theme and subsequently restoring the previously selected one.

Source

pub fn current_theme_name(&self) -> String

Retrieves the current theme name. This is useful for saving the theme preference across sessions.

Source

pub fn theme_chooser_widget(themes: &[Theme]) -> (Box, ListBox)

Creates a theme chooser widget consisting of a gtk::ListBox inside a adw::Clamp inside a gtk::ScrolledWindow. The ListBox is inert and requires connecting its signals to be functional, that’s why it’s returned along with the parent.

The return type is a tuple of the parent gtk::Box, and the child gtk::ListBox so that the consumer can connect to its signals and read its state easily.

Using this method is not recommended. It’s preferable to use Self::theme_chooser_dialog instead.

Source

pub fn theme_chooser_dialog(&self, themes: &[Theme]) -> Dialog

Creates a ready to use adw::Dialog that allows to choose and set a theme. It must be provided with a valid list of themes.

It’s important that the theme names are unique, otherwise if two themes are homonymous only the first one will be used.

There is no inherent mechanism to save the theme preference, which is instead delegated to the consumer.

Trait Implementations§

Source§

impl Clone for ThemeEngine

Source§

fn clone(&self) -> ThemeEngine

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ThemeEngine

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.