|
@@ -54,8 +54,11 @@ namespace InABox.Core
|
|
|
{
|
|
|
var attribute = prop.GetCustomAttributes<BaseEditor>(true).FirstOrDefault();
|
|
|
var editor = attribute ?? GetEditor(prop.PropertyType);
|
|
|
- if (editor != null && !prop.CanWrite)
|
|
|
- editor.Editable = Editable.Hidden;
|
|
|
+ if (editor != null && !prop.CanWrite && !prop.PropertyType.HasInterface<ISubObject>())
|
|
|
+ {
|
|
|
+ editor = editor.CloneEditor();
|
|
|
+ editor.Editable = editor.Editable.Combine(Editable.Disabled);
|
|
|
+ }
|
|
|
return editor;
|
|
|
}
|
|
|
|