cranpose_ui/modifier/
alignment.rs1use super::{Alignment, HorizontalAlignment, Modifier, VerticalAlignment, inspector_metadata};
2use crate::modifier_nodes::AlignmentElement;
3
4impl Modifier {
5 pub fn align(self, alignment: Alignment) -> Self {
6 self.then(
7 Self::with_element(AlignmentElement::box_alignment(alignment)).with_inspector_metadata(
8 inspector_metadata("align", move |info| {
9 info.add_alignment("boxAlignment", alignment);
10 }),
11 ),
12 )
13 }
14
15 #[expect(non_snake_case)]
16 pub fn alignInBox(self, alignment: Alignment) -> Self {
17 self.align(alignment)
18 }
19
20 #[expect(non_snake_case)]
21 pub fn alignInColumn(self, alignment: HorizontalAlignment) -> Self {
22 let modifier = Self::with_element(AlignmentElement::column_alignment(alignment))
23 .with_inspector_metadata(inspector_metadata("alignInColumn", move |info| {
24 info.add_alignment("columnAlignment", alignment);
25 }));
26 self.then(modifier)
27 }
28
29 #[expect(non_snake_case)]
30 pub fn alignInRow(self, alignment: VerticalAlignment) -> Self {
31 let modifier = Self::with_element(AlignmentElement::row_alignment(alignment))
32 .with_inspector_metadata(inspector_metadata("alignInRow", move |info| {
33 info.add_alignment("rowAlignment", alignment);
34 }));
35 self.then(modifier)
36 }
37}