- Fixed a panic in
DistributedFill
- Updated macros
LinearLayoutnow implementsViewGroupLinearLayout::inner{_mut}LinearLayout::arrange_view_groupOrientation::compute_offsetViewGroup::bounds_ofViewGroup::translate_child
Orientation::placenow returns the bounds of the placed View.
ViewGroupmacro can now be used on enumsViewGroupmacro now supports empty enum variants and unit structsLinearLayoutcan now be used in macro-generated view groups
embedded-layoutno longer panicks when accessing an out-of-bounds view in aViewGroup- Fixed aligning to a 0-sized reference object
- Update
embedded-layout-macroscrate dependency - Re-export the
ViewGroupderive macro
- (breaking) Update to
embedded-graphics0.8 - (breaking) Bump Minimum Supported Rust Version (MSRV) to 1.61.
- Add
chain!macro to simplify working with object chains - Include object chain types in
prelude View::translate_mutderive(ViewGroup)to easily implmenet ViewGroup on a structure with named fields.view_group::Viewswhich can wrap a slice of View objects into a ViewGroup.LinearLayout::into_inner()LinearLayoutnow has a position.
- breaking Update to
embedded-graphics0.7 - breaking Changed
ViewGroupto a trait. Layouts now operate on objects that implementViewGroup. - breaking LinearLayout now requires a view in their constructors.
- breaking Changed
View::translateto take ownership and return ownership instead of working with references - Changed
Linkto be public. Replaced privateGuardwith publicChainwhich now wraps an object. - breaking Empty object chains are no longer possible.
- breaking Renamed
ChainElement::count()toChainElement::len()for consistency.
- Removed the
ChainElementtrait fromprelude. - Removed
embedded-graphicstypes fromprelude. - Removed most methods of
RectExt. - Removed
DisplayAreaextension trait.
ElementSpacingforLinearLayout: distribute views in a given space or place them at a set distance from one another- Example that shows how to create custom views (
examples/custom_view.rs)
- The
alignmodule is now public - Secondary alignment implementations now require specifying the alignment of the first view
- Changed what is re-exported from the
embedded-graphicsprelude. This reduces function name collisions - breaking: Renamed
layout_direction::LayoutDirectiontoorientation::Orientation - breaking: Renamed
layout_operation::LayoutOperationtolayout_element::LayoutElement - breaking:
ViewLinkhas been renamed toLinkandChainTerminatortoGuard
- Fixed an issue with cascading alignments in
LinearLayout
ViewtraitViewGroupstruct to allow working with multiple viewsLinearLayoutto arrangeViews sequentially along the horizontal or vertical axis
- breaking: Change API to work with a reference to the reference box
- Initial release
- New alignments:
TopToBottom,BottomToTop,LeftToRight,RightToLeft - New method:
align_to_mutto apply an alignment to a reference
- Usability improvement: alignment mode objects can now be passed by value
- Initial release