MASS4.Autoformers.Excalibur 6.3.0

dotnet add package MASS4.Autoformers.Excalibur --version 6.3.0
                    
NuGet\Install-Package MASS4.Autoformers.Excalibur -Version 6.3.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MASS4.Autoformers.Excalibur" Version="6.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MASS4.Autoformers.Excalibur" Version="6.3.0" />
                    
Directory.Packages.props
<PackageReference Include="MASS4.Autoformers.Excalibur" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MASS4.Autoformers.Excalibur --version 6.3.0
                    
#r "nuget: MASS4.Autoformers.Excalibur, 6.3.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package MASS4.Autoformers.Excalibur@6.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=MASS4.Autoformers.Excalibur&version=6.3.0
                    
Install as a Cake Addin
#tool nuget:?package=MASS4.Autoformers.Excalibur&version=6.3.0
                    
Install as a Cake Tool

Autoformers.Excalibur

Draws a Autoformers model with Excalibur controls.

var context = new FormRenderContext();                 // keep one per panel: fold state lives here
gui.Form(FormBuilder.Build(settings), "settings", context);
  • gui.FormField(field, id, context) draws one labelled row; gui.FormFieldEditor(...) only its editor.
  • FormDrawers is a registry scope. Add(...) returns an IDisposable that removes exactly that registration; a child scope falls back to its parent and FormDrawers.Default holds the built-ins.
  • Dispatch: attribute decorators wrap → writable type drawer → predicate drawers → collection → nested object → built-in (bool, string, enum, numbers) → read-only summary.
  • Colors come from the form stylesheet rule and its theme tokens; sizes from inherited control style tokens (CompactHeight, CompactFontSize) plus FormLabelWidth, FormIndent, FormCaretOpen and FormCaretClosed.
  • Drawing is single-threaded (the GUI thread); registration may happen from any thread.

Depends on MASS4.Guinevere, MASS4.Guinevere.Excalibur and Autoformers only; never on Gaya or Turian.

Enum fields

using MASS4.Attributes;

[Flags]
public enum Permissions { None = 0, Read = 1, Write = 2 }
public enum Mode { Preview, Edit, Play }

public sealed class Settings
{
    public Permissions Access { get; set; }       // Searchable flag dropdown.
    [EnumButtons] public Mode Mode { get; set; } // One horizontal button group.
    [EnumPaging] public Mode Step { get; set; }  // Dropdown plus previous/next.
}

No enum attribute is needed for the searchable dropdown. [Flags] enables independent checkbox/button selection, and mixed flag edits preserve each owner's unrelated bits. Selecting None clears the full mask; paging replaces the full value and wraps through declared choices. [EnumButtons] takes precedence when both presentation attributes are present. Use button groups for short option lists; they currently occupy one row.

Apply [EnumLabel("Display label")] to an enum member to override its name. FormRenderContext.Translate translates these labels. Read-only enum fields use the read-only summary. See the attribute catalog for custom selection controls.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
6.3.0 0 10/15/2026
6.2.0 39 10/14/2026
6.1.0 141 10/13/2026
6.0.0 177 10/10/2026
5.9.0 134 10/6/2026
5.8.0 105 10/5/2026
5.7.0 187 10/3/2026
5.6.1 130 10/2/2026