ChatPlexSDK-BS 1.0.1-v6.2.0
C++ ChatPlex BeatSaber SDK
Loading...
Searching...
No Matches
CPOrSButton.hpp
1#pragma once
2
3#include "../CText.hpp"
4
5#include <UnityEngine/Color.hpp>
6#include <UnityEngine/RectTransform.hpp>
7#include <UnityEngine/Sprite.hpp>
8#include <UnityEngine/UI/ContentSizeFitter.hpp>
9#include <UnityEngine/UI/Button.hpp>
10#include <UnityEngine/UI/Image.hpp>
11#include <UnityEngine/UI/LayoutElement.hpp>
12#include <UnityEngine/UI/LayoutGroup.hpp>
13#include <TMPro/TextOverflowModes.hpp>
14
15#include <string>
16
17namespace CP_SDK::UI::Components {
18
19 namespace _u
20 {
21 using namespace TMPro;
22 using namespace UnityEngine;
23 using namespace UnityEngine::UI;
24 }
25 namespace _v
26 {
27 using namespace CP_SDK::Utils;
28 }
29
31 class CPOrSButton : public _u::MonoBehaviour
32 {
33 CP_SDK_IL2CPP_INHERIT("CP_SDK.UI.Components", CPOrSButton, _u::MonoBehaviour);
34 CP_SDK_IL2CPP_DECLARE_CTOR(CPOrSButton);
35 CP_SDK_IL2CPP_DECLARE_DTOR_MONOBEHAVIOUR(CPOrSButton);
36
37 protected:
39 _v::Action<_v::CActionRef<>, bool> m_OnClick;
40
41 public:
47 UIFieldRefDel<_u::Image> BackgroundImageC;
48 UIFieldRefDel<_u::Image> IconImageC;
50
51 public:
55 CPOrSButton* OnClick(_v::CActionRef<> p_Functor, bool p_Add = true);
56
57 public:
59 std::u16string GetText();
60
61 public:
64 CPOrSButton* SetWidth(float p_Width);
67 CPOrSButton* SetHeight(float p_Height);
68
69 public:
72 CPOrSButton* SetBackgroundColor(_u::Color p_Color);
75 CPOrSButton* SetBackgroundSprite(_u::Sprite* p_Sprite);
78 CPOrSButton* SetFontSize(float p_Size);
81 CPOrSButton* SetColor(_u::Color p_Color);
84 CPOrSButton* SetIconSprite(_u::Sprite* p_Sprite);
87 CPOrSButton* SetInteractable(bool p_Interactable);
90 CPOrSButton* SetOverflowMode(_u::TextOverflowModes p_OverflowMode);
93 CPOrSButton* SetText(std::u16string_view p_Text);
96 CPOrSButton* SetTooltip(std::u16string_view p_Tooltip);
97
98 };
99
100}
101
102CP_SDK_IL2CPP_INHERIT_HELPERS(CP_SDK::UI::Components::CPOrSButton);
Primary or Secondary button component.
CPOrSButton * SetBackgroundSprite(_u::Sprite *p_Sprite)
Set background sprite.
CPOrSButton * SetTooltip(std::u16string_view p_Tooltip)
Set tooltip.
CPOrSButton * SetText(std::u16string_view p_Text)
Set button text.
CPOrSButton * SetIconSprite(_u::Sprite *p_Sprite)
Set button icon sprite.
CPOrSButton * SetWidth(float p_Width)
Set preferred width.
CPOrSButton * SetHeight(float p_Height)
Set preferred height.
CPOrSButton * SetBackgroundColor(_u::Color p_Color)
Set background color.
std::u16string GetText()
Get text.
CPOrSButton * SetColor(_u::Color p_Color)
Set theme color.
CPOrSButton * SetFontSize(float p_Size)
Set font size.
CPOrSButton * SetInteractable(bool p_Interactable)
Set button interactable state.
CPOrSButton * OnClick(_v::CActionRef<> p_Functor, bool p_Add=true)
On click event.
CPOrSButton * SetOverflowMode(_u::TextOverflowModes p_OverflowMode)
Set overflow mode.
Generic UI components.
Various platform utils like Delegate/Action/Function/Event system.
Definition Delegate.hpp:8