Просмотр исходного кода

Disabled object construction when deserializing managed code (there are no guarantees an object will have a parameterless constructor)
Fixed editor widget bounds calculation

BearishSun 9 лет назад
Родитель
Сommit
ee492c4c87

+ 1 - 1
Source/MBansheeEditor/Inspectors/RenderableInspector.cs

@@ -119,7 +119,7 @@ namespace BansheeEditor
                 return;
 
             meshField = new GUIResourceField(typeof(Mesh), new LocEdString("Mesh"));
-            layersField = new GUIListBoxField(Layers.Names, true, new LocEdString("Layers"));
+            layersField = new GUIListBoxField(Layers.Names, false, new LocEdString("Layer"));
 
             Layout.AddElement(meshField);
             Layout.AddElement(layersField);

+ 1 - 1
Source/SBansheeEditor/Source/BsScriptEditorWindow.cpp

@@ -260,7 +260,7 @@ namespace BansheeEngine
 			EditorWidgetBase* widget = thisPtr->getEditorWidget();
 			*bounds = thisPtr->getEditorWidget()->getBounds();
 			
-			Vector2I widgetPos(bounds->x, bounds->y);
+			Vector2I widgetPos(0, 0);
 			Vector2I screenPos = widget->widgetToScreenPos(widgetPos);
 
 			bounds->x = screenPos.x;

+ 2 - 4
Source/SBansheeEngine/Source/BsManagedSerializableObject.cpp

@@ -72,10 +72,8 @@ namespace BansheeEngine
 		if (!ScriptAssemblyManager::instance().getSerializableObjectInfo(type->mTypeNamespace, type->mTypeName, currentObjInfo))
 			return nullptr;
 
-		if (type->mValueType)
-			return currentObjInfo->mMonoClass->createInstance(false);
-		else
-			return currentObjInfo->mMonoClass->createInstance();
+		// Don't construct as we have no guarantees that objects will have parameterless constructors
+		return currentObjInfo->mMonoClass->createInstance(false);
 	}
 
 	SPtr<ManagedSerializableObject> ManagedSerializableObject::createEmpty()