Step-by-step window for creating (or updating) the project-wide
UnityMenuServiceSettingsDefinition asset. The stepped-wizard scaffolding — the header and
breadcrumb, the body scroll, the footer and its error gate, and the select-and-ping a finished run
ends with — comes from Serenity.Global.Infrastructure.Editor.SerenityStepWizardWindow`1; this window declares only its own
step table and what the primary action does. Get-or-create target resolution goes through
Serenity.Global.Infrastructure.Editor.SerenityWizardTargetAsset and Serenity.Global.Infrastructure.Editor.SerenityWizardTargetAssetGui. Menus
themselves are still authored through the Composite View Builder — this wizard only covers the menu
SERVICE settings (the controller id and border margin). The window only collects input and renders
results; MenuServiceSettingsCreator does the actual validation and generation work.
Controller Id and Border Margin are edited through a Serenity.Global.Infrastructure.Editor.SerenityWizardScratchDraft<>
scratch instance (via Serenity.Menu.Infrastructure.Editor.Builder.CreateMenuServiceSettingsWindow._draftLifecycle) rather than mirrored local fields, so an
update-in-place run can never silently revert either — or any future field this asset grows — to its
static template default, mirroring CreateSystemConfigurationSettingsWindow.
Inheritance
CreateMenuServiceSettingsWindow
Assembly: Serenity.UnityMenu.Infrastructure.Editor.dll
public sealed class CreateMenuServiceSettingsWindow : SerenityStepWizardWindow<CreateMenuServiceSettingsWindow.WizardStep>
Constructors
Declaration
public CreateMenuServiceSettingsWindow()
Properties
Declaration
protected override IEnumerable<SerenityWizardTargetAsset> OwnedTargets { get; }
Property Value
| Type |
Description |
| IEnumerable<SerenityWizardTargetAsset> |
|
Declaration
protected override string PrimaryButtonLabel { get; }
Property Value
Declaration
protected override string WindowTitle { get; }
Property Value
Methods
Declaration
protected override WizardStepDescriptor<CreateMenuServiceSettingsWindow.WizardStep>[] BuildSteps()
Returns
| Type |
Description |
| WizardStepDescriptor<WizardStep>[] |
|
Adopts a target the reader picked and left in the same frame, before any step draws — the
pick happens inside the Identity step's own body, too late for that step to react to it itself.
Otherwise ensures the scratch draft survived — see Serenity.Menu.Infrastructure.Editor.Builder.CreateMenuServiceSettingsWindow._draftLifecycle's own remarks.
Declaration
protected override void OnBeforeDrawStep()
Declaration
protected override void OnPrimaryAction()
Declaration
public static void Open()