LeviLamina
Loading...
Searching...
No Matches
LayoutRule.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/AnchorPoint.h"
7#include "mc/client/gui/OrientationType.h"
8#include "mc/client/gui/screens/LayoutRuleTermType.h"
9#include "mc/client/gui/screens/LayoutVariableType.h"
10
11// auto generated forward declare list
12// clang-format off
13class LayoutRuleTerm;
14class UIControl;
15class VariableRef;
16namespace ui { struct AxisOffset; }
17// clang-format on
18
19class LayoutRule {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 24, ::std::vector<::LayoutRuleTerm>> mTerms;
24 // NOLINTEND
25
26public:
27 // member functions
28 // NOLINTBEGIN
29 MCAPI void addAnchorTerm(
30 ::UIControl& relativeTo,
31 ::LayoutVariableType type,
32 ::ui::AnchorPoint anchorPoint,
33 float signFactor,
34 ::LayoutRuleTermType termType
35 );
36
37 MCAPI void
38 addAxisOffsetTerms(::UIControl& relativeTo, ::UIControl& control, ::std::vector<::ui::AxisOffset> const& offsets);
39
40 MCAPI void addDependsOnMeEntriesForInvalidation(::VariableRef const& variable, bool checkForDuplicates);
41
42 MCAPI void addDynamicGridItemGridPositionTerm(
43 ::UIControl& parent,
44 ::UIControl& control,
45 ::LayoutVariableType type,
46 ::ui::OrientationType rescalingType,
47 int collectionIndex
48 );
49
50 MCAPI void addFillGridDimensionTerm(
51 ::UIControl& control,
52 ::UIControl& itemTemplate,
53 ::LayoutVariableType dimensionType,
54 ::ui::OrientationType rescalingType
55 );
56
57 MCAPI void addGridItemPositionTerms(
58 ::UIControl& parent,
59 ::UIControl& control,
60 ::LayoutVariableType positionType,
61 ::ui::OrientationType rescalingType
62 );
63
64 MCAPI void addGridItemSizeTerms(::UIControl& parent, ::LayoutVariableType sizeType);
65
66 MCAPI void
67 addGridSizeTerms(::UIControl& control, ::UIControl& gridItemTemplate, ::LayoutVariableType sizeType, float scale);
68
69 MCAPI void addOffsetDeltaTerm(::UIControl& control, ::LayoutVariableType type);
70
71 MCAPI void addRescalingGridDimensionTerm(
72 ::UIControl& control,
73 ::UIControl& itemTemplate,
74 ::LayoutVariableType dimensionType,
75 ::ui::OrientationType rescalingType
76 );
77
78 MCAPI void addStackPanelItemPositionTerms(
79 ::UIControl& priorSibling,
80 ::UIControl& control,
81 ::LayoutVariableType positionType,
82 ::ui::OrientationType orientation
83 );
84
85 MCAPI void
86 addStackPanelItemRemainderSizeTerms(::UIControl& parent, ::UIControl& control, ::LayoutVariableType sizeType);
87
88 MCAPI void addStackPanelVisibilityTerm(::UIControl& control, ::LayoutVariableType sizeType);
89
90 MCAPI bool isSatisfiable() const;
91
92 MCAPI void removeDependsOnMeEntries();
93
94 MCAPI ::std::string toString(::UIControl& control) const;
95 // NOLINTEND
96};
Definition LayoutRuleTerm.h:5
Definition LayoutRule.h:5
Definition UIControl.h:5
Definition VariableRef.h:5
Definition AxisOffset.h:7