Struct comfy_wgpu::egui::Style
source · pub struct Style {
pub override_text_style: Option<TextStyle>,
pub override_font_id: Option<FontId>,
pub text_styles: BTreeMap<TextStyle, FontId, Global>,
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, Global>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: TextStyleThe 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 layoutSome(true): default onSome(false): default off
spacing: SpacingSizes and distances between widgets
interaction: InteractionHow and when interaction happens.
visuals: VisualsColors etc.
animation_time: f32How many seconds a typical animation should last.
debug: DebugOptionsOptions to help debug why egui behaves strangely.
explanation_tooltips: boolShow tooltips explaining DragValue:s etc when hovered.
This only affects a few egui widgets.
Implementations§
source§impl 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, Global>
pub fn text_styles(&self) -> Vec<TextStyle, Global>
All known text styles.