Type Selector Settings Attribute

Provides options for Type Selectors rendered using Odin.

[ShowInInspector] public Type Default; [Title("Show Categories"), ShowInInspector, LabelText("On")] [TypeSelectorSettings(ShowCategories = true)] public Type ShowCategories_On; [ShowInInspector, LabelText("Off")] [TypeSelectorSettings(ShowCategories = false)] public Type ShowCategories_Off; [Title("Prefer Namespaces"), ShowInInspector, LabelText("On")] [TypeSelectorSettings(PreferNamespaces = true, ShowCategories = true)] public Type PreferNamespaces_On; [ShowInInspector, LabelText("Off")] [TypeSelectorSettings(PreferNamespaces = false, ShowCategories = true)] public Type PreferNamespaces_Off; [Title("Show None Item"), ShowInInspector, LabelText("On")] [TypeSelectorSettings(ShowNoneItem = true)] public Type ShowNoneItem_On; [ShowInInspector, LabelText("Off")] [TypeSelectorSettings(ShowNoneItem = false)] public Type ShowNoneItem_Off; [Title("Custom Type Filter"), ShowInInspector] [TypeSelectorSettings(FilterTypesFunction = nameof(TypeFilter), ShowCategories = false)] public Type CustomTypeFilterExample; private bool TypeFilter(Type type) { return type.GetInterfaces().Any(i => i.IsGenericType && i.GetGenericTypeDefinition() == typeof(IEnumerable<>)); }