Class ScreenCatalogDefinitionBuilder
- Namespace
- MackySoft.Navigathena
- Assembly
- MackySoft.Navigathena.dll
Defines root routes and their construction, then binds them through the catalog's common registration rules.
public sealed class ScreenCatalogDefinitionBuilder
- Inheritance
-
ScreenCatalogDefinitionBuilder
- Inherited Members
Methods
RegisterScreens(RegionDefinitionId, Action<RegionScreenCatalogBuilder>)
Registers construction and blockers for a region after its route definitions have been built.
public void RegisterScreens(RegionDefinitionId region, Action<RegionScreenCatalogBuilder> configure)
Parameters
regionRegionDefinitionIdconfigureAction<RegionScreenCatalogBuilder>
Register<TRoute>(RouteEntryOperations, LowerPresentationPolicy, ScreenDefinition<TRoute>, Action<RouteDefinitionBuilder<TRoute>>?)
Registers a root route using an existing, shareable screen construction definition.
public void Register<TRoute>(RouteEntryOperations allowedEntryOperations, LowerPresentationPolicy lowerPresentationPolicy, ScreenDefinition<TRoute> screen, Action<RouteDefinitionBuilder<TRoute>>? defineChildren = null) where TRoute : Route
Parameters
allowedEntryOperationsRouteEntryOperationslowerPresentationPolicyLowerPresentationPolicyscreenScreenDefinition<TRoute>defineChildrenAction<RouteDefinitionBuilder<TRoute>>
Type Parameters
TRoute
Register<TRoute>(RouteEntryOperations, LowerPresentationPolicy, Func<ScreenCreationContext<TRoute>, CancellationToken, ValueTask<IScreenLifecycleHandler<TRoute>>>, Action<RouteDefinitionBuilder<TRoute>>?)
Registers a root route with its entry permissions, lower-screen policy, and construction factory.
public void Register<TRoute>(RouteEntryOperations allowedEntryOperations, LowerPresentationPolicy lowerPresentationPolicy, Func<ScreenCreationContext<TRoute>, CancellationToken, ValueTask<IScreenLifecycleHandler<TRoute>>> create, Action<RouteDefinitionBuilder<TRoute>>? defineChildren = null) where TRoute : Route
Parameters
allowedEntryOperationsRouteEntryOperationsOne or more operations permitted to create a new entry. Back and restoration are unaffected.
lowerPresentationPolicyLowerPresentationPolicyHow the route affects lower entries in the root region and their descendants.
createFunc<ScreenCreationContext<TRoute>, CancellationToken, ValueTask<IScreenLifecycleHandler<TRoute>>>Constructs one screen instance; Route values are supplied to its lifecycle handler.
defineChildrenAction<RouteDefinitionBuilder<TRoute>>Optional child-region definitions for this route.
Type Parameters
TRoute
Register<TRoute, TResult>(RouteEntryOperations, LowerPresentationPolicy, ScreenDefinition<TRoute, TResult>, Action<RouteDefinitionBuilder<TRoute>>?)
Registers a result-returning root route using an existing, shareable screen construction definition.
public void Register<TRoute, TResult>(RouteEntryOperations allowedEntryOperations, LowerPresentationPolicy lowerPresentationPolicy, ScreenDefinition<TRoute, TResult> screen, Action<RouteDefinitionBuilder<TRoute>>? defineChildren = null) where TRoute : Route<TResult>
Parameters
allowedEntryOperationsRouteEntryOperationslowerPresentationPolicyLowerPresentationPolicyscreenScreenDefinition<TRoute, TResult>defineChildrenAction<RouteDefinitionBuilder<TRoute>>
Type Parameters
TRouteTResult
Register<TRoute, TResult>(RouteEntryOperations, LowerPresentationPolicy, Func<ScreenCreationContext<TRoute, TResult>, CancellationToken, ValueTask<IScreenLifecycleHandler<TRoute, TResult>>>, Action<RouteDefinitionBuilder<TRoute>>?)
Registers a result-returning root route. Entry permissions apply within the call boundary.
public void Register<TRoute, TResult>(RouteEntryOperations allowedEntryOperations, LowerPresentationPolicy lowerPresentationPolicy, Func<ScreenCreationContext<TRoute, TResult>, CancellationToken, ValueTask<IScreenLifecycleHandler<TRoute, TResult>>> create, Action<RouteDefinitionBuilder<TRoute>>? defineChildren = null) where TRoute : Route<TResult>
Parameters
allowedEntryOperationsRouteEntryOperationslowerPresentationPolicyLowerPresentationPolicycreateFunc<ScreenCreationContext<TRoute, TResult>, CancellationToken, ValueTask<IScreenLifecycleHandler<TRoute, TResult>>>defineChildrenAction<RouteDefinitionBuilder<TRoute>>
Type Parameters
TRouteTResult