Implement method bindings for gap/row-gap/column-gap

Summary:
This adds method bindings for `YGNodeStyleSetGap` and `YGNodeStyleGetGap`.

Changelog:
[Genral][Added] - Implement method bindings for yoga gap/row-gap/column-gap

Reviewed By: yungsters

Differential Revision: D39922411

fbshipit-source-id: 6cbb4d352203d2ec92df162c3f2f2efd02bd9568
This commit is contained in:
Nick Gerleman
2022-10-13 08:18:49 -07:00
committed by Facebook GitHub Bot
parent 582533dbc6
commit f992e63ac5
13 changed files with 111 additions and 1 deletions

View File

@@ -232,6 +232,10 @@ void Node::setIsReferenceBaseline(bool isReferenceBaseline) {
YGNodeSetIsReferenceBaseline(m_node, isReferenceBaseline);
}
void Node::setGap(int gutter, double gapLength) {
YGNodeStyleSetGap(m_node, static_cast<YGGutter>(gutter), gapLength);
}
int Node::getPositionType(void) const {
return YGNodeStyleGetPositionType(m_node);
}
@@ -327,6 +331,11 @@ Value Node::getPadding(int edge) const {
YGNodeStyleGetPadding(m_node, static_cast<YGEdge>(edge)));
}
Value Node::getGap(int gutter, ) {
return Value::fromYGValue(
YGNodeStyleGetGap(m_node, static_cast<YGGutter>(gutter)));
}
bool Node::isReferenceBaseline() {
return YGNodeIsReferenceBaseline(m_node);
}

View File

@@ -95,6 +95,8 @@ public: // Style setters
void setPadding(int edge, double padding);
void setPaddingPercent(int edge, double padding);
void setGap(int gutter, double gapLength);
public: // Style getters
int getPositionType(void) const;
Value getPosition(int edge) const;
@@ -130,6 +132,8 @@ public: // Style getters
Value getPadding(int edge) const;
Value getGap(int gutter);
public: // Tree hierarchy mutators
void insertChild(Node* child, unsigned index);
void removeChild(Node* child);

View File

@@ -43,6 +43,7 @@ export type {
Yoga$FlexDirection,
Yoga$Direction,
Yoga$Wrap,
Yoga$Gutter,
Yoga$Edge,
Yoga$Display,
Yoga$Unit,

View File

@@ -15,6 +15,7 @@ import type {
Yoga$Wrap,
Yoga$Align,
Yoga$FlexDirection,
Yoga$Gap,
Yoga$Direction,
Yoga$PositionType,
Yoga$Overflow,
@@ -155,6 +156,7 @@ export type Yoga$Node = {
getFlexWrap(): Yoga$Wrap,
getHeight(): Value,
getJustifyContent(): Yoga$Justify,
getGap(gutter: Yoga$Gutter): Value,
getMargin(edge: Yoga$Edge): Value,
getMaxHeight(): Value,
getMaxWidth(): Value,
@@ -189,6 +191,7 @@ export type Yoga$Node = {
setHeightAuto(): void,
setHeightPercent(height: number): void,
setJustifyContent(justifyContent: Yoga$Justify): void,
setGap(gutter: Yoga$Gutter, gapLength: number): Value,
setMargin(edge: Yoga$Edge, margin: number): void,
setMarginAuto(edge: Yoga$Edge): void,
setMarginPercent(edge: Yoga$Edge, margin: number): void,

View File

@@ -18,6 +18,7 @@ export type {
Yoga$FlexDirection,
Yoga$Direction,
Yoga$Wrap,
Yoga$Gutter,
Yoga$Edge,
Yoga$Display,
Yoga$Unit,

View File

@@ -98,6 +98,8 @@ NBIND_CLASS(Node) {
method(setPadding);
method(setPaddingPercent);
method(setGap);
method(getPositionType);
method(getPosition);
@@ -132,6 +134,8 @@ NBIND_CLASS(Node) {
method(getPadding);
method(getGap);
method(insertChild);
method(removeChild);