15 public std::enable_shared_from_this<XUIVScrollView>
26 std::shared_ptr<XUIVScrollView> AsShared() {
return std::enable_shared_from_this<XUIVScrollView>::shared_from_this(); }
38 static constexpr ETypeID TypeID = ETypeID::VScrollView;
39 using Ptr = std::shared_ptr<XUIVScrollView>;
41 XUIVScrollView(CP_SDK_PRIV_TAG_ARG(),
const std::vector<std::shared_ptr<IXUIElement>>& p_Childs)
44 XUIVScrollView(CP_SDK_PRIV_TAG_ARG(), std::u16string_view p_Name,
const std::vector<std::shared_ptr<IXUIElement>>& p_Childs)
52 static std::vector<std::shared_ptr<IXUIElement>> s_Empty(0);
53 return std::make_shared<XUIVScrollView>(CP_SDK_PRIV_TAG_VAL(), s_Empty);
57 static Ptr
Make(
const std::vector<std::shared_ptr<IXUIElement>>& p_Childs)
59 return std::make_shared<XUIVScrollView>(CP_SDK_PRIV_TAG_VAL(), u
"XUIVScrollView", p_Childs);
64 static Ptr
Make(std::u16string_view p_Name,
const std::vector<std::shared_ptr<IXUIElement>>& p_Childs)
66 return std::make_shared<XUIVScrollView>(CP_SDK_PRIV_TAG_VAL(), p_Name, p_Childs);
72 virtual void BuildUI(_u::Transform* p_Parent)
override
78 try { m_OnReady(m_Element.Ptr()); m_OnReady.Clear(); }
79 catch (
const std::exception& l_Exception)
91 if (m_Element) p_Functor(m_Element.Ptr());
92 else m_OnReady += p_Functor;
99 *p_Target = std::enable_shared_from_this<XUIVScrollView>::shared_from_this();