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 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);
§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§

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!

Style to use for non-interactive widgets.

All known text styles.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Deserialize this value from the given Serde deserializer. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

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

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more