forked from nodegui/nodegui
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathflexutils.h
More file actions
29 lines (24 loc) · 821 Bytes
/
flexutils.h
File metadata and controls
29 lines (24 loc) · 821 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#pragma once
#include <QLayoutItem>
#include <QWidget>
#include "deps/yoga/YGNode.h"
class FlexNodeContext {
void* _widget;
QLayoutItem* _layoutItem;
public:
bool isSizeControlled;
FlexNodeContext(void* widget);
QWidget* widget();
QLayoutItem* layoutItem();
void setLayoutItem(QLayoutItem* item);
};
namespace flexutils {
YGSize measureQtWidget(YGNodeRef node, float width, YGMeasureMode widthMode,
float height, YGMeasureMode heightMode);
QRect getFlexNodeGeometry(YGNodeRef node);
void setFlexNodeGeometry(YGNodeRef node, const QRect& geometry);
FlexNodeContext* getFlexNodeContext(YGNodeRef node);
bool isFlexNodeSizeControlled(YGNodeRef node);
void configureFlexNode(QWidget* widget, YGNodeRef node,
bool isLeafNode = false);
} // namespace flexutils