Struct kas::layout::AlignHints
source · pub struct AlignHints {
pub horiz: Option<Align>,
pub vert: Option<Align>,
}
Expand description
Partial alignment information provided by the parent
Hints are optional. Widgets are expected to substitute default values where hints are not provided.
The AlignHints::complete
method is provided to conveniently apply
alignment to a widget within crate::Layout::set_rect
:
let pref_size = Size(30, 20); // usually size comes from SizeMgr
let rect = align
.complete(Align::Stretch, Align::Center)
.aligned_rect(pref_size, rect);
// self.core.rect = rect;
Fields§
§horiz: Option<Align>
§vert: Option<Align>
Implementations§
source§impl AlignHints
impl AlignHints
sourcepub const NONE: AlignHints = AlignHints::new(None, None)
pub const NONE: AlignHints = AlignHints::new(None, None)
No hints
sourcepub const CENTER: AlignHints = AlignHints::new(Some(Align::Center), Some(Align::Center))
pub const CENTER: AlignHints = AlignHints::new(Some(Align::Center), Some(Align::Center))
Center on both axes
sourcepub const STRETCH: AlignHints = AlignHints::new(Some(Align::Stretch), Some(Align::Stretch))
pub const STRETCH: AlignHints = AlignHints::new(Some(Align::Stretch), Some(Align::Stretch))
Stretch on both axes
sourcepub const fn new(horiz: Option<Align>, vert: Option<Align>) -> AlignHints
pub const fn new(horiz: Option<Align>, vert: Option<Align>) -> AlignHints
Construct with optional horiz. and vert. alignment
sourcepub fn extract(self, dir: impl Directional) -> Option<Align>
pub fn extract(self, dir: impl Directional) -> Option<Align>
Take horizontal/vertical component
sourcepub fn set_component<D>(&mut self, dir: D, align: Option<Align>)where
D: Directional,
pub fn set_component<D>(&mut self, dir: D, align: Option<Align>)where D: Directional,
Set one component of self, based on a direction
sourcepub fn combine(self, rhs: AlignHints) -> AlignHints
pub fn combine(self, rhs: AlignHints) -> AlignHints
Combine two hints (first takes priority)
Trait Implementations§
source§impl Clone for AlignHints
impl Clone for AlignHints
source§fn clone(&self) -> AlignHints
fn clone(&self) -> AlignHints
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for AlignHints
impl Debug for AlignHints
source§impl Default for AlignHints
impl Default for AlignHints
source§fn default() -> AlignHints
fn default() -> AlignHints
Returns the “default value” for a type. Read more
source§impl Hash for AlignHints
impl Hash for AlignHints
source§impl PartialEq<AlignHints> for AlignHints
impl PartialEq<AlignHints> for AlignHints
source§fn eq(&self, other: &AlignHints) -> bool
fn eq(&self, other: &AlignHints) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for AlignHints
impl Eq for AlignHints
impl StructuralEq for AlignHints
impl StructuralPartialEq for AlignHints
Auto Trait Implementations§
impl RefUnwindSafe for AlignHints
impl Send for AlignHints
impl Sync for AlignHints
impl Unpin for AlignHints
impl UnwindSafe for AlignHints
Blanket Implementations§
§impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
impl<S, T> CastApprox<T> for Swhere T: ConvApprox<S>,
§fn try_cast_approx(self) -> Result<T, Error>
fn try_cast_approx(self) -> Result<T, Error>
§fn cast_approx(self) -> T
fn cast_approx(self) -> T
§impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
impl<S, T> CastFloat<T> for Swhere T: ConvFloat<S>,
§fn cast_trunc(self) -> T
fn cast_trunc(self) -> T
Cast to integer, truncating Read more
§fn cast_nearest(self) -> T
fn cast_nearest(self) -> T
Cast to the nearest integer Read more
§fn cast_floor(self) -> T
fn cast_floor(self) -> T
Cast the floor to an integer Read more
§fn try_cast_trunc(self) -> Result<T, Error>
fn try_cast_trunc(self) -> Result<T, Error>
Try converting to integer with truncation Read more
§fn try_cast_nearest(self) -> Result<T, Error>
fn try_cast_nearest(self) -> Result<T, Error>
Try converting to the nearest integer Read more
§fn try_cast_floor(self) -> Result<T, Error>
fn try_cast_floor(self) -> Result<T, Error>
Try converting the floor to an integer Read more
§fn try_cast_ceil(self) -> Result<T, Error>
fn try_cast_ceil(self) -> Result<T, Error>
Try convert the ceiling to an integer Read more
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IsDefault for Twhere
T: Default + PartialEq<T> + Copy,
impl<T> IsDefault for Twhere T: Default + PartialEq<T> + Copy,
§fn is_default(&self) -> bool
fn is_default(&self) -> bool
Checks that type has a default value.
§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<R, P> ReadPrimitive<R> for Pwhere
R: Read + ReadEndian<P>,
P: Default,
impl<R, P> ReadPrimitive<R> for Pwhere R: Read + ReadEndian<P>, P: Default,
source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian()
.