pub(crate) struct GutterRects {
top: Rect,
left: Rect,
table: Rect,
well: Rect,
hbar: Rect,
}Expand description
The measured screen geometry of the grid’s margin gutters and the table they frame, as laid out in the last frame.
The gutters are docked to the grid’s edges, NeXT-style
(docs/reviews/refs/improv-next-workspace-1.0.png): page tiles (each over
its item field) top-left and column tiles top-right, both in the strip along
the table’s top edge; row tiles in the bottom-left strip below the table. Recording the
rects makes that adjacency checkable instead of merely apparent — see
gutters_frame_table.
Fields§
§top: RectThe top strip (pages left, columns right), spanning the table’s top edge.
left: RectThe table’s left edge: a zero-width rect (there is no side gutter).
table: RectThe table (header + cells) the two gutters frame.
well: RectThe bottom strip: row-axis categories.
hbar: RectThe horizontal scroller, inline in the bottom strip right of the row tiles (spec §4.4).
Trait Implementations§
Source§impl Clone for GutterRects
impl Clone for GutterRects
Source§fn clone(&self) -> GutterRects
fn clone(&self) -> GutterRects
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for GutterRects
Source§impl Debug for GutterRects
impl Debug for GutterRects
Source§impl PartialEq for GutterRects
impl PartialEq for GutterRects
impl StructuralPartialEq for GutterRects
Auto Trait Implementations§
impl Freeze for GutterRects
impl RefUnwindSafe for GutterRects
impl Send for GutterRects
impl Sync for GutterRects
impl Unpin for GutterRects
impl UnsafeUnpin for GutterRects
impl UnwindSafe for GutterRects
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> Data for Twhere
T: Clone + 'static,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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§impl<T> ProgressEventTimestamp for T
impl<T> ProgressEventTimestamp for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
std::ops::AddAssign, for types that do not implement AddAssign.