Moved out logic to calculate size consumed on a line into seperate function
Summary: Moved out logic to calculate size consumed on a line into seperate function Reviewed By: emilsjolander Differential Revision: D6797640 fbshipit-source-id: ad9757e7d603c0ce57f452b1e5c404037605bed9
This commit is contained in:
committed by
Facebook Github Bot
parent
63be3ff84c
commit
27d2ad198e
35
yoga/Utils.h
35
yoga/Utils.h
@@ -11,6 +11,41 @@
|
||||
#include "YGNode.h"
|
||||
#include "Yoga-internal.h"
|
||||
|
||||
// This struct is an helper model to hold the data for step 4 of flexbox
|
||||
// algo, which is collecting the flex items in a line.
|
||||
//
|
||||
// - itemsOnLine: Number of items which can fit in a line considering the
|
||||
// available Inner dimension, the flex items computed flexbasis and their
|
||||
// margin. It may be different than the difference between start and end
|
||||
// indicates because we skip over absolute-positioned items.
|
||||
//
|
||||
// - sizeConsumedOnCurrentLine: It is accumulation of the dimensions and margin
|
||||
// of all the children on the current line. This will be used in order to either
|
||||
// set the dimensions of the node if none already exist or to compute the
|
||||
// remaining space left for the flexible children.
|
||||
//
|
||||
// - totalFlexGrowFactors: total flex grow factors of flex items which are to be
|
||||
// layed in the current line
|
||||
//
|
||||
// - totalFlexShrinkFactors: total flex shrink factors of flex items which are
|
||||
// to be layed in the current line
|
||||
//
|
||||
// - endOfLineIndex: Its the end index of the last flex item which was examined
|
||||
// and it may or may not be part of the current line(as it may be absolutely
|
||||
// positioned or inculding it may have caused to overshoot availableInnerDim)
|
||||
//
|
||||
// - relativeChildren: Maintain a vector of the child nodes that can shrink
|
||||
// and/or grow.
|
||||
|
||||
struct YGCollectFlexItemsRowValues {
|
||||
uint32_t itemsOnLine;
|
||||
float sizeConsumedOnCurrentLine;
|
||||
float totalFlexGrowFactors;
|
||||
float totalFlexShrinkScaledFactors;
|
||||
float endOfLineIndex;
|
||||
std::vector<YGNodeRef> relativeChildren;
|
||||
};
|
||||
|
||||
bool YGValueEqual(const YGValue a, const YGValue b);
|
||||
|
||||
YGFlexDirection YGFlexDirectionCross(
|
||||
|
Reference in New Issue
Block a user