Skip to main content

Metrics

Struct Metrics 

Source
pub struct Metrics {
Show 16 fields pub control_text: f32, pub chrome_text: f32, pub hint_text: f32, pub radius: f32, pub radius_inner: f32, pub control_pad_x: f32, pub control_pad_y: f32, pub field_pad_x: f32, pub field_pad_y: f32, pub hint_pad_x: f32, pub hint_pad_y: f32, pub menu_pad_x: f32, pub menu_pad_y: f32, pub menu_width: f32, pub menu_bar_h: f32, pub titlebar_h: f32,
}
Expand description

The sizes the stock widgets are built from. Plain data and Copy: a view reads it off ui.metrics() and may keep or change its own copy, and Core::set_metrics makes one the frame’s.

Fields§

§control_text: f32

A stock control’s label: the button’s text size.

§chrome_text: f32

The chrome’s text: a menu row, a menu-bar title, the titlebar’s title.

§hint_text: f32

A tooltip’s text.

§radius: f32

The corner of every stock surface: a button, a field, a menu, a tooltip.

§radius_inner: f32

The corner of a row inside one: a menu row, a menu-bar title.

§control_pad_x: f32

A button’s.

§control_pad_y: f32§field_pad_x: f32

A text field’s.

§field_pad_y: f32§hint_pad_x: f32

A tooltip’s.

§hint_pad_y: f32§menu_pad_x: f32

A menu row’s; a menu-bar title’s is two px shorter, so the bar’s height and not the title’s padding decides the strip.

§menu_pad_y: f32§menu_width: f32

A menu panel’s width.

§menu_bar_h: f32

The drawn menu bar’s height.

§titlebar_h: f32

The titlebar’s height where the strip is the app’s alone: the platform’s caption height (32 on Windows, 34 elsewhere), which Metrics::compact leaves alone. Where the OS keeps controls of its own over the strip — the macOS traffic lights under custom chrome — the strip is as tall as the OS’s titlebar, which the driver measures into env.window.native_controls, and this row is not read (widgets::titlebar_height).

Implementations§

Source§

impl Metrics

Source

pub const fn comfortable() -> Self

The stock set — Default, named.

Source

pub const fn compact() -> Self

A tighter set for a dense tool — a mux, an inspector, a table of controls: smaller text, shallower padding, sharper corners. The titlebar keeps the platform’s height, since that is the OS’s number and not a density.

Source

pub fn scaled(self, factor: f32) -> Self

Every density multiplied by factor — a density slider, or an OS text-size setting the day one is plumbed. Logical px in, logical px out: env.scale is applied after this by the renderer and is never folded in here. A row the schema marks the platform’s (titlebar_h: the OS’s caption height, which the traffic lights are drawn against) is left alone, as Metrics::compact leaves it — a 1.5 slider drew a 51 px strip beside 34 px buttons.

Trait Implementations§

Source§

impl Clone for Metrics

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Copy for Metrics

Source§

impl Debug for Metrics

Source§

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

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

impl Default for Metrics

Source§

fn default() -> Self

What the widgets have always drawn: the constants widgets.rs carried, restated once.

Source§

impl PartialEq for Metrics

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Metrics

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

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> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

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 T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.