logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class ModalRecipeImporter

    Generates UnityModalSettings assets from the modals section. Content (title/text), alignment, direction, scrolling, and options are supported and written through the modal's public parameter properties; each option's submit signals are wired via RecipeSignalCodec. The optional signalTypeName (the signal the modal listens for) is passed through verbatim; a non-empty value that cannot be resolved is reported as a warning (the modal is still created).

    Inheritance
    object
    RecipeSectionImporterBase
    ModalRecipeImporter
    Implements
    ISerenityRecipeSectionImporter
    Inherited Members
    RecipeSectionImporterBase.IsSupported
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    Namespace: Serenity.ProjectRecipe.Infrastructure.Editor.Importers
    Assembly: Serenity.UnityProjectRecipe.Infrastructure.Editor.dll
    Syntax
    public sealed class ModalRecipeImporter : RecipeSectionImporterBase, ISerenityRecipeSectionImporter

    Constructors

    ModalRecipeImporter()

    Declaration
    public ModalRecipeImporter()

    Properties

    ModuleLabel

    The Addressables module label applied to this section's created/updated assets when the run registers them (see Run(SerenityRecipe, string, RecipeRunMode, SerenityRecipeReport)). Null for sections whose assets are not registered as Addressable (generic/deferred sections, or sections with no module label of their own).

    Declaration
    public override string ModuleLabel { get; }
    Property Value
    Type Description
    string
    Overrides
    RecipeSectionImporterBase.ModuleLabel

    Order

    Declaration
    public override int Order { get; }
    Property Value
    Type Description
    int

    Execution order (ascending). Typed sections run first, the generic assets section after them so its references to generated assets resolve, and the deferred reporter last. Importers are discovered by reflection and sorted by this value, so a new section just picks an order without touching the engine.

    Overrides
    RecipeSectionImporterBase.Order

    SectionName

    Declaration
    public override string SectionName { get; }
    Property Value
    Type Description
    string

    The recipe section this importer handles (used for reporting), e.g. audioClips.

    Overrides
    RecipeSectionImporterBase.SectionName

    Methods

    Import(SerenityRecipeImportContext)

    Creates or updates this section's assets. In a dry run the context suppresses writes, so this only resolves and records the would-be outcomes. Not called when the report has blockers.

    Declaration
    public override void Import(SerenityRecipeImportContext context)
    Parameters
    Type Name Description
    SerenityRecipeImportContext context

    The shared import context.

    Overrides
    RecipeSectionImporterBase.Import(SerenityRecipeImportContext)

    Validate(SerenityRecipeImportContext)

    Validates this section against the recipe and project, reporting errors/warnings/info. Must not modify any asset. Called for every run mode.

    Declaration
    public override void Validate(SerenityRecipeImportContext context)
    Parameters
    Type Name Description
    SerenityRecipeImportContext context

    The shared import context.

    Overrides
    RecipeSectionImporterBase.Validate(SerenityRecipeImportContext)

    Implements

    ISerenityRecipeSectionImporter
    In this article
    © 2026 Serenity. All Rights Reserved