Static class that lists string constants for Material Icons glyph names used by the Prism editor UI. It centralizes icon names for documentation and reuse across the editor.
namespace Editor.Prism.Ui;
/// <summary>
/// Every Material Icons glyph name Prism draws, in one place.
/// <para>
/// <c>Paint.DrawIcon</c> renders a name without a dot as a glyph from the "Material Icons" font, so a
/// typo produces a blank rectangle rather than a compile error. Naming them here means a typo happens
/// once, is found once, and never silently reappears in a fortieth call site.
/// </para>
/// </summary>
public static class PrismIcons
{
// ---- documents and files ---------------------------------------------
/// <summary>A shader graph document.</summary>
public const string Graph = "account_tree";
/// <summary>A subgraph / shader function document.</summary>
public const string Subgraph = "hub";
/// <summary>Generated code.</summary>
public const string Code = "code";
/// <summary>Save.</summary>
public const string Save = "save";
/// <summary>Open.</summary>
public const string Open = "folder_open";
// ---- graph editing ---------------------------------------------------
/// <summary>Add anything.</summary>
public const string Add = "add";
/// <summary>Delete.</summary>
public const string Delete = "delete";
/// <summary>Cut.</summary>
public const string Cut = "content_cut";
/// <summary>Copy.</summary>
public const string Copy = "content_copy";
/// <summary>Paste.</summary>
public const string Paste = "content_paste";
/// <summary>Duplicate.</summary>
public const string Duplicate = "control_point_duplicate";
/// <summary>Undo.</summary>
public const string Undo = "undo";
/// <summary>Redo.</summary>
public const string Redo = "redo";
/// <summary>A reroute node.</summary>
public const string Reroute = "route";
/// <summary>A comment or group box.</summary>
public const string Comment = "notes";
/// <summary>A sticky note.</summary>
public const string Note = "sticky_note_2";
/// <summary>Group the selection.</summary>
public const string Group = "select_all";
/// <summary>Collapse to a subgraph.</summary>
public const string Collapse = "unfold_less";
/// <summary>Expand a subgraph in place.</summary>
public const string Expand = "unfold_more";
/// <summary>Disconnect a wire.</summary>
public const string Disconnect = "link_off";
/// <summary>Connect a wire.</summary>
public const string Connect = "link";
/// <summary>Reset a value to its default.</summary>
public const string Reset = "restart_alt";
// ---- node card chrome ------------------------------------------------
/// <summary>Per-node preview is enabled.</summary>
public const string Preview = "visibility";
/// <summary>Per-node preview is disabled.</summary>
public const string PreviewOff = "visibility_off";
/// <summary>The node is pinned.</summary>
public const string Pinned = "push_pin";
/// <summary>The node is excluded from compilation.</summary>
public const string Disabled = "block";
/// <summary>The node card is collapsed.</summary>
public const string Collapsed = "expand_more";
/// <summary>The node card is expanded.</summary>
public const string Expanded = "expand_less";
/// <summary>An error badge.</summary>
public const string Error = "error";
/// <summary>A warning badge.</summary>
public const string Warning = "warning";
/// <summary>An informational badge.</summary>
public const string Info = "info";
/// <summary>A node type that is not registered.</summary>
public const string Missing = "help_outline";
/// <summary>A node that is only valid in the vertex stage.</summary>
public const string StageVertex = "change_history";
/// <summary>A node that is only valid in the pixel stage.</summary>
public const string StagePixel = "grid_on";
// ---- canvas chrome ---------------------------------------------------
/// <summary>Fit the whole graph in view.</summary>
public const string Fit = "fit_screen";
/// <summary>Frame the selection.</summary>
public const string Frame = "center_focus_strong";
/// <summary>Zoom in.</summary>
public const string ZoomIn = "zoom_in";
/// <summary>Zoom out.</summary>
public const string ZoomOut = "zoom_out";
/// <summary>Snap to grid.</summary>
public const string Snap = "grid_4x4";
/// <summary>Wire style.</summary>
public const string WireStyle = "timeline";
/// <summary>Align.</summary>
public const string Align = "align_horizontal_left";
/// <summary>Distribute.</summary>
public const string Distribute = "horizontal_distribute";
/// <summary>Automatic layout.</summary>
public const string AutoLayout = "auto_awesome_mosaic";
/// <summary>Search.</summary>
public const string Search = "search";
// ---- data ------------------------------------------------------------
/// <summary>A blackboard parameter.</summary>
public const string Parameter = "tune";
/// <summary>A keyword / combo.</summary>
public const string Keyword = "call_split";
/// <summary>A texture.</summary>
public const string Texture = "image";
/// <summary>A sampler.</summary>
public const string Sampler = "filter";
/// <summary>A colour value.</summary>
public const string Color = "palette";
/// <summary>A boolean value.</summary>
public const string Boolean = "toggle_on";
/// <summary>A numeric value.</summary>
public const string Number = "123";
/// <summary>A vector value.</summary>
public const string Vector = "open_with";
/// <summary>A type conversion happens on this wire.</summary>
public const string Conversion = "swap_horiz";
}