public record class TypeIconWhat a type looks like, wherever the editor draws one.
Remarks
Doc 36 § D6. A contribution rather than a switch, so the outliner's row for a plugin's component and the inspector's header for it draw the same picture without either panel knowing the plugin exists.
⚠ A registration and not an attribute, and the reason is in Icon. Doc 36 spells this [EditorIcon("Icons/thing.svg")] — but there is no SVG path parser in this repository and its absence is a decision: an icon set is compiled content, so turning "M12 2L2 22h20z" into segments belongs to an asset pipeline rather than to every application at start-up. An attribute naming a file nothing can read would be an attribute that looks like a mechanism, which is what P2 declined to ship for the same reason. A type declares its icon by registering it, which a module initializer, a plugin's Activate and a project's own script can all do.
Fields and properties (3)
public Type TargetThe type — a component, a behaviour, or the class an asset deserialises to.
public IconArt ArtIts picture.
public int OrderWhich of two declarations for one type wins; the higher one, and the later one on a tie.
Methods (1)
public TypeIcon(Type Target, IconArt Art, int Order = 0)What a type looks like, wherever the editor draws one.
Used by (8)
- ComponentsViewVixen.Editor.App
- DeclaredContributionsVixen.Editor.App
- EditorApplicationVixen.Editor.App
- EditorArtVixen.Editor.Ui
- IconContributionTestsVixen.Editor.App.Tests
- MaterialIconsVixen.Editor.App
- OutOfTreePluginTestsVixen.Editor.App.Tests
- StandardIconsVixen.Editor.App