Class HudMemberCatalog
Discovers the types a HUD can bind to and the members it can read from them.
Inherited Members
Namespace: Serenity.GameUi.Infrastructure.Editor.Builder
Assembly: Serenity.UnityGameUi.Infrastructure.Editor.dll
Syntax
public static class HudMemberCatalog
Remarks
The project's other reflection pickers all select methods, constructors or types; none offers properties or fields, and none filters for "returns something displayable". That is the gap this fills, so the builder tool can offer a designer the members that will actually render.
Methods
GetReadableMembers(Type)
Returns the members of declaringType a binding step could read.
Declaration
public static IReadOnlyList<HudMemberCatalog.MemberOption> GetReadableMembers(Type declaringType)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | declaringType | The type to read from. |
Returns
| Type | Description |
|---|---|
| IReadOnlyList<HudMemberCatalog.MemberOption> | The readable members, displayable ones first, then by name. |
Remarks
Inherited interface members are folded in explicitly. An interface does not report them through GetMembers(), so a naive scan of a service contract silently drops everything its base contracts declare. An enum is a displayable TEXT leaf; its reflected members are only the constants and Enum plumbing, so offering hops on one invites picking a constant that ignores the bound value.
GetServiceContractArray()
The service contracts as an array, for the searchable type picker.
Declaration
public static Type[] GetServiceContractArray()
Returns
| Type | Description |
|---|---|
| Type[] | The service interfaces, ordered by name. |
GetServiceContracts()
Returns every Serenity service contract a HUD could bind to.
Declaration
public static IReadOnlyList<Type> GetServiceContracts()
Returns
| Type | Description |
|---|---|
| IReadOnlyList<Type> | The service interfaces, ordered by name. |
InvalidateCaches()
Clears the cached type scan, so a domain reload does not serve stale results.
Declaration
public static void InvalidateCaches()