Struct egui::style::Style

source ·
pub struct Style {
    pub override_text_style: Option<TextStyle>,
    pub override_font_id: Option<FontId>,
    pub text_styles: BTreeMap<TextStyle, FontId>,
    pub drag_value_text_style: TextStyle,
    pub wrap: Option<bool>,
    pub spacing: Spacing,
    pub interaction: Interaction,
    pub visuals: Visuals,
    pub animation_time: f32,
    pub debug: DebugOptions,
    pub explanation_tooltips: bool,
}
Expand description

Specifies the look and feel of egui.

You can change the visuals of a Ui with Ui::style_mut and of everything with crate::Context::set_style.

If you want to change fonts, use crate::Context::set_fonts instead.

Fields§

§override_text_style: Option<TextStyle>

If set this will change the default TextStyle for all widgets.

On most widgets you can also set an explicit text style, which will take precedence over this.

§override_font_id: Option<FontId>

If set this will change the font family and size for all widgets.

On most widgets you can also set an explicit text style, which will take precedence over this.

§text_styles: BTreeMap<TextStyle, FontId>

The FontFamily and size you want to use for a specific TextStyle.

The most convenient way to look something up in this is to use TextStyle::resolve.

If you would like to overwrite app text_styles

use egui::FontFamily::Proportional;
use egui::FontId;
use egui::TextStyle::*;

// Get current context style
let mut style = (*ctx.style()).clone();

// Redefine text_styles
style.text_styles = [
  (Heading, FontId::new(30.0, Proportional)),
  (Name("Heading2".into()), FontId::new(25.0, Proportional)),
  (Name("Context".into()), FontId::new(23.0, Proportional)),
  (Body, FontId::new(18.0, Proportional)),
  (Monospace, FontId::new(14.0, Proportional)),
  (Button, FontId::new(14.0, Proportional)),
  (Small, FontId::new(10.0, Proportional)),
].into();

// Mutate global style with above changes
ctx.set_style(style);
§drag_value_text_style: TextStyle

The style to use for DragValue text.

§wrap: Option<bool>

If set, labels buttons wtc will use this to determine whether or not to wrap the text at the right edge of the Ui they are in. By default this is None.

  • None: follow layout
  • Some(true): default on
  • Some(false): default off
§spacing: Spacing

Sizes and distances between widgets

§interaction: Interaction

How and when interaction happens.

§visuals: Visuals

Colors etc.

§animation_time: f32

How many seconds a typical animation should last.

§debug: DebugOptions

Options to help debug why egui behaves strangely.

§explanation_tooltips: bool

Show tooltips explaining DragValue:s etc when hovered.

This only affects a few egui widgets.

Implementations§

source§

impl Style

source

pub fn interact(&self, response: &Response) -> &WidgetVisuals

Use this style for interactive things. Note that you must already have a response, i.e. you must allocate space and interact BEFORE painting the widget!

source

pub fn interact_selectable(
&self,
response: &Response,
selected: bool
) -> WidgetVisuals

source

pub fn noninteractive(&self) -> &WidgetVisuals

Style to use for non-interactive widgets.

source

pub fn text_styles(&self) -> Vec<TextStyle>

All known text styles.

source§

impl Style

source

pub fn ui(&mut self, ui: &mut Ui)

Trait Implementations§

source§

impl Clone for Style

source§

fn clone(&self) -> Style

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl Debug for Style

source§

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

Formats the value using the given formatter. Read more
source§

impl Default for Style

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for Stylewhere
Style: Default,

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl PartialEq<Style> for Style

source§

fn eq(&self, other: &Style) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Style

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
__S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl StructuralPartialEq for Style

Auto Trait Implementations§

§

impl RefUnwindSafe for Style

§

impl Send for Style

§

impl Sync for Style

§

impl Unpin for Style

§

impl UnwindSafe for Style

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

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

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T> ToOwned for Twhere
T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

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

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

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

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,

source§

impl<T> SerializableAny for Twhere
T: 'static + Any + Clone + Serialize + for<'a> Deserialize<'a> + Send + Sync,