3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/UiExpression.h"
7#include "mc/client/gui/controls/BindingCondition.h"
8#include "mc/client/gui/controls/BindingType.h"
9#include "mc/client/gui/controls/UIComponent.h"
29 ::ll::TypedStorage<4, 4, ::BindingType> bindingType;
30 ::ll::TypedStorage<4, 4, ::BindingCondition> bindingCondition;
31 ::ll::TypedStorage<8, 32, ::std::string> bindingName;
32 ::ll::TypedStorage<8, 32, ::UiExpression> bindingExpression;
33 ::ll::TypedStorage<8, 32, ::std::string> bindingNameOverride;
34 ::ll::TypedStorage<8, 32, ::std::string> collectionName;
35 ::ll::TypedStorage<8, 32, ::std::string> collectionPrefix;
36 ::ll::TypedStorage<8, 32, ::UiExpression> viewBindingSourcePropertyName;
37 ::ll::TypedStorage<8, 32, ::std::string> viewBindingTargetPropertyName;
38 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::UIControl>> viewBindingSourceControl;
39 ::ll::TypedStorage<4, 4, uint> collectionNameHash;
40 ::ll::TypedStorage<4, 4, uint> bindingNameHash;
41 ::ll::TypedStorage<4, 4, int> collectionIndex;
42 ::ll::TypedStorage<1, 1, bool> alreadyBoundOnce;
43 ::ll::TypedStorage<1, 1, bool> visible;
48 DataBinding& operator=(DataBinding
const&);
54 MCAPI DataBinding(::DataBindingComponent::DataBinding
const&);
56 MCAPI DataBinding(::DataBindingComponent::DataBinding&&);
64 MCAPI
void* $ctor(::DataBindingComponent::DataBinding
const&);
66 MCAPI
void* $ctor(::DataBindingComponent::DataBinding&&);
79 ::ll::TypedStorage<8, 24, ::std::vector<::DataBindingComponent::DataBinding>> mBindings;
80 ::ll::TypedStorage<8, 24, ::std::vector<::DataBindingComponent::DataBinding>> mPriorityBindings;
81 ::ll::TypedStorage<8, 24, ::std::vector<::DataBindingComponent::DataBinding>> mAlwaysBindings;
82 ::ll::TypedStorage<1, 1, bool> mDirty;
88 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner)
const ;
90 virtual void reset() ;
92 virtual ~DataBindingComponent() ;
98 MCAPI
void _addBindings(
99 ::BindingType bindingType,
100 ::std::string
const& collectionName,
101 ::UiExpression& bindingExpression,
102 ::std::string
const& bindingNameOverride,
103 ::BindingCondition bindingCondition
107 _bind(::ScreenController& controller,
bool visible, ::std::vector<::DataBindingComponent::DataBinding>& bindings);
110 _updateCustomComponentsPostBinding(::std::string_view propertyName, ::UIControl& owner, ::UiExpression expression);
112 MCAPI
void addCollectionDetailsBinding(
113 ::std::string
const& collectionName,
114 ::std::string
const& collectionPrefix,
115 ::BindingCondition bindingCondition
118 MCAPI
void addViewBinding(
119 ::std::shared_ptr<::UIControl>& sourceControl,
120 ::UiExpression sourcePropertyName,
121 ::std::string
const& targetPropertyName
134 MCAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner)
const;
Definition DataBindingComponent.h:5
static MCAPI void ** $vftable()
Definition ScreenController.h:5
Definition UIComponent.h:5
Definition DataBindingComponent.h:13