logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class SerenityThemeBuilderRunner

    Headless / JSON entry points for Serenity.Ui.Installation.Editor.Settings.Builder.ThemeCreator, mirroring SerenityProjectValidationRunner so CI or an AI agent can generate a complete theme without the CreateThemeWindow wizard — either from the command line (CreateFromCommandLine()) or, with the editor already open, by calling CreateFromJson(string) directly (e.g. via UnityMCP reflection). Hosted in this assembly because it needs Serenity.Ui.Installation.Editor.Settings.Builder.ThemeCreator's internal Input DTO and Serenity.Ui.Installation.Editor.Settings.Builder.ThemeSpriteSlot.

    Inheritance
    object
    SerenityThemeBuilderRunner
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.Ui.Installation.Editor.Settings.Builder
    Assembly: Serenity.UnityUi.Installation.Editor.dll
    Syntax
    public static class SerenityThemeBuilderRunner

    Methods

    CreateFromCommandLine()

    Headless entry point. Reads -themeInput <json file path> (required) and optional -themeResult <path> (writes the JSON report there, even on failure), logs the console report, and exits with code 1 on any failure so CI / an agent can branch on it.

    Declaration
    public static void CreateFromCommandLine()

    CreateFromJson(string)

    Parses a Serenity.Ui.Installation.Editor.Settings.Builder.SerenityThemeSpec JSON document, resolves every asset reference / enum / color, and runs Serenity.Ui.Installation.Editor.Settings.Builder.ThemeCreator.Create(Serenity.Ui.Installation.Editor.Settings.Builder.ThemeCreator.Input). Safe to call with the editor open — never exits the process. Every asset-reference and enum problem is collected before failing, so a single call reports every mistake in the spec instead of one at a time.

    Declaration
    public static SerenityThemeBuilderReport CreateFromJson(string json)
    Parameters
    Type Name Description
    string json

    A Serenity.Ui.Installation.Editor.Settings.Builder.SerenityThemeSpec-shaped JSON document.

    Returns
    Type Description
    SerenityThemeBuilderReport

    The populated report — Success false on any failure.

    CreateThemeFromJsonFile()

    Editor entry: picks a spec JSON file, runs it, and offers to save the JSON report.

    Declaration
    public static void CreateThemeFromJsonFile()
    In this article
    © 2026 Serenity. All Rights Reserved