public static void SetValue(this IExposedToLevelEditor exposed, int id, object value, bool notify, ILevelEditorUndo undo)
 {
     exposed.BeginEdit(id);
     exposed.ModifyValue(value, notify);
     exposed.EndEdit(notify, undo);
 }
 protected void EndEdit(bool notify = true, bool undo = true)
 {
     boundComponent.EndEdit(notify, undo ? UI.LevelEditor.Undo : null);
 }