Releases: TylerTemp/SaintsField
3.18.0 Auto Runner Improvement & Bug Fix
- Auto Runner now can check the
OnValidate
method, and will notice you if the method throw an error and/or make aDebug.LogError
- Fix auto getters throw an error if the target asset doesn't match some required condition
- Auto Runner no longer serialize the result into the file
- Fix Auto Runner can not properly display the field because the scene gets close during the process
- Auto Runner now will allow you restore your opened scenes after finished
- Add an Auto Runner example code so you can easily make a target assets group for validation
Full Changelog: 3.17.1...3.18.0
3.17.1 Auto Getters & AddressableResource
- Fix auto getters won't work if multiple targets use the same field name for array/list
- IMGUI:
AddressableResource
is not supported in IMGUI too
Full Changelog: 3.17.0...3.17.1
3.17.0 Improvement
-
ValidateInput
is now supported by Auto Runner. -
AboveImage
,BelowImage
, andAssetPreview
now works on AddressableAssetReference
type. -
UI Toolkit:
ValidateInput
now only runs when:- the inspecting target is changed
- the project is changed
- some assets are changed
Instead of every 100 ms. You can still enable the loop checking in
SaintsConfig
-
Change Auto Runner so you can have multiple config for different purposes.
Full Changelog: 3.16.0...3.17.0
3.16.0 Auto runner for auto getters
- Auto runner now supports auto getters!
- UI Toolkit: fix auto getters update loop won't get triggered
- Fix auto getters can not process
SaintsInterface
correctly - Improve the performance of auto runner, also give a dialog message if the opening scene is dirty
Full Changelog: 3.15.1...3.16.0
3.15.1 Auto Runner & IMGUI Improvement
- Better
Auto Runner
serialization and drawer - IMGUI: Fix auto getters might fail when refreshing the resources
- IMGUI: All kind of buttons now support
IEnumerator
return type (same as UI Toolkit) - IMGUI:
Auto Runner
is now supported in IMGUI - IMGUI:
Layout
with border or foldout, can now indent a bit for array and generic type, to increase the readability - IMGUI:
Layout
foldout icon is now in gray color instead of white
(This is IMGUI; UI Toolkit already has this feature long ago)
Full Changelog: 3.15.0...3.15.1
3.15.0 AddressableResource & Auto Runner
- UI Toolkit: Add
AddressableResource
forAssetReference
inline editing - Using
Required
on addressable'sAssetReference
will check if the target asset is valid - UI Toolkit:
AutoRunner
now can specify if you want to skip the hidden fields (hidden byShowIf
,HideIf
. Not work forLayoutShowIf
,LayoutHideIf
)
Unity_SDmMsTNW2a.mp4
Full Changelog: 3.14.1...3.15.0
Note: I know recent updates did not give an implementation for IMGUI. This is because I added features I needed for my project first. I'll add IMGUI support for these features as soon as possible.
3.14.1 Validation Tool
-
Overhaul the auto getters. This might be related to #102.
The issue is because, usually you can just
SerializedProperty.SerializedObject.ApplyModifiedProperties()
. However, if the serialized target is newly created, this behavior will fail, for no good reason. This behavior is not documented in Unity's API.To resolve this, UI Toolkit will delay the action a bit later. IMGUI will attempt multiple times.
This version also makes the auto getters for list not depending on the first element drawer. This means three things:
- When working with
ListDrawerSettings
, search function will not trigger the auto getters re-running. - Draging element in list will not cause any troubles now. But the value will swap back once auto getters auto updated. (auto updating is depended on your configuration)
- Better performance, especially for IMGUI.
- When working with
-
UI Toolkit: A simple validation tool under
Window
-Saints
-Auto Runner
, related to #115This tool allows you to check if some target has
Required
but not filled. You can specify the targets as you want. Currently, it supports scenes, and folder searching.This tool is very simple, and will get more update in the future.
This tool is only available for UI Toolkit at the moment.
-
Breaking Changes: If you use
IWrapProp
, you need to change// an auto getter private string EditorPropertyName => nameof(myField);
to
// a static field (private or public, with or without readonly) private static readonly string EditorPropertyName = nameof(myField);
Unity_mwFkGmDavX.mp4
Full Changelog: 3.13.1...3.14.1
3.13.1 Bug Fix
- UI Toolkit: Fix
SaintsEditor
created many unused emptyVisualElement
- UI Toolkit: Fix rich label style might be null when falling back to IMGUI drawer
- UI Toolkit: Fix
SaintsEditorWindow
can not vertically scroll when the window is very high
Full Changelog: 3.13.0...3.13.1
3.13.0 Folder Picker
- Add
AssetFolder
to pick a folder underAssets
folder. - Add
ResourceFolder
to pick a folder under Unity'sResources
folders
using SaintsField;
[ResourceFolder] public string resourcesFolder;
[ResourceFolder] public string[] resourcesFolders;
Unity_Lcv3BKJy4w.mp4
Full Changelog: 3.12.1...3.13.0
3.12.1 Bug Fix
- Fix
RequireType
didn't give a correct component when using withinterface
, #114 - Fix
ShowInInspector
sometimes can not draw a correct value when a nested field is null
Full Changelog: 3.12.0...3.12.1