Skip to main content

RecordColumn

Struct RecordColumn 

Source
pub struct RecordColumn { /* private fields */ }
Expand description

One stable column in a RecordsTable.

Visible labels need not be unique. Events and row lookup always use the application-supplied column ID.

Implementations§

Source§

impl RecordColumn

Source

pub fn new(id: impl Into<SharedString>, label: impl Into<SharedString>) -> Self

Creates a column with a stable application ID and visible label.

Source

pub fn sortable(self, sortable: bool) -> Self

Enables or disables sorting for the column.

Source

pub fn width(self, width: Pixels) -> Self

Sets the logical column width.

Source

pub fn width_in_rems(self, width: f32) -> Self

Sets the column width in multiples of the reader’s base type size.

The width resolves against the window’s rem at layout time and is resolved again when the reader zooms, so a column sized for its text keeps that proportion; a width set with RecordColumn::width does not. Columns of one table may mix the two, and the later call wins.

Source

pub fn fill(self, share: f32) -> Self

Takes a share of the width left over once every column has the width it asked for.

The width set by RecordColumn::width is a floor rather than a ceiling here: the surplus is added to it, so a column that fills can never collapse and there is no separate minimum to remember. A column with twice the share of another takes twice as much of the surplus.

The moment one column asks, it and its fellow askers divide the surplus and every other column keeps exactly what it asked for - which is how a table gets one exact column beside one that stretches.

let exact = RecordColumn::new("cost", "Unit cost").width(px(120.));
let stretches = RecordColumn::new("notes", "Notes").width(px(180.)).fill(1.);
Source

pub fn alignment(self, alignment: RecordColumnAlignment) -> Self

Sets the column’s horizontal content alignment.

Source

pub fn fixed(self, fixed: bool) -> Self

Pins or unpins the column at the leading edge.

Source

pub fn description(self, description: impl Into<SharedString>) -> Self

Adds supplementary accessible column guidance.

Source

pub fn id(&self) -> &str

Returns the stable application column ID.

Source

pub fn label(&self) -> &str

Returns the visible column label.

Source

pub fn is_sortable(&self) -> bool

Returns whether the column can request sorting.

Source

pub fn configured_width(&self) -> Option<Pixels>

Returns the explicitly configured logical column width, if any.

A width set with RecordColumn::width_in_rems has no pixel value until a window resolves it, so it reads as None here.

Source

pub fn column_alignment(&self) -> RecordColumnAlignment

Returns the horizontal content alignment.

Source

pub fn is_fixed(&self) -> bool

Returns whether the column is pinned to the leading edge.

Source

pub fn accessible_description(&self) -> Option<&str>

Returns supplementary accessible guidance, if supplied.

Trait Implementations§

Source§

impl Clone for RecordColumn

Source§

fn clone(&self) -> RecordColumn

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 Debug for RecordColumn

Source§

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

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

impl PartialEq for RecordColumn

Source§

fn eq(&self, other: &RecordColumn) -> 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 RecordColumn

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
§

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

§

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> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided [Span], returning an Instrumented wrapper.
§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper.
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts 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
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer.
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer.
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer.
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer.
§

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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper.
§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper.