ChatPlexSDK-BS 1.0.1-v6.2.0
C++ ChatPlex BeatSaber SDK
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Enumerations | Functions
CP_SDK::UI Namespace Reference

User interface components, views, flow coordinator, builders and factories. More...

Namespaces

namespace  Components
 Generic UI components.
 
namespace  Data
 < namespace CP_SDK::UI::Components
 
namespace  DefaultComponents
 Default generic components implementation.
 
namespace  DefaultFactories
 Default components factories.
 
namespace  FactoryInterfaces
 Factories interfaces for generic components implementations.
 
namespace  FlowCoordinators
 Built-in flow coordinators.
 
namespace  Modals
 Built-in modals.
 

Classes

class  FlowCoordinator
 Flow coordinator base class. More...
 
class  IFlowCoordinator
 Flow coordinator interface. More...
 
class  IModal
 Abstract base modal component. More...
 
class  IScreen
 Abstract screen. More...
 
class  IViewController
 IViewController interface. More...
 
class  LoadingProgressBar
 Loading progress bar. More...
 
class  ModButton
 Mod button. More...
 
class  ModMenu
 Mod menu. More...
 
class  ScreenSystem
 ScreenSystem widget. More...
 
class  Tooltip
 Tooltip widget. More...
 
struct  UIFieldDefault
 
struct  UIFieldRefDelExtractor
 
struct  UIFieldRefDelExtractor< Utils::Func< Utils::MonoPtr< t_Type > & > >
 
class  UISystem
 UI system main class. More...
 
class  ValueFormatters
 
class  ViewController
 IViewController interface. More...
 

Typedefs

using KeyboardCustomKey = std::tuple< std::u16string, _v::Delegate< void()>, std::u16string >
 
using KeyboardCustomKeys = std::vector< KeyboardCustomKey >
 
template<class t_Type >
using UIFieldRef = Utils::MonoPtr< t_Type > &
 UIFieldRef type helper.
 
template<class t_Type >
using UIFieldRefDel = Utils::Func< UIFieldRef< t_Type > >
 UIFieldRefDel alias helper.
 

Enumerations

enum class  EScreenSlot { Left , Middle , Right }
 Screen slot enum. More...
 

Functions

template<typename t_Type , typename t_DelegateType >
t_Type CustomTypesMakeDelegate (t_DelegateType p_Delegate)
 a templated method to put the MakeDelegate call into a function so that when we change where the MakeDelegate call is, we just change this method
 
template<typename... t_Args>
auto MakeUnityAction (std::function< void(t_Args...)> p_Delegate)
 templated method to turn an std::function into an action
 
template<typename t_Type , typename... t_Args>
requires (std::is_constructible_v<std::function<void(t_Args...)>, t_Type> && !std::is_same_v<std::function<void(t_Args...)>, t_Type>)
auto MakeUnityAction (t_Type p_Delegate)
 templated method to turn lambdas into actions
 
template<typename... t_Args>
auto MakeUnityAction (Il2CppObject *p_Instance, const MethodInfo *p_MethodInfo)
 templated method to turn an instance + methodInfo into an action
 

Detailed Description

User interface components, views, flow coordinator, builders and factories.

Typedef Documentation

◆ KeyboardCustomKey

using CP_SDK::UI::KeyboardCustomKey = typedef std::tuple<std::u16string, _v::Delegate<void()>, std::u16string>

Definition at line 28 of file IViewController.hpp.

◆ KeyboardCustomKeys

using CP_SDK::UI::KeyboardCustomKeys = typedef std::vector<KeyboardCustomKey>

Definition at line 29 of file IViewController.hpp.

◆ UIFieldRef

template<class t_Type >
using CP_SDK::UI::UIFieldRef = typedef Utils::MonoPtr<t_Type>&

UIFieldRef type helper.

Definition at line 20 of file UIIl2cpp.hpp.

◆ UIFieldRefDel

template<class t_Type >
using CP_SDK::UI::UIFieldRefDel = typedef Utils::Func<UIFieldRef<t_Type> >

UIFieldRefDel alias helper.

Definition at line 27 of file UIIl2cpp.hpp.

Enumeration Type Documentation

◆ EScreenSlot

enum class CP_SDK::UI::EScreenSlot
strong

Screen slot enum.

Definition at line 19 of file IScreen.hpp.

Function Documentation

◆ CustomTypesMakeDelegate()

template<typename t_Type , typename t_DelegateType >
t_Type CP_SDK::UI::CustomTypesMakeDelegate ( t_DelegateType  p_Delegate)
inline

a templated method to put the MakeDelegate call into a function so that when we change where the MakeDelegate call is, we just change this method

Template Parameters
t_Typetype of the delegate
t_DelegateTypewhatever you want to pass into MakeDelegate
Parameters
p_Delegatewhatever you want to pass into MakeDelegate
Returns
t_Type delegate

Definition at line 64 of file UIIl2cpp.hpp.

Referenced by MakeUnityAction().

Here is the caller graph for this function:

◆ MakeUnityAction() [1/3]

template<typename... t_Args>
auto CP_SDK::UI::MakeUnityAction ( Il2CppObject *  p_Instance,
const MethodInfo *  p_MethodInfo 
)

templated method to turn an instance + methodInfo into an action

Template Parameters
t_Argsthe types of the arguments of the lambda
Parameters
p_Instancethe object instance
p_MethodInfothe methodInfo of the method to run on instance
Returns
UnityEngine::Events::UnityAction_N<t_Args>

Definition at line 104 of file UIIl2cpp.hpp.

References MakeUnityAction().

Here is the call graph for this function:

◆ MakeUnityAction() [2/3]

template<typename... t_Args>
auto CP_SDK::UI::MakeUnityAction ( std::function< void(t_Args...)>  p_Delegate)

templated method to turn an std::function into an action

Template Parameters
t_Argsthe types of the arguments of the function
Parameters
p_Delegatethe function
Returns
UnityEngine::Events::UnityAction_N<t_Args>

‍4 is not allowed, UnityEngine::Events::UnityAction_N does not exist with N > 4

Definition at line 74 of file UIIl2cpp.hpp.

References CustomTypesMakeDelegate().

Referenced by MakeUnityAction(), and MakeUnityAction().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MakeUnityAction() [3/3]

template<typename t_Type , typename... t_Args>
requires (std::is_constructible_v<std::function<void(t_Args...)>, t_Type> && !std::is_same_v<std::function<void(t_Args...)>, t_Type>)
auto CP_SDK::UI::MakeUnityAction ( t_Type  p_Delegate)

templated method to turn lambdas into actions

Template Parameters
t_Typethe type of the lambda
t_Argsthe types of the arguments of the lambda
Parameters
p_Delegatethe lambda
Returns
UnityEngine::Events::UnityAction_N<t_Args>

Definition at line 94 of file UIIl2cpp.hpp.

References MakeUnityAction().

Here is the call graph for this function: