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 layoutSome(true)
: default onSome(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
sourceimpl Style
impl Style
sourcepub fn interact(&self, response: &Response) -> &WidgetVisuals
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!
pub fn interact_selectable(
&self,
response: &Response,
selected: bool
) -> WidgetVisuals
sourcepub fn noninteractive(&self) -> &WidgetVisuals
pub fn noninteractive(&self) -> &WidgetVisuals
Style to use for non-interactive widgets.
sourcepub fn text_styles(&self) -> Vec<TextStyle>
pub fn text_styles(&self) -> Vec<TextStyle>
All known text styles.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Style where
Style: Default,
impl<'de> Deserialize<'de> for Style where
Style: Default,
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl PartialEq<Style> for Style
impl PartialEq<Style> for Style
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
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
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more