using Glamourer.Designs; using Glamourer.Designs.History; using Glamourer.Gui; using OtterGui.Classes; namespace Glamourer.Events; /// /// Triggered when a Design is edited in any way. /// /// Parameter is the type of the change /// Parameter is the changed Design. /// Parameter is any additional data depending on the type of change. /// /// public sealed class DesignChanged() : EventWrapper(nameof(DesignChanged)) { public enum Type { /// A new design was created. Created, /// An existing design was deleted. Deleted, /// Invoked on full reload. ReloadedAll, /// An existing design was renamed. Renamed, /// An existing design had its description changed. ChangedDescription, /// An existing design had its associated color changed. ChangedColor, /// An existing design had a new tag added. AddedTag, /// An existing design had an existing tag removed. RemovedTag, /// An existing design had an existing tag renamed. ChangedTag, /// An existing design had a new associated mod added. AddedMod, /// An existing design had an existing associated mod removed. RemovedMod, /// An existing design had an existing associated mod updated. UpdatedMod, /// An existing design had a link to a different design added, removed or moved. ChangedLink, /// An existing design had a customization changed. Customize, /// An existing design had its entire customize array changed. EntireCustomize, /// An existing design had an equipment piece changed. Equip, /// An existing design had a bonus item changed. BonusItem, /// An existing design had its weapons changed. Weapon, /// An existing design had a stain changed. Stains, /// An existing design had a crest visibility changed. Crest, /// An existing design had a customize parameter changed. Parameter, /// An existing design had an advanced dye row added, changed, or deleted. Material, /// An existing design had an advanced dye rows Revert state changed. MaterialRevert, /// An existing design had changed whether it always forces a redraw or not. ForceRedraw, /// An existing design had changed whether it always resets advanced dyes or not. ResetAdvancedDyes, /// An existing design had changed whether it always resets all prior temporary settings or not. ResetTemporarySettings, /// An existing design changed whether a specific customization is applied. ApplyCustomize, /// An existing design changed whether a specific equipment piece is applied. ApplyEquip, /// An existing design changed whether a specific bonus item is applied. ApplyBonusItem, /// An existing design changed whether a specific stain is applied. ApplyStain, /// An existing design changed whether a specific crest visibility is applied. ApplyCrest, /// An existing design changed whether a specific customize parameter is applied. ApplyParameter, /// An existing design changed whether an advanced dye row is applied. ApplyMaterial, /// An existing design changed its write protection status. WriteProtection, /// An existing design changed its display status for the quick design bar. QuickDesignBar, /// An existing design changed one of the meta flags. Other, } public enum Priority { /// DesignLinkManager = 1, /// AutoDesignManager = 1, /// DesignFileSystem = 0, /// DesignFileSystemSelector = -1, /// DesignCombo = -2, /// EditorHistory = -1000, } }