Releases: TylerTemp/SaintsField
3.3.6 Addressable Fix
Fix broken addressable support due to last version's refactor.
Full Changelog: 3.3.5...3.3.6
3.3.5 Bug Fix
-
Fix inconsistent logic of
ShowIf
andHideIf
(alsoPlayaShowIf
,PlayaHideIf
):- As
[ShowIf]
will show the field, now[HideIf]
will hide the field. - The
Or
logic was not completely correct forHideIf
, especially withEMode
config and now is been fixed
- As
-
Now you can use
[ShowIf(false)]
,[HideIf(true)]
to directly show or hide the target field. -
UI Toolkit: fix array/list/struct foldout out of space when using
Layout
(IMGUI will come up later)
Before:
Now:
Full Changelog: 3.3.4...3.3.5
3.3.4 Bug Fix
- Fix
PlayaShowIf
/PlayaHideIf
could not be used more than once on the same target. - IMGUI: Fix missing decorators. If you see duplicated decorators in your project, go:
Window
-Saints
-Enable IMGUI duplicated decorator fix
. - IMGUI: Fix inconsistent height update for
InfoBox
andResiziableTextArea
in Unity 2022.3.46, #85. - IMGUI: Fix
PostFieldButton
,AboveButton
,BelowButton
use shared error message when in a list/array. - Change
null
value color forShowInInspector
. - Fix
ShowInInspector
can not detect a dictionary when the target isIReadOnlyDictionary<,>
(P.S. I'm still working on a big feature so most updates these days will be about bug fixes instead of features)
Full Changelog: 3.3.3...3.3.4
3.3.3 Bug Fix & Improvement
- UI Toolkit now can fall back to an IMGUI custom drawer if the target field is specified to be drawn by an IMGUI drawer (note:
<icon>
inRichLabel
will not work and will get removed). - Change the order of static/readonly field of
ShowInInspector
so it can stay at the position where it declared. Change the order ofproperty
to be abovemethod
. - Fix compile error on old Unity version.
ColorToggle
supportsGraphic
(text
,TMP_Text
,Image
etc). #83
Full Changelog: 3.3.2...3.3.3
3.3.2 Bug Fix
- Fix
Required
not work on every element of list/array. - Fix
RichLabel
etc. failed to find a correct fallback drawer likeUnityEvent
P.S. I'm re-writing the GetComponent*
related attributes to make it more useful as I'm heavily relied on them in my project. However, it's kinda a big feature. Before it's done most release will be about bug fix (and very small features) rather than features :)
Full Changelog: 3.3.1...3.3.2
3.3.1 Bug Fix for `Dropdown` & `AdvancedDropdown`
Fix Dropdown
& AdvancedDropdown
not work on list/array.
Full Changelog: 3.3.0...3.3.1
3.3.0 Bug Fix, `[PlayaInfoBox]` for Array/List
This upgrade CONTAINS BREAKING CHANGES, read before you upgrade.
- Breaking Changes:
InfoBox
now default at above. parameterabove
has been renamed tobelow
. If you use[InfoBox(..., above: true)]
, you will need to remove theabove
, or change it tobelow
- Add
BelowInfoBox
to show at below. - Fix
Attribute
-s finding error when there is anabstruct class
in inherent, related to #79 - Add
LayoutStart
as an alias ofLayoutGroup
.LayoutGroup
is now deprecated (not removed). - Add
PlayaInfoBox
for any property/field/method with rich text supports, implements #71 - IMGUI: fix incorrect display for
Separator
whenEAlign
isEnd
. $
prefix to set parameter as a callback/property
using SaintsField.Playa;
[PlayaInfoBox("Please Note: special label like <icon=star.png/> only works for <color=lime>UI Toolkit</color> <color=red>(not IMGUI)</color> in InfoBox.")]
[PlayaBelowInfoBox("$" + nameof(DynamicFromArray))] // callback
public string[] strings = {};
private string DynamicFromArray(string[] value) => value.Length > 0? string.Join("\n", value): "null";
public string dynamic;
[PlayaInfoBox("MethodWithButton")]
[Button("Click Me!")]
[PlayaBelowInfoBox("GroupExample", groupBy: "group")]
[PlayaBelowInfoBox("$" + nameof(dynamic), groupBy: "group")]
public void MethodWithButton()
{
}
[PlayaInfoBox("Method")]
[PlayaBelowInfoBox("$" + nameof(dynamic))]
public void Method()
{
}
Full Changelog: 3.2.6...3.3.0
3.2.6 Layout Improvement
- Improved
LayoutGroup
which supports./GroupName
to add nested subgroup. #67 - IMGUI: better visual display for
TitledBox
,FoldoutBox
and foldout tabs. #64
Full Changelog: 3.2.5...3.2.6
using SaintsField.Playa;
[LayoutGroup("Root", ELayout.FoldoutBox)]
public string root1;
public string root2;
[LayoutGroup("./Sub", ELayout.FoldoutBox)] // equals "Root/Sub"
public string sub1;
public string sub2;
[LayoutGroup("../Another", ELayout.FoldoutBox)] // equals "Root/Another"
public string another1;
public string another2;
[LayoutEnd(".")] // equals "Root"
public string root3; // this should still belong to "Root"
public string root4;
[LayoutEnd] // this should close any existing group
public string outOfAll;
[Layout("Tabs", ELayout.Tab | ELayout.Collapse)]
[LayoutGroup("./Tab1")]
public string tab1Item1;
public int tab1Item2;
[LayoutGroup("../Tab2")]
public string tab2Item1;
public int tab2Item2;
3.2.5 Find Resources Bug Fix
(By @Lx34r ) GetResourcePath
etc. support some build-in object types like AudioClip
, Motion
. #69
Full Changelog: 3.2.4...3.2.5
P.S. I'm taking a short vacation, the pending Issues will get start after a week. Thanks for your support!
3.2.4 Bug Fix & Improvement
- IMGUI: fix
Expandable
won't save the changed value. - Fix
Required
won't work in parent of an inherited class. - Fix
FieldType
won't work in array/list. - Allow
FieldType
withcompType=null
to by-pass the issue that Unity won't show all the prefabs with expected component in the picker.
Full Changelog: 3.2.3...3.2.4