pub struct Visuals {Show 35 fields
pub dark_mode: bool,
pub text_alpha_from_coverage: AlphaFromCoverage,
pub override_text_color: Option<Color32>,
pub weak_text_alpha: f32,
pub weak_text_color: Option<Color32>,
pub widgets: Widgets,
pub selection: Selection,
pub hyperlink_color: Color32,
pub faint_bg_color: Color32,
pub extreme_bg_color: Color32,
pub text_edit_bg_color: Option<Color32>,
pub code_bg_color: Color32,
pub warn_fg_color: Color32,
pub error_fg_color: Color32,
pub window_corner_radius: CornerRadius,
pub window_shadow: Shadow,
pub window_fill: Color32,
pub window_stroke: Stroke,
pub window_highlight_topmost: bool,
pub menu_corner_radius: CornerRadius,
pub panel_fill: Color32,
pub popup_shadow: Shadow,
pub resize_corner_size: f32,
pub text_cursor: TextCursorStyle,
pub clip_rect_margin: f32,
pub button_frame: bool,
pub collapsing_header_frame: bool,
pub indent_has_left_vline: bool,
pub striped: bool,
pub slider_trailing_fill: bool,
pub handle_shape: HandleShape,
pub interact_cursor: Option<CursorIcon>,
pub image_loading_spinners: bool,
pub numeric_color_space: NumericColorSpace,
pub disabled_alpha: f32,
}Expand description
Controls the visual style (colors etc) of egui.
You can change the visuals of a Ui with Ui::visuals_mut
and of everything with crate::Context::set_visuals_of.
If you want to change fonts, use crate::Context::set_fonts instead.
Fields§
§dark_mode: boolIf true, the visuals are overall dark with light text. If false, the visuals are overall light with dark text.
NOTE: setting this does very little by itself, this is more to provide a convenient summary of the rest of the settings.
text_alpha_from_coverage: AlphaFromCoverageADVANCED: Controls how we render text.
override_text_color: Option<Color32>Override default text color for all text.
This is great for setting the color of text for any widget.
If text_color is None (default), then the text color will be the same as the
foreground stroke color (WidgetVisuals::fg_stroke)
and will depend on whether or not the widget is being interacted with.
In the future we may instead modulate
the text_color based on whether or not it is interacted with
so that visuals.text_color is always used,
but its alpha may be different based on whether or not
it is disabled, non-interactive, hovered etc.
weak_text_alpha: f32How strong “weak” text is.
Ignored if Self::weak_text_color is set.
weak_text_color: Option<Color32>Color of “weak” text.
If None, the color is Self::text_color
multiplied by Self::weak_text_alpha.
widgets: WidgetsVisual styles of widgets
selection: Selection§hyperlink_color: Color32The color used for crate::Hyperlink,
faint_bg_color: Color32Something just barely different from the background color.
Used for crate::Grid::striped.
extreme_bg_color: Color32Very dark or light color (for corresponding theme). Used as the background of text edits, scroll bars and others things that needs to look different from other interactive stuff.
text_edit_bg_color: Option<Color32>The background color of crate::TextEdit.
Defaults to Self::extreme_bg_color.
code_bg_color: Color32Background color behind code-styled monospaced labels.
warn_fg_color: Color32A good color for warning text (e.g. orange).
error_fg_color: Color32A good color for error text (e.g. red).
window_corner_radius: CornerRadius§window_shadow: Shadow§window_fill: Color32§window_stroke: Stroke§window_highlight_topmost: boolHighlight the topmost window.
panel_fill: Color32Panel background color
popup_shadow: Shadow§resize_corner_size: f32§text_cursor: TextCursorStyleHow the text cursor acts.
clip_rect_margin: f32Allow child widgets to be just on the border and still have a stroke with some thickness
Show a background behind buttons.
collapsing_header_frame: boolShow a background behind collapsing headers.
indent_has_left_vline: boolDraw a vertical line left of indented region, in e.g. crate::CollapsingHeader.
striped: boolWhether or not Grids and Tables should be striped by default (have alternating rows differently colored).
slider_trailing_fill: boolShow trailing color behind the circle of a Slider. Default is OFF.
Enabling this will affect ALL sliders, and can be enabled/disabled per slider with Slider::trailing_fill.
handle_shape: HandleShapeShape of the handle for sliders and similar widgets.
Changing this will affect ALL sliders, and can be enabled/disabled per slider with Slider::handle_shape.
interact_cursor: Option<CursorIcon>Should the cursor change when the user hovers over an interactive/clickable item?
This is consistent with a lot of browser-based applications (vscode, github
all turn your cursor into CursorIcon::PointingHand when a button is
hovered) but it is inconsistent with native UI toolkits.
image_loading_spinners: boolShow a spinner when loading an image.
numeric_color_space: NumericColorSpaceHow to display numeric color values.
disabled_alpha: f32How much to modify the alpha of a disabled widget.
Implementations§
Source§impl Visuals
impl Visuals
pub fn noninteractive(&self) -> &WidgetVisuals
pub fn text_color(&self) -> Color32
pub fn weak_text_color(&self) -> Color32
pub fn strong_text_color(&self) -> Color32
Sourcepub fn text_edit_bg_color(&self) -> Color32
pub fn text_edit_bg_color(&self) -> Color32
The background color of crate::TextEdit.
Sourcepub fn window_fill(&self) -> Color32
pub fn window_fill(&self) -> Color32
Window background color.
pub fn window_stroke(&self) -> Stroke
Sourcepub fn fade_out_to_color(&self) -> Color32
👎Deprecated: Use disabled_alpha(). Fading is now handled by modifying the alpha channel.
pub fn fade_out_to_color(&self) -> Color32
When fading out things, we fade the colors towards this.
Sourcepub fn disabled_alpha(&self) -> f32
pub fn disabled_alpha(&self) -> f32
Disabled widgets have their alpha modified by this.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Visuals
impl<'de> Deserialize<'de> for Visuals
Source§fn 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>,
impl StructuralPartialEq for Visuals
Auto Trait Implementations§
impl Freeze for Visuals
impl RefUnwindSafe for Visuals
impl Send for Visuals
impl Sync for Visuals
impl Unpin for Visuals
impl UnwindSafe for Visuals
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more