public YogaStyle() { Direction = YogaDirection.Inherit; FlexDirection = YogaFlexDirection.Column; JustifyContent = YogaJustify.FlexStart; AlignContent = YogaAlign.FlexStart; AlignItems = YogaAlign.Stretch; AlignSelf = YogaAlign.Auto; PositionType = YogaPositionType.Relative; FlexWrap = YogaWrap.NoWrap; Overflow = YogaOverflow.Visible; Display = YogaDisplay.Flex; Flex = null; FlexGrow = null; FlexShrink = null; FlexBasis = YogaValue.Auto; Margin = YogaArray.From(DefaultEdgeValuesUnit); Position = YogaArray.From(DefaultEdgeValuesUnit); Padding = YogaArray.From(DefaultEdgeValuesUnit); Border = YogaArray.From(DefaultEdgeValuesUnit); Dimensions = YogaArray.From(DefaultDimensionValuesAutoUnit); MinDimensions = YogaArray.From(DefaultDimensionValuesUnit); MaxDimensions = YogaArray.From(DefaultDimensionValuesUnit); AspectRatio = null; }
// Yoga specific properties, not compatible with flexbox specification public static bool operator ==(YogaStyle self, YogaStyle style) { if (object.ReferenceEquals(self, style)) { return(true); } if (object.ReferenceEquals(self, null) || object.ReferenceEquals(style, null)) { return(false); } var areNonFloatValuesEqual = self.Direction == style.Direction && self.FlexDirection == style.FlexDirection && self.JustifyContent == style.JustifyContent && self.AlignContent == style.AlignContent && self.AlignItems == style.AlignItems && self.AlignSelf == style.AlignSelf && self.PositionType == style.PositionType && self.FlexWrap == style.FlexWrap && self.Overflow == style.Overflow && self.Display == style.Display && self.FlexBasis.Equals(style.FlexBasis) && YogaArray.Equal(self.Margin, style.Margin) && YogaArray.Equal(self.Position, style.Position) && YogaArray.Equal(self.Padding, style.Padding) && YogaArray.Equal(self.Border, style.Border) && YogaArray.Equal(self.Dimensions, style.Dimensions) && YogaArray.Equal(self.MinDimensions, style.MinDimensions) && YogaArray.Equal(self.MaxDimensions, style.MaxDimensions); areNonFloatValuesEqual = areNonFloatValuesEqual && self.Flex == style.Flex; areNonFloatValuesEqual = areNonFloatValuesEqual && self.FlexGrow == style.FlexGrow; areNonFloatValuesEqual = areNonFloatValuesEqual && self.FlexShrink == style.FlexShrink; areNonFloatValuesEqual = areNonFloatValuesEqual && self.AspectRatio == style.AspectRatio; return(areNonFloatValuesEqual); }