Skip to content

Commit

Permalink
Update SerializedObjectResolver.cs
Browse files Browse the repository at this point in the history
Add change event dispatching
  • Loading branch information
AkiKurisu committed Jan 27, 2025
1 parent 90cd242 commit 4483e4d
Showing 1 changed file with 15 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
namespace Ceres.Editor.Graph
{
[Ordered]
public class SerializedObjectFieldResolver : FieldResolver<SerializedObjectField , SerializedObjectBase>
public class SerializedObjectFieldResolver : FieldResolver<SerializedObjectField, SerializedObjectBase>
{
public SerializedObjectFieldResolver(FieldInfo fieldInfo) : base(fieldInfo)
{
Expand Down Expand Up @@ -59,7 +59,7 @@ private void OnGUI()
}
}

private void Restore()
private void RefreshWrapper()
{
var elementType = _value.GetBoxType();
if (elementType == null)
Expand All @@ -70,16 +70,14 @@ private void Restore()
var wrapper = SerializedObjectWrapperManager.CreateWrapper(elementType, ref handle);
_value.objectHandle = handle.Handle;
if (!wrapper) return;
if (!string.IsNullOrEmpty(value.jsonData))
if (string.IsNullOrEmpty(value.jsonData)) return;
try
{
try
{
wrapper.Value = JsonUtility.FromJson(_value.jsonData, elementType);
}
catch
{
// ignored
}
wrapper.Value = JsonUtility.FromJson(_value.jsonData, elementType);
}
catch
{
// ignored
}
}

Expand All @@ -90,11 +88,13 @@ public override SerializedObjectBase value
get => _value;
set
{
var oldValue = _value;
_value = value;
if (_value != null)
{
Restore();
}
if (_value == null) return;
RefreshWrapper();
using var evt = ChangeEvent<SerializedObjectBase>.GetPooled(oldValue, value);
evt.target = this;
SendEvent(evt);
}
}
}
Expand Down

0 comments on commit 4483e4d

Please sign in to comment.