Struct i_slint_core::items::Path
source · [−]#[repr(C)]pub struct Path {Show 15 fields
pub x: Property<Coord>,
pub y: Property<Coord>,
pub width: Property<Coord>,
pub height: Property<Coord>,
pub elements: Property<PathData>,
pub fill: Property<Brush>,
pub fill_rule: Property<FillRule>,
pub stroke: Property<Brush>,
pub stroke_width: Property<Coord>,
pub viewbox_x: Property<f32>,
pub viewbox_y: Property<f32>,
pub viewbox_width: Property<f32>,
pub viewbox_height: Property<f32>,
pub clip: Property<bool>,
pub cached_rendering_data: CachedRenderingData,
}
Expand description
The implementation of the Path
element
Fields
x: Property<Coord>
y: Property<Coord>
width: Property<Coord>
height: Property<Coord>
elements: Property<PathData>
fill: Property<Brush>
fill_rule: Property<FillRule>
stroke: Property<Brush>
stroke_width: Property<Coord>
viewbox_x: Property<f32>
viewbox_y: Property<f32>
viewbox_width: Property<f32>
viewbox_height: Property<f32>
clip: Property<bool>
cached_rendering_data: CachedRenderingData
Implementations
sourceimpl Path
impl Path
sourcepub const FIELD_OFFSETS: PathFieldsOffsets = {
trait PathMustNotImplDrop { }
impl PathMustNotImplDrop for T where T: ::core::ops::Drop { }
impl PathMustNotImplDrop for Path { }
struct __MustNotImplUnpin<'__dummy_lifetime>(Property,
Property, Property, Property,
Property, Property, Property,
Property, Property, Property, Property,
Property, Property, Property, CachedRenderingData,
::core::marker::PhantomData<&'__dummy_lifetime ()>);
impl <'__dummy_lifetime> Unpin for Path where
__MustNotImplUnpin: Unpin {
}
let mut len = 0usize;
PathFieldsOffsets{x:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
y:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
width:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
height:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
elements:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up +
::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
fill:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
fill_rule:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up +
::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
stroke:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
stroke_width:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_x:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_y:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_width:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_height:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
clip:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
cached_rendering_data:
{
let align = ::core::mem::align_of::();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up +
::core::mem::size_of::();
unsafe {
const_field_offset::FieldOffset::new_from_offset_pinned(len_rounded_up)
}
},}
}
pub const FIELD_OFFSETS: PathFieldsOffsets = {
trait PathMustNotImplDrop { }
impl PathMustNotImplDrop for T where T: ::core::ops::Drop { }
impl PathMustNotImplDrop for Path { }
struct __MustNotImplUnpin<'__dummy_lifetime>(Property,
Property, Property, Property,
Property, Property, Property,
Property, Property, Property, Property,
Property, Property, Property, CachedRenderingData,
::core::marker::PhantomData<&'__dummy_lifetime ()>);
impl <'__dummy_lifetime> Unpin for Path where
__MustNotImplUnpin: Unpin {
}
let mut len = 0usize;
PathFieldsOffsets{x:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
y:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
width:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
height:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
elements:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up +
::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
fill:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
fill_rule:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up +
::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
stroke:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
stroke_width:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_x:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_y:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_width:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
viewbox_height:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
clip:
{
let align = ::core::mem::align_of::>();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up + ::core::mem::size_of::>();
unsafe {
const_field_offset::FieldOffset,
_>::new_from_offset_pinned(len_rounded_up)
}
},
cached_rendering_data:
{
let align = ::core::mem::align_of::();
let len_rounded_up =
len.wrapping_add(align).wrapping_sub(1) &
!align.wrapping_sub(1);
len =
len_rounded_up +
::core::mem::size_of::();
unsafe {
const_field_offset::FieldOffset::new_from_offset_pinned(len_rounded_up)
}
},}
}
Return a struct containing the offset of for the fields of this struct
sourceimpl Path
impl Path
pub fn x(self: Pin<&Self>) -> Coord
pub fn y(self: Pin<&Self>) -> Coord
pub fn width(self: Pin<&Self>) -> Coord
pub fn height(self: Pin<&Self>) -> Coord
pub fn elements(self: Pin<&Self>) -> PathData
pub fn fill(self: Pin<&Self>) -> Brush
pub fn fill_rule(self: Pin<&Self>) -> FillRule
pub fn stroke(self: Pin<&Self>) -> Brush
pub fn stroke_width(self: Pin<&Self>) -> Coord
pub fn viewbox_x(self: Pin<&Self>) -> f32
pub fn viewbox_y(self: Pin<&Self>) -> f32
pub fn viewbox_width(self: Pin<&Self>) -> f32
pub fn viewbox_height(self: Pin<&Self>) -> f32
pub fn clip(self: Pin<&Self>) -> bool
Trait Implementations
sourceimpl HasStaticVTable<ItemVTable> for Path
impl HasStaticVTable<ItemVTable> for Path
sourcefn static_vtable() -> &'static ItemVTable
fn static_vtable() -> &'static ItemVTable
Safety: must be a valid VTable for Self
sourceimpl Item for Path
impl Item for Path
sourcefn init(self: Pin<&Self>, _window: &WindowRc)
fn init(self: Pin<&Self>, _window: &WindowRc)
This function is called by the run-time after the memory for the item has been allocated and initialized. It will be called before any user specified bindings are set. Read more
sourcefn geometry(self: Pin<&Self>) -> Rect
fn geometry(self: Pin<&Self>) -> Rect
Returns the geometry of this item (relative to its parent item)
sourcefn layout_info(
self: Pin<&Self>,
_orientation: Orientation,
_window: &WindowRc
) -> LayoutInfo
fn layout_info(
self: Pin<&Self>,
_orientation: Orientation,
_window: &WindowRc
) -> LayoutInfo
We would need max/min/preferred size, and all layout info
sourcefn input_event_filter_before_children(
self: Pin<&Self>,
event: MouseEvent,
_window: &WindowRc,
_self_rc: &ItemRc
) -> InputEventFilterResult
fn input_event_filter_before_children(
self: Pin<&Self>,
event: MouseEvent,
_window: &WindowRc,
_self_rc: &ItemRc
) -> InputEventFilterResult
Event handler for mouse and touch event. This function is called before being called on children.
Then, depending on the return value, it is called for the children, and their children, then
Self::input_event
is called on the children, and finally Self::input_event
is called
on this item again. Read more
sourcefn input_event(
self: Pin<&Self>,
_: MouseEvent,
_window: &WindowRc,
_self_rc: &ItemRc
) -> InputEventResult
fn input_event(
self: Pin<&Self>,
_: MouseEvent,
_window: &WindowRc,
_self_rc: &ItemRc
) -> InputEventResult
Handle input event for mouse and touch event
fn key_event(
self: Pin<&Self>,
_: &KeyEvent,
_window: &WindowRc
) -> KeyEventResult
fn focus_event(
self: Pin<&Self>,
_: &FocusEvent,
_window: &WindowRc
) -> FocusEventResult
fn render(
self: Pin<&Self>,
backend: &mut &'_ mut dyn ItemRenderer,
_self_rc: &ItemRc
) -> RenderingResult
sourceimpl ItemConsts for Path
impl ItemConsts for Path
sourceconst cached_rendering_data_offset: FieldOffset<Path, CachedRenderingData> = Path::FIELD_OFFSETS.cached_rendering_data.as_unpinned_projection()
const cached_rendering_data_offset: FieldOffset<Path, CachedRenderingData> = Path::FIELD_OFFSETS.cached_rendering_data.as_unpinned_projection()
offset in bytes from the *const ItemImpl. isize::MAX means None Read more
impl<'__dummy_lifetime> Unpin for Path where
__MustNotImplUnpin<'__dummy_lifetime>: Unpin,
Auto Trait Implementations
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more