ChatPlexSDK-BS 1.0.1-v6.2.0
C++ ChatPlex BeatSaber SDK
All Classes Namespaces Functions Variables Typedefs Enumerations Concepts
ModMenu.hpp
1#pragma once
2
3#include "Components/CFloatingPanel.hpp"
4#include "Views/ModMenuView.hpp"
5#include "ModButton.hpp"
6#include "UIIl2cpp.hpp"
7
8#include <UnityEngine/MonoBehaviour.hpp>
9
10namespace CP_SDK::UI {
11
12 namespace _u
13 {
14 using namespace UnityEngine;
15 }
16 namespace _v
17 {
18 using namespace CP_SDK::Utils;
19 }
20
22 class ModMenu : public _u::MonoBehaviour
23 {
24 CP_SDK_IL2CPP_INHERIT("CP_SDK.UI", ModMenu, _u::MonoBehaviour);
25 CP_SDK_IL2CPP_DECLARE_CTOR(ModMenu);
26 CP_SDK_IL2CPP_DECLARE_DTOR_MONOBEHAVIOUR(ModMenu);
27
28 static ModMenu* m_Instance;
29 static std::vector<ModButton::Ptr> m_ModButtons;
30
31 private:
32 _v::MonoPtr<_u::Transform> m_ScreenContainer;
35
36 public:
37 static ModMenu* Instance();
38 static const std::vector<ModButton::Ptr>& ModButtons();
39
40 static _v::Event<> OnCreated;
41 static _v::Event<const ModButton::Ptr&> OnModButtonRegistered;
42 static _v::Event<const ModButton::Ptr&> OnModButtonChanged;
43
44 public:
45 UIFieldRefDel<_u::Transform> ScreenContainer;
47
48 public:
50 static void Create();
52 static void Destroy();
55 static void Register(const ModButton::Ptr& p_Button);
58 static void FireOnModButtonChanged(const ModButton::Ptr& p_Button);
59
60 public:
62 void Present();
64 void Dismiss();
65
66 private:
68 void Init();
69
70 };
71
72}
73
74CP_SDK_IL2CPP_INHERIT_HELPERS(CP_SDK::UI::ModMenu);
static void FireOnModButtonChanged(const ModButton::Ptr &p_Button)
Fire on changed.
static void Create()
Create the screen system.
static void Register(const ModButton::Ptr &p_Button)
Register a mod button.
void Present()
Present the screen system.
static void Destroy()
Destroy.
void Dismiss()
Dismiss the screen system.
Delegate helper class.
Definition Delegate.hpp:123
Event class helper.
Definition Event.hpp:100
User interface components, views, flow coordinator, builders and factories.
Various platform utils like Delegate/Action/Function/Event system.
Definition Delegate.hpp:8