diff --git a/Source/Editor/Content/Items/VisualScriptItem.cs b/Source/Editor/Content/Items/VisualScriptItem.cs
index eeb0fcd8f..2ddfcdfad 100644
--- a/Source/Editor/Content/Items/VisualScriptItem.cs
+++ b/Source/Editor/Content/Items/VisualScriptItem.cs
@@ -8,6 +8,7 @@ using System.Reflection;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
using Object = FlaxEngine.Object;
namespace FlaxEditor.Content
diff --git a/Source/Editor/Content/Proxy/BinaryAssetProxy.cs b/Source/Editor/Content/Proxy/BinaryAssetProxy.cs
index dcd8fd68a..9924ff19f 100644
--- a/Source/Editor/Content/Proxy/BinaryAssetProxy.cs
+++ b/Source/Editor/Content/Proxy/BinaryAssetProxy.cs
@@ -2,6 +2,7 @@
using System;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Content
{
@@ -42,7 +43,7 @@ namespace FlaxEditor.Content
///
public override AssetItem ConstructItem(string path, string typeName, ref Guid id)
{
- var type = Scripting.TypeUtils.GetType(typeName).Type;
+ var type = TypeUtils.GetType(typeName).Type;
if (typeof(TextureBase).IsAssignableFrom(type))
return new TextureAssetItem(path, ref id, typeName, type);
diff --git a/Source/Editor/Content/Proxy/VisualScriptProxy.cs b/Source/Editor/Content/Proxy/VisualScriptProxy.cs
index ff2d8df65..c4fc804ae 100644
--- a/Source/Editor/Content/Proxy/VisualScriptProxy.cs
+++ b/Source/Editor/Content/Proxy/VisualScriptProxy.cs
@@ -8,6 +8,7 @@ using FlaxEditor.Windows;
using FlaxEditor.Windows.Assets;
using FlaxEngine;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Content
{
diff --git a/Source/Editor/CustomEditors/CustomEditor.cs b/Source/Editor/CustomEditors/CustomEditor.cs
index 684593352..4a3930ddb 100644
--- a/Source/Editor/CustomEditors/CustomEditor.cs
+++ b/Source/Editor/CustomEditors/CustomEditor.cs
@@ -7,6 +7,7 @@ using FlaxEditor.CustomEditors.GUI;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
using Newtonsoft.Json;
using JsonSerializer = FlaxEngine.Json.JsonSerializer;
diff --git a/Source/Editor/CustomEditors/CustomEditorPresenter.cs b/Source/Editor/CustomEditors/CustomEditorPresenter.cs
index a04070a06..73e2ede0f 100644
--- a/Source/Editor/CustomEditors/CustomEditorPresenter.cs
+++ b/Source/Editor/CustomEditors/CustomEditorPresenter.cs
@@ -6,6 +6,7 @@ using System.Linq;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors
{
diff --git a/Source/Editor/CustomEditors/CustomEditorsUtil.cs b/Source/Editor/CustomEditors/CustomEditorsUtil.cs
index 2a587d188..d6769270b 100644
--- a/Source/Editor/CustomEditors/CustomEditorsUtil.cs
+++ b/Source/Editor/CustomEditors/CustomEditorsUtil.cs
@@ -9,6 +9,7 @@ using System.Runtime.InteropServices.Marshalling;
using FlaxEditor.CustomEditors.Editors;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors
{
diff --git a/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs b/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs
index 75e3fff23..f8dbf03a9 100644
--- a/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs
+++ b/Source/Editor/CustomEditors/Dedicated/ActorEditor.cs
@@ -12,6 +12,7 @@ using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Dedicated
{
diff --git a/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs b/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs
index 73a43f1bf..5cc32298e 100644
--- a/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs
+++ b/Source/Editor/CustomEditors/Dedicated/ScriptsEditor.cs
@@ -12,6 +12,7 @@ using FlaxEditor.GUI.Drag;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
using Object = FlaxEngine.Object;
namespace FlaxEditor.CustomEditors.Dedicated
diff --git a/Source/Editor/CustomEditors/Editors/ArrayEditor.cs b/Source/Editor/CustomEditors/Editors/ArrayEditor.cs
index de8491bcf..4d7beadda 100644
--- a/Source/Editor/CustomEditors/Editors/ArrayEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/ArrayEditor.cs
@@ -4,6 +4,7 @@ using System;
using System.Collections;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Editors/AssetRefEditor.cs b/Source/Editor/CustomEditors/Editors/AssetRefEditor.cs
index ddfe54897..17999d772 100644
--- a/Source/Editor/CustomEditors/Editors/AssetRefEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/AssetRefEditor.cs
@@ -6,6 +6,7 @@ using FlaxEditor.Content;
using FlaxEditor.GUI;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Editors/CollectionEditor.cs b/Source/Editor/CustomEditors/Editors/CollectionEditor.cs
index 318dafcc6..08b8b37e0 100644
--- a/Source/Editor/CustomEditors/Editors/CollectionEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/CollectionEditor.cs
@@ -9,6 +9,7 @@ using FlaxEditor.GUI.ContextMenu;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Editors/DictionaryEditor.cs b/Source/Editor/CustomEditors/Editors/DictionaryEditor.cs
index 7dd590576..6f1b95bb8 100644
--- a/Source/Editor/CustomEditors/Editors/DictionaryEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/DictionaryEditor.cs
@@ -12,6 +12,7 @@ using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Editors/EnumEditor.cs b/Source/Editor/CustomEditors/Editors/EnumEditor.cs
index 8f1da88db..3e305b09b 100644
--- a/Source/Editor/CustomEditors/Editors/EnumEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/EnumEditor.cs
@@ -5,6 +5,7 @@ using System.Linq;
using FlaxEditor.CustomEditors.Elements;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Editors/FlaxObjectRefEditor.cs b/Source/Editor/CustomEditors/Editors/FlaxObjectRefEditor.cs
index c9c49e7cb..731da3817 100644
--- a/Source/Editor/CustomEditors/Editors/FlaxObjectRefEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/FlaxObjectRefEditor.cs
@@ -10,6 +10,7 @@ using FlaxEditor.SceneGraph;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
using Object = FlaxEngine.Object;
namespace FlaxEditor.CustomEditors.Editors
diff --git a/Source/Editor/CustomEditors/Editors/GenericEditor.cs b/Source/Editor/CustomEditors/Editors/GenericEditor.cs
index 7c021613e..cba2b5a5a 100644
--- a/Source/Editor/CustomEditors/Editors/GenericEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/GenericEditor.cs
@@ -12,6 +12,7 @@ using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Editors/ListEditor.cs b/Source/Editor/CustomEditors/Editors/ListEditor.cs
index 866adf56d..12bacfcd5 100644
--- a/Source/Editor/CustomEditors/Editors/ListEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/ListEditor.cs
@@ -3,6 +3,7 @@
using System.Collections;
using System.Collections.Generic;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
@@ -20,7 +21,7 @@ namespace FlaxEditor.CustomEditors.Editors
{
var listType = Values.Type;
var list = (IList)listType.CreateInstance();
- var defaultValue = Scripting.TypeUtils.GetDefaultValue(ElementType);
+ var defaultValue = TypeUtils.GetDefaultValue(ElementType);
for (int i = 0; i < size; i++)
list.Add(defaultValue);
return list;
@@ -55,7 +56,7 @@ namespace FlaxEditor.CustomEditors.Editors
else
{
// Initialize new entries with default values
- var defaultValue = Scripting.TypeUtils.GetDefaultValue(elementType);
+ var defaultValue = TypeUtils.GetDefaultValue(elementType);
for (int i = oldSize; i < newSize; i++)
newValues.Add(defaultValue);
}
@@ -63,7 +64,7 @@ namespace FlaxEditor.CustomEditors.Editors
else if (newSize > 0)
{
// Fill new entries with default value
- var defaultValue = Scripting.TypeUtils.GetDefaultValue(elementType);
+ var defaultValue = TypeUtils.GetDefaultValue(elementType);
for (int i = oldSize; i < newSize; i++)
newValues.Add(defaultValue);
}
diff --git a/Source/Editor/CustomEditors/Editors/ObjectSwitcherEditor.cs b/Source/Editor/CustomEditors/Editors/ObjectSwitcherEditor.cs
index 7e86df06f..25a058d86 100644
--- a/Source/Editor/CustomEditors/Editors/ObjectSwitcherEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/ObjectSwitcherEditor.cs
@@ -3,6 +3,7 @@
using System;
using FlaxEditor.GUI;
using FlaxEditor.Scripting;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Editors/TypeEditor.cs b/Source/Editor/CustomEditors/Editors/TypeEditor.cs
index 722235088..eb0c839ed 100644
--- a/Source/Editor/CustomEditors/Editors/TypeEditor.cs
+++ b/Source/Editor/CustomEditors/Editors/TypeEditor.cs
@@ -9,6 +9,7 @@ using FlaxEditor.GUI.Drag;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors.Editors
{
diff --git a/Source/Editor/CustomEditors/Values/ValueContainer.cs b/Source/Editor/CustomEditors/Values/ValueContainer.cs
index 9125b7006..b1fd54e3b 100644
--- a/Source/Editor/CustomEditors/Values/ValueContainer.cs
+++ b/Source/Editor/CustomEditors/Values/ValueContainer.cs
@@ -6,6 +6,7 @@ using System.ComponentModel;
using System.Linq;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.CustomEditors
{
diff --git a/Source/Editor/GUI/AssetPicker.cs b/Source/Editor/GUI/AssetPicker.cs
index a359c288c..41f360195 100644
--- a/Source/Editor/GUI/AssetPicker.cs
+++ b/Source/Editor/GUI/AssetPicker.cs
@@ -7,6 +7,7 @@ using FlaxEditor.GUI.Drag;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI
{
diff --git a/Source/Editor/GUI/CurveEditor.Contents.cs b/Source/Editor/GUI/CurveEditor.Contents.cs
index dca6d0450..2d3c2d606 100644
--- a/Source/Editor/GUI/CurveEditor.Contents.cs
+++ b/Source/Editor/GUI/CurveEditor.Contents.cs
@@ -8,6 +8,7 @@ using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI
{
diff --git a/Source/Editor/GUI/Drag/DragActorType.cs b/Source/Editor/GUI/Drag/DragActorType.cs
index 40b66bbdf..ac62a045b 100644
--- a/Source/Editor/GUI/Drag/DragActorType.cs
+++ b/Source/Editor/GUI/Drag/DragActorType.cs
@@ -6,6 +6,7 @@ using FlaxEditor.SceneGraph;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Drag
{
diff --git a/Source/Editor/GUI/Popups/ScriptSearchPopup.cs b/Source/Editor/GUI/Popups/ScriptSearchPopup.cs
index 839346b5a..b771adff6 100644
--- a/Source/Editor/GUI/Popups/ScriptSearchPopup.cs
+++ b/Source/Editor/GUI/Popups/ScriptSearchPopup.cs
@@ -4,6 +4,7 @@ using System;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI
{
diff --git a/Source/Editor/GUI/Timeline/GUI/KeyframesEditor.cs b/Source/Editor/GUI/Timeline/GUI/KeyframesEditor.cs
index afc0768d9..cb781229f 100644
--- a/Source/Editor/GUI/Timeline/GUI/KeyframesEditor.cs
+++ b/Source/Editor/GUI/Timeline/GUI/KeyframesEditor.cs
@@ -11,6 +11,7 @@ using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI
{
diff --git a/Source/Editor/GUI/Timeline/Tracks/AnimationEventTrack.cs b/Source/Editor/GUI/Timeline/Tracks/AnimationEventTrack.cs
index 5b7ecddef..4e78ca8ae 100644
--- a/Source/Editor/GUI/Timeline/Tracks/AnimationEventTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/AnimationEventTrack.cs
@@ -10,6 +10,7 @@ using FlaxEditor.Scripting;
using FlaxEditor.Utilities;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
using Object = FlaxEngine.Object;
namespace FlaxEditor.GUI.Timeline.Tracks
diff --git a/Source/Editor/GUI/Timeline/Tracks/CurvePropertyTrack.cs b/Source/Editor/GUI/Timeline/Tracks/CurvePropertyTrack.cs
index e74fd0273..65caf4f3d 100644
--- a/Source/Editor/GUI/Timeline/Tracks/CurvePropertyTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/CurvePropertyTrack.cs
@@ -9,6 +9,7 @@ using System.Text;
using FlaxEditor.GUI.Timeline.Undo;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Timeline.Tracks
{
@@ -539,7 +540,7 @@ namespace FlaxEditor.GUI.Timeline.Tracks
throw new Exception("Invalid track data.");
var keyframes = new object[keyframesCount];
- var propertyType = Scripting.TypeUtils.GetType(e.MemberTypeName).Type;
+ var propertyType = TypeUtils.GetType(e.MemberTypeName).Type;
if (propertyType == null)
{
stream.ReadBytes(keyframesCount * (sizeof(float) + valueSize * 3));
diff --git a/Source/Editor/GUI/Timeline/Tracks/EventTrack.cs b/Source/Editor/GUI/Timeline/Tracks/EventTrack.cs
index e7e34fdda..f13bfe811 100644
--- a/Source/Editor/GUI/Timeline/Tracks/EventTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/EventTrack.cs
@@ -10,6 +10,7 @@ using System.Text;
using FlaxEditor.GUI.Timeline.Undo;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Timeline.Tracks
{
@@ -51,7 +52,7 @@ namespace FlaxEditor.GUI.Timeline.Tracks
{
e.EventParamsSizes[i] = stream.ReadInt32();
var paramTypeName = LoadName(stream);
- e.EventParamsTypes[i] = Scripting.TypeUtils.GetManagedType(paramTypeName);
+ e.EventParamsTypes[i] = TypeUtils.GetManagedType(paramTypeName);
if (e.EventParamsTypes[i] == null)
isInvalid = true;
}
diff --git a/Source/Editor/GUI/Timeline/Tracks/KeyframesPropertyTrack.cs b/Source/Editor/GUI/Timeline/Tracks/KeyframesPropertyTrack.cs
index f2ac84a4d..fa80912f9 100644
--- a/Source/Editor/GUI/Timeline/Tracks/KeyframesPropertyTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/KeyframesPropertyTrack.cs
@@ -9,6 +9,7 @@ using System.Text;
using FlaxEditor.GUI.Timeline.Undo;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Timeline.Tracks
{
@@ -56,7 +57,7 @@ namespace FlaxEditor.GUI.Timeline.Tracks
var keyframes = new KeyframesEditor.Keyframe[keyframesCount];
var dataBuffer = new byte[e.ValueSize];
- var propertyType = Scripting.TypeUtils.GetManagedType(e.MemberTypeName);
+ var propertyType = TypeUtils.GetManagedType(e.MemberTypeName);
if (propertyType == null)
{
e.Keyframes.ResetKeyframes();
diff --git a/Source/Editor/GUI/Timeline/Tracks/ObjectPropertyTrack.cs b/Source/Editor/GUI/Timeline/Tracks/ObjectPropertyTrack.cs
index c753c98ed..fde00ecaf 100644
--- a/Source/Editor/GUI/Timeline/Tracks/ObjectPropertyTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/ObjectPropertyTrack.cs
@@ -4,6 +4,7 @@ using System;
using System.IO;
using System.Text;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Timeline.Tracks
{
@@ -48,7 +49,7 @@ namespace FlaxEditor.GUI.Timeline.Tracks
if (stream.ReadChar() != 0)
throw new Exception("Invalid track data.");
- var propertyType = Scripting.TypeUtils.GetType(e.MemberTypeName);
+ var propertyType = TypeUtils.GetType(e.MemberTypeName);
if (!propertyType)
{
if (!string.IsNullOrEmpty(e.MemberTypeName))
diff --git a/Source/Editor/GUI/Timeline/Tracks/ObjectReferencePropertyTrack.cs b/Source/Editor/GUI/Timeline/Tracks/ObjectReferencePropertyTrack.cs
index da1502b71..371d65082 100644
--- a/Source/Editor/GUI/Timeline/Tracks/ObjectReferencePropertyTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/ObjectReferencePropertyTrack.cs
@@ -4,6 +4,7 @@ using System;
using System.IO;
using System.Reflection;
using System.Text;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Timeline.Tracks
{
@@ -51,7 +52,7 @@ namespace FlaxEditor.GUI.Timeline.Tracks
throw new Exception("Invalid track data.");
var keyframes = new KeyframesEditor.Keyframe[keyframesCount];
- var propertyType = Scripting.TypeUtils.GetType(e.MemberTypeName);
+ var propertyType = TypeUtils.GetType(e.MemberTypeName);
if (!propertyType)
{
e.Keyframes.ResetKeyframes();
diff --git a/Source/Editor/GUI/Timeline/Tracks/StringPropertyTrack.cs b/Source/Editor/GUI/Timeline/Tracks/StringPropertyTrack.cs
index ffbf64a99..6e733f47d 100644
--- a/Source/Editor/GUI/Timeline/Tracks/StringPropertyTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/StringPropertyTrack.cs
@@ -3,6 +3,7 @@
using System;
using System.IO;
using System.Text;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Timeline.Tracks
{
@@ -50,7 +51,7 @@ namespace FlaxEditor.GUI.Timeline.Tracks
throw new Exception("Invalid track data.");
var keyframes = new KeyframesEditor.Keyframe[keyframesCount];
- var propertyType = Scripting.TypeUtils.GetType(e.MemberTypeName);
+ var propertyType = TypeUtils.GetType(e.MemberTypeName);
if (!propertyType)
{
e.Keyframes.ResetKeyframes();
diff --git a/Source/Editor/GUI/Timeline/Tracks/StructPropertyTrack.cs b/Source/Editor/GUI/Timeline/Tracks/StructPropertyTrack.cs
index 6cce0d738..26f9d2ad9 100644
--- a/Source/Editor/GUI/Timeline/Tracks/StructPropertyTrack.cs
+++ b/Source/Editor/GUI/Timeline/Tracks/StructPropertyTrack.cs
@@ -5,6 +5,7 @@ using System.IO;
using System.Reflection;
using System.Text;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.GUI.Timeline.Tracks
{
@@ -49,7 +50,7 @@ namespace FlaxEditor.GUI.Timeline.Tracks
if (stream.ReadChar() != 0)
throw new Exception("Invalid track data.");
- var propertyType = Scripting.TypeUtils.GetType(e.MemberTypeName);
+ var propertyType = TypeUtils.GetType(e.MemberTypeName);
if (!propertyType)
{
if (!string.IsNullOrEmpty(e.MemberTypeName))
diff --git a/Source/Editor/Modules/ContentDatabaseModule.cs b/Source/Editor/Modules/ContentDatabaseModule.cs
index e5b2efee3..672de6d28 100644
--- a/Source/Editor/Modules/ContentDatabaseModule.cs
+++ b/Source/Editor/Modules/ContentDatabaseModule.cs
@@ -8,6 +8,7 @@ using FlaxEditor.Content;
using FlaxEditor.Content.Settings;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Modules
{
diff --git a/Source/Editor/Modules/SourceCodeEditing/CachedCustomAnimGraphNodesCollection.cs b/Source/Editor/Modules/SourceCodeEditing/CachedCustomAnimGraphNodesCollection.cs
index 113a701c6..499a472d6 100644
--- a/Source/Editor/Modules/SourceCodeEditing/CachedCustomAnimGraphNodesCollection.cs
+++ b/Source/Editor/Modules/SourceCodeEditing/CachedCustomAnimGraphNodesCollection.cs
@@ -6,6 +6,7 @@ using System.Reflection;
using FlaxEditor.Scripting;
using FlaxEditor.Surface;
using FlaxEngine;
+using FlaxEngine.Utilities;
using MethodInfo = System.Reflection.MethodInfo;
namespace FlaxEditor.Modules.SourceCodeEditing
@@ -106,7 +107,7 @@ namespace FlaxEditor.Modules.SourceCodeEditing
// Validate node type
var typeName = Surface.Archetypes.Custom.GetNodeTypeName(arch);
- var type = Scripting.TypeUtils.GetType(typeName).Type;
+ var type = TypeUtils.GetType(typeName).Type;
if (type == null)
{
Debug.LogWarning(string.Format("Method {0} from {1} returned invalid node archetype. Failed to find node logic defined in type {2}.", method, method.DeclaringType, typeName));
diff --git a/Source/Editor/Modules/SourceCodeEditing/CachedTypesCollection.cs b/Source/Editor/Modules/SourceCodeEditing/CachedTypesCollection.cs
index 6e0517175..a73c3d2ee 100644
--- a/Source/Editor/Modules/SourceCodeEditing/CachedTypesCollection.cs
+++ b/Source/Editor/Modules/SourceCodeEditing/CachedTypesCollection.cs
@@ -5,6 +5,7 @@ using System.Collections.Generic;
using System.Reflection;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Modules.SourceCodeEditing
{
diff --git a/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs b/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs
index bce95566f..c61fad713 100644
--- a/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs
+++ b/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs
@@ -8,6 +8,7 @@ using FlaxEditor.Options;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Modules.SourceCodeEditing
{
diff --git a/Source/Editor/SceneGraph/GUI/ActorTreeNode.cs b/Source/Editor/SceneGraph/GUI/ActorTreeNode.cs
index 6b6ea2f20..606462ef8 100644
--- a/Source/Editor/SceneGraph/GUI/ActorTreeNode.cs
+++ b/Source/Editor/SceneGraph/GUI/ActorTreeNode.cs
@@ -13,6 +13,7 @@ using FlaxEditor.Windows;
using FlaxEditor.Windows.Assets;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
using Object = FlaxEngine.Object;
namespace FlaxEditor.SceneGraph.GUI
diff --git a/Source/Editor/Scripting/ScriptType.Interfaces.cs b/Source/Editor/Scripting/ScriptType.Interfaces.cs
index fb4230256..3b3b28ccb 100644
--- a/Source/Editor/Scripting/ScriptType.Interfaces.cs
+++ b/Source/Editor/Scripting/ScriptType.Interfaces.cs
@@ -4,6 +4,7 @@ using System;
using System.Collections.Generic;
using System.Reflection;
using FlaxEditor.Content;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Scripting
{
diff --git a/Source/Editor/Scripting/ScriptType.cs b/Source/Editor/Scripting/ScriptType.cs
index d6b4fa271..aa0ca5655 100644
--- a/Source/Editor/Scripting/ScriptType.cs
+++ b/Source/Editor/Scripting/ScriptType.cs
@@ -8,6 +8,7 @@ using System.Runtime.CompilerServices;
using System.Text;
using FlaxEditor.Content;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Scripting
{
diff --git a/Source/Editor/Scripting/TypeUtils.cs b/Source/Editor/Scripting/TypeUtils.cs
index 3af3106f0..4f66d6320 100644
--- a/Source/Editor/Scripting/TypeUtils.cs
+++ b/Source/Editor/Scripting/TypeUtils.cs
@@ -5,14 +5,12 @@ using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
-using FlaxEngine;
+using FlaxEditor;
+using FlaxEditor.Scripting;
-namespace FlaxEditor.Scripting
+namespace FlaxEngine.Utilities
{
- ///
- /// Editor scripting utilities and helper functions.
- ///
- public static class TypeUtils
+ partial class TypeUtils
{
///
/// Custom list of scripting types containers. Can be used by custom scripting languages to provide types info for the editor.
@@ -35,34 +33,6 @@ namespace FlaxEditor.Scripting
return o != null ? new ScriptType(o.GetType()) : ScriptType.Null;
}
- ///
- /// Gets the typename full name.
- ///
- /// The type.
- /// The full typename of the type.
- public static string GetTypeName(this Type type)
- {
- if (type.IsGenericType)
- {
- // For generic types (eg. Dictionary) FullName returns generic parameter types with fully qualified name so simplify it manually
- var sb = new StringBuilder();
- sb.Append(type.Namespace);
- sb.Append('.');
- sb.Append(type.Name);
- sb.Append('[');
- var genericArgs = type.GetGenericArguments();
- for (var i = 0; i < genericArgs.Length; i++)
- {
- if (i != 0)
- sb.Append(',');
- sb.Append(genericArgs[i].GetTypeName());
- }
- sb.Append(']');
- return sb.ToString();
- }
- return type.FullName;
- }
-
///
/// Gets the typename name for UI.
///
@@ -131,7 +101,7 @@ namespace FlaxEditor.Scripting
if (type.IsValueType)
{
var value = type.CreateInstance();
- Utilities.Utils.InitDefaultValues(value);
+ FlaxEditor.Utilities.Utils.InitDefaultValues(value);
return value;
}
if (ScriptType.Object.IsAssignableFrom(type))
@@ -139,7 +109,7 @@ namespace FlaxEditor.Scripting
if (type.CanCreateInstance)
{
var value = type.CreateInstance();
- Utilities.Utils.InitDefaultValues(value);
+ FlaxEditor.Utilities.Utils.InitDefaultValues(value);
return value;
}
return null;
@@ -366,7 +336,7 @@ namespace FlaxEditor.Scripting
}
}
- if (!Content.Settings.GameSettings.OptionalPlatformSettings.Contains(typeName))
+ if (!FlaxEditor.Content.Settings.GameSettings.OptionalPlatformSettings.Contains(typeName))
Editor.LogWarning($"Failed to find type '{typeName}'.");
return ScriptType.Null;
}
diff --git a/Source/Editor/Surface/Archetypes/Constants.cs b/Source/Editor/Surface/Archetypes/Constants.cs
index 122093cbb..72a77ea4d 100644
--- a/Source/Editor/Surface/Archetypes/Constants.cs
+++ b/Source/Editor/Surface/Archetypes/Constants.cs
@@ -14,6 +14,7 @@ using FlaxEditor.Scripting;
using FlaxEditor.Surface.Elements;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface.Archetypes
{
diff --git a/Source/Editor/Surface/Archetypes/Parameters.cs b/Source/Editor/Surface/Archetypes/Parameters.cs
index 179ff8d84..c7f343cfb 100644
--- a/Source/Editor/Surface/Archetypes/Parameters.cs
+++ b/Source/Editor/Surface/Archetypes/Parameters.cs
@@ -12,6 +12,7 @@ using FlaxEditor.GUI;
using FlaxEditor.Scripting;
using FlaxEditor.Surface.Elements;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface.Archetypes
{
diff --git a/Source/Editor/Surface/Archetypes/Tools.cs b/Source/Editor/Surface/Archetypes/Tools.cs
index 13cefd8a4..9f6db7ea4 100644
--- a/Source/Editor/Surface/Archetypes/Tools.cs
+++ b/Source/Editor/Surface/Archetypes/Tools.cs
@@ -10,6 +10,7 @@ using FlaxEditor.Scripting;
using FlaxEditor.Surface.Elements;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface.Archetypes
{
diff --git a/Source/Editor/Surface/ContextMenu/VisjectCM.cs b/Source/Editor/Surface/ContextMenu/VisjectCM.cs
index 9551f0f34..8372ac9cf 100644
--- a/Source/Editor/Surface/ContextMenu/VisjectCM.cs
+++ b/Source/Editor/Surface/ContextMenu/VisjectCM.cs
@@ -8,6 +8,7 @@ using FlaxEditor.GUI.Input;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface.ContextMenu
{
diff --git a/Source/Editor/Surface/Elements/ActorSelect.cs b/Source/Editor/Surface/Elements/ActorSelect.cs
index 6da454ccf..3be493db7 100644
--- a/Source/Editor/Surface/Elements/ActorSelect.cs
+++ b/Source/Editor/Surface/Elements/ActorSelect.cs
@@ -3,6 +3,7 @@
using System;
using FlaxEditor.CustomEditors.Editors;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface.Elements
{
@@ -30,7 +31,7 @@ namespace FlaxEditor.Surface.Elements
ParentNode = parentNode;
Archetype = archetype;
Bounds = new Rectangle(Archetype.ActualPosition, archetype.Size);
- Type = Scripting.TypeUtils.GetType(archetype.Text);
+ Type = TypeUtils.GetType(archetype.Text);
ParentNode.ValuesChanged += OnNodeValuesChanged;
OnNodeValuesChanged();
diff --git a/Source/Editor/Surface/Elements/AssetSelect.cs b/Source/Editor/Surface/Elements/AssetSelect.cs
index 933451259..e38989e08 100644
--- a/Source/Editor/Surface/Elements/AssetSelect.cs
+++ b/Source/Editor/Surface/Elements/AssetSelect.cs
@@ -3,6 +3,7 @@
using System;
using FlaxEditor.GUI;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface.Elements
{
@@ -26,7 +27,7 @@ namespace FlaxEditor.Surface.Elements
/// The parent node.
/// The archetype.
public AssetSelect(SurfaceNode parentNode, NodeElementArchetype archetype)
- : base(Scripting.TypeUtils.GetType(archetype.Text), archetype.ActualPosition)
+ : base(TypeUtils.GetType(archetype.Text), archetype.ActualPosition)
{
ParentNode = parentNode;
Archetype = archetype;
diff --git a/Source/Editor/Surface/Elements/EnumValue.cs b/Source/Editor/Surface/Elements/EnumValue.cs
index 09591e55a..065646a53 100644
--- a/Source/Editor/Surface/Elements/EnumValue.cs
+++ b/Source/Editor/Surface/Elements/EnumValue.cs
@@ -2,6 +2,7 @@
using System;
using FlaxEditor.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface.Elements
{
@@ -26,7 +27,7 @@ namespace FlaxEditor.Surface.Elements
///
public EnumValue(SurfaceNode parentNode, NodeElementArchetype archetype)
- : base(Scripting.TypeUtils.GetType(archetype.Text).Type)
+ : base(TypeUtils.GetType(archetype.Text).Type)
{
X = archetype.ActualPositionX;
Y = archetype.ActualPositionY;
diff --git a/Source/Editor/Surface/Elements/InputBox.cs b/Source/Editor/Surface/Elements/InputBox.cs
index a8954b797..4eac03105 100644
--- a/Source/Editor/Surface/Elements/InputBox.cs
+++ b/Source/Editor/Surface/Elements/InputBox.cs
@@ -17,6 +17,7 @@ using FlaxEditor.GUI.Input;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
using Newtonsoft.Json;
using JsonSerializer = FlaxEngine.Json.JsonSerializer;
diff --git a/Source/Editor/Surface/SurfaceParameter.cs b/Source/Editor/Surface/SurfaceParameter.cs
index cfec4104a..6eafdc2aa 100644
--- a/Source/Editor/Surface/SurfaceParameter.cs
+++ b/Source/Editor/Surface/SurfaceParameter.cs
@@ -3,6 +3,7 @@
using System;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface
{
diff --git a/Source/Editor/Surface/SurfaceStyle.cs b/Source/Editor/Surface/SurfaceStyle.cs
index f3c2c6f18..18fa70e4e 100644
--- a/Source/Editor/Surface/SurfaceStyle.cs
+++ b/Source/Editor/Surface/SurfaceStyle.cs
@@ -3,6 +3,7 @@
using System;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Surface
{
diff --git a/Source/Editor/Surface/VisjectSurface.CopyPaste.cs b/Source/Editor/Surface/VisjectSurface.CopyPaste.cs
index ba7684127..3a5be4857 100644
--- a/Source/Editor/Surface/VisjectSurface.CopyPaste.cs
+++ b/Source/Editor/Surface/VisjectSurface.CopyPaste.cs
@@ -6,6 +6,7 @@ using FlaxEditor.Scripting;
using FlaxEditor.Surface.Elements;
using FlaxEditor.Surface.Undo;
using FlaxEngine;
+using FlaxEngine.Utilities;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
diff --git a/Source/Editor/Surface/VisualScriptSurface.cs b/Source/Editor/Surface/VisualScriptSurface.cs
index b40fb1603..e961f686d 100644
--- a/Source/Editor/Surface/VisualScriptSurface.cs
+++ b/Source/Editor/Surface/VisualScriptSurface.cs
@@ -21,6 +21,7 @@ using FlaxEditor.Surface.ContextMenu;
using FlaxEditor.Surface.Elements;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
using Object = FlaxEngine.Object;
namespace FlaxEditor.Surface
diff --git a/Source/Editor/Undo/Actions/AddRemoveScriptAction.cs b/Source/Editor/Undo/Actions/AddRemoveScriptAction.cs
index 567bd39e9..69a790b39 100644
--- a/Source/Editor/Undo/Actions/AddRemoveScriptAction.cs
+++ b/Source/Editor/Undo/Actions/AddRemoveScriptAction.cs
@@ -3,6 +3,7 @@
using System;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
using Object = FlaxEngine.Object;
namespace FlaxEditor.Actions
diff --git a/Source/Editor/Undo/Actions/DeleteActorsAction.cs b/Source/Editor/Undo/Actions/DeleteActorsAction.cs
index 740f41306..292497a4c 100644
--- a/Source/Editor/Undo/Actions/DeleteActorsAction.cs
+++ b/Source/Editor/Undo/Actions/DeleteActorsAction.cs
@@ -5,6 +5,7 @@ using System.Collections.Generic;
using FlaxEditor.SceneGraph;
using FlaxEditor.Scripting;
using FlaxEngine;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Actions
{
diff --git a/Source/Editor/Utilities/ObjectSnapshot.cs b/Source/Editor/Utilities/ObjectSnapshot.cs
index 2a1c320f3..a0e5e2c97 100644
--- a/Source/Editor/Utilities/ObjectSnapshot.cs
+++ b/Source/Editor/Utilities/ObjectSnapshot.cs
@@ -10,6 +10,7 @@ using System.Reflection;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Utilities
{
diff --git a/Source/Editor/Utilities/Utils.cs b/Source/Editor/Utilities/Utils.cs
index 2012436ae..0d3d8e4e1 100644
--- a/Source/Editor/Utilities/Utils.cs
+++ b/Source/Editor/Utilities/Utils.cs
@@ -20,6 +20,7 @@ using FlaxEditor.SceneGraph;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEngine
{
diff --git a/Source/Editor/Windows/Assets/GameplayGlobalsWindow.cs b/Source/Editor/Windows/Assets/GameplayGlobalsWindow.cs
index bfd93d5ae..56fb029cd 100644
--- a/Source/Editor/Windows/Assets/GameplayGlobalsWindow.cs
+++ b/Source/Editor/Windows/Assets/GameplayGlobalsWindow.cs
@@ -11,6 +11,7 @@ using FlaxEditor.GUI.ContextMenu;
using FlaxEditor.Scripting;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Windows.Assets
{
diff --git a/Source/Editor/Windows/Assets/VisualScriptWindow.cs b/Source/Editor/Windows/Assets/VisualScriptWindow.cs
index 94eaab4be..ed20b591e 100644
--- a/Source/Editor/Windows/Assets/VisualScriptWindow.cs
+++ b/Source/Editor/Windows/Assets/VisualScriptWindow.cs
@@ -16,6 +16,7 @@ using FlaxEditor.Surface;
using FlaxEngine;
using FlaxEngine.GUI;
using FlaxEngine.Json;
+using FlaxEngine.Utilities;
using FlaxEngine.Windows.Search;
#pragma warning disable 649
diff --git a/Source/Editor/Windows/Search/ContentSearchWindow.cs b/Source/Editor/Windows/Search/ContentSearchWindow.cs
index 5ee3ff11c..e6e407247 100644
--- a/Source/Editor/Windows/Search/ContentSearchWindow.cs
+++ b/Source/Editor/Windows/Search/ContentSearchWindow.cs
@@ -17,6 +17,7 @@ using FlaxEditor.Surface;
using FlaxEditor.Windows;
using FlaxEditor.Windows.Assets;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEngine.Windows.Search
{
diff --git a/Source/Editor/Windows/VisualScriptDebuggerWindow.cs b/Source/Editor/Windows/VisualScriptDebuggerWindow.cs
index c85507a1c..330a3963b 100644
--- a/Source/Editor/Windows/VisualScriptDebuggerWindow.cs
+++ b/Source/Editor/Windows/VisualScriptDebuggerWindow.cs
@@ -12,6 +12,7 @@ using FlaxEditor.Surface;
using FlaxEditor.Windows.Assets;
using FlaxEngine;
using FlaxEngine.GUI;
+using FlaxEngine.Utilities;
namespace FlaxEditor.Windows
{
diff --git a/Source/Engine/Engine/NativeInterop.cs b/Source/Engine/Engine/NativeInterop.cs
index c97848ed9..8a5ffcf9c 100644
--- a/Source/Engine/Engine/NativeInterop.cs
+++ b/Source/Engine/Engine/NativeInterop.cs
@@ -1988,17 +1988,11 @@ namespace FlaxEngine
{
var type = assemblyTypes[i];
IntPtr ptr = IntPtr.Add(new IntPtr(arr), Unsafe.SizeOf() * i);
- bool isStatic = type.IsAbstract && type.IsSealed;
- bool isInterface = type.IsInterface;
- bool isAbstract = type.IsAbstract;
-
- ManagedHandle typeHandle = GetTypeGCHandle(type);
-
- NativeClassDefinitions managedClass = new NativeClassDefinitions()
+ var managedClass = new NativeClassDefinitions
{
- typeHandle = typeHandle,
+ typeHandle = GetTypeGCHandle(type),
name = NativeAllocStringAnsi(type.Name),
- fullname = NativeAllocStringAnsi(type.FullName),
+ fullname = NativeAllocStringAnsi(type.GetTypeName()),
@namespace = NativeAllocStringAnsi(type.Namespace ?? ""),
typeAttributes = (uint)type.Attributes,
};
@@ -2013,12 +2007,11 @@ namespace FlaxEngine
internal static unsafe void GetManagedClassFromType(ManagedHandle typeHandle, NativeClassDefinitions* managedClass, ManagedHandle* assemblyHandle)
{
Type type = Unsafe.As(typeHandle.Target);
- ManagedHandle classTypeHandle = GetTypeGCHandle(type);
- *managedClass = new NativeClassDefinitions()
+ *managedClass = new NativeClassDefinitions
{
- typeHandle = classTypeHandle,
+ typeHandle = GetTypeGCHandle(type),
name = NativeAllocStringAnsi(type.Name),
- fullname = NativeAllocStringAnsi(type.FullName),
+ fullname = NativeAllocStringAnsi(type.GetTypeName()),
@namespace = NativeAllocStringAnsi(type.Namespace ?? ""),
typeAttributes = (uint)type.Attributes,
};
diff --git a/Source/Engine/Utilities/TypeUtils.cs b/Source/Engine/Utilities/TypeUtils.cs
new file mode 100644
index 000000000..93a1c3a47
--- /dev/null
+++ b/Source/Engine/Utilities/TypeUtils.cs
@@ -0,0 +1,46 @@
+// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved.
+
+using System;
+using System.Text;
+
+namespace FlaxEngine.Utilities
+{
+ ///
+ /// Editor utilities and helper functions for System.Type.
+ ///
+ public static partial class TypeUtils
+ {
+ ///
+ /// Gets the typename full name.
+ ///
+ /// The type.
+ /// The full typename of the type.
+ public static string GetTypeName(this Type type)
+ {
+ if (type.IsGenericType && type.IsConstructedGenericType)
+ {
+ // For generic types (eg. Dictionary) FullName returns generic parameter types with fully qualified name so simplify it manually
+ var sb = new StringBuilder();
+ sb.Append(type.Namespace);
+ sb.Append('.');
+ sb.Append(type.Name);
+ sb.Append('[');
+ var genericArgs = type.GetGenericArguments();
+ for (var i = 0; i < genericArgs.Length; i++)
+ {
+ if (i != 0)
+ sb.Append(',');
+ sb.Append(genericArgs[i].GetTypeName());
+ }
+ sb.Append(']');
+ var sss = sb.ToString();
+ if (sss != type.FullName)
+ {
+ Debug.LogError($"Different type name: {type.FullName} vs {sss}");
+ }
+ return sb.ToString();
+ }
+ return type.FullName;
+ }
+ }
+}