Minor fixes

This commit is contained in:
Wojtek Figat
2023-10-01 10:56:30 +02:00
parent af3f6d0003
commit 075f40b93a
3 changed files with 52 additions and 47 deletions

View File

@@ -821,6 +821,28 @@ FLAXENGINE_API ScriptingObject* FindObject(const Guid& id, MClass* type)
return Scripting::FindObject(id, type);
}
void ScriptingObjectReferenceBase::OnSet(ScriptingObject* object)
{
auto e = _object;
if (e != object)
{
if (e)
e->Deleted.Unbind<ScriptingObjectReferenceBase, &ScriptingObjectReferenceBase::OnDeleted>(this);
_object = e = object;
if (e)
e->Deleted.Bind<ScriptingObjectReferenceBase, &ScriptingObjectReferenceBase::OnDeleted>(this);
Changed();
}
}
void ScriptingObjectReferenceBase::OnDeleted(ScriptingObject* obj)
{
ASSERT(_object == obj);
_object->Deleted.Unbind<ScriptingObjectReferenceBase, &ScriptingObjectReferenceBase::OnDeleted>(this);
_object = nullptr;
Changed();
}
ScriptingObject* Scripting::FindObject(Guid id, MClass* type)
{
if (!id.IsValid())