Implement horizontal and vertical alignments for stack layout

This commit is contained in:
Huy Nguyen
2015-11-20 17:50:05 +02:00
parent 50a52e7112
commit 0077c3eec6
11 changed files with 235 additions and 8 deletions

View File

@@ -68,3 +68,63 @@ inline ASStackLayoutAlignItems alignment(ASStackLayoutAlignSelf childAlignment,
return stackAlignment;
}
}
inline ASStackLayoutAlignItems alignment(ASHorizontalAlignment alignment, ASStackLayoutAlignItems defaultAlignment)
{
switch (alignment) {
case ASAlignmentLeft:
return ASStackLayoutAlignItemsStart;
case ASAlignmentMiddle:
return ASStackLayoutAlignItemsCenter;
case ASAlignmentRight:
return ASStackLayoutAlignItemsEnd;
case ASHorizontalAlignmentNone:
default:
return defaultAlignment;
}
}
inline ASStackLayoutAlignItems alignment(ASVerticalAlignment alignment, ASStackLayoutAlignItems defaultAlignment)
{
switch (alignment) {
case ASAlignmentTop:
return ASStackLayoutAlignItemsStart;
case ASAlignmentCenter:
return ASStackLayoutAlignItemsCenter;
case ASAlignmentBottom:
return ASStackLayoutAlignItemsEnd;
case ASVerticalAlignmentNone:
default:
return defaultAlignment;
}
}
inline ASStackLayoutJustifyContent justifyContent(ASHorizontalAlignment alignment, ASStackLayoutJustifyContent defaultJustifyContent)
{
switch (alignment) {
case ASAlignmentLeft:
return ASStackLayoutJustifyContentStart;
case ASAlignmentMiddle:
return ASStackLayoutJustifyContentCenter;
case ASAlignmentRight:
return ASStackLayoutJustifyContentEnd;
case ASHorizontalAlignmentNone:
default:
return defaultJustifyContent;
}
}
inline ASStackLayoutJustifyContent justifyContent(ASVerticalAlignment alignment, ASStackLayoutJustifyContent defaultJustifyContent)
{
switch (alignment) {
case ASAlignmentTop:
return ASStackLayoutJustifyContentStart;
case ASAlignmentCenter:
return ASStackLayoutJustifyContentCenter;
case ASAlignmentBottom:
return ASStackLayoutJustifyContentEnd;
case ASVerticalAlignmentNone:
default:
return defaultJustifyContent;
}
}