public static string ToJson(this SceneManager sceneManager) { var stringStorage = new StringSerializerStorage(); var stream = new JsonStream(); sceneManager.SaveState(stringStorage, stream); return(stringStorage.Result); }
public static string SerializeToJSON(this ViewModel model) { ISerializerStream stream = new JsonStream(); ISerializerStorage storage = new StringSerializerStorage(); stream.DeepSerialize = true; model.Write(stream); storage.Save(stream); return storage.ToString(); }
public static string SerializeToJSON(this ViewModel model) { ISerializerStream stream = new JsonStream(); ISerializerStorage storage = new StringSerializerStorage(); stream.DeepSerialize = true; model.Write(stream); storage.Save(stream); return(storage.ToString()); }
public static void FromJson(this SceneManager sceneManager, string stateData) { var stringStorage = new StringSerializerStorage() { Result = stateData }; var stream = new JsonStream(); sceneManager.LoadState(stringStorage, stream); }
public override void OnInspectorGUI() { GUIHelpers.IsInsepctor = true; DrawTitleBar("Scene Manager"); base.OnInspectorGUI(); if (EditorApplication.isPlaying || EditorApplication.isPlayingOrWillChangePlaymode) { //if (GUI.Button(GUIHelpers.GetRect(ElementDesignerStyles.ButtonStyle), "Serialize To String", ElementDesignerStyles.ButtonStyle)) //{ // var sm = (target as SceneManager); // sm.SaveState(new TextAssetStorage() { AssetPath = "Assets/TestData.txt" }, new JsonStream() { UseReferences = true }); //} //if (GUI.Button(GUIHelpers.GetRect(ElementDesignerStyles.ButtonStyle), "Load From String", ElementDesignerStyles.ButtonStyle)) //{ // var sm = (target as SceneManager); // sm.LoadState(new TextAssetStorage() { AssetPath = "Assets/TestData.txt" }, new JsonStream() { UseReferences = true }); //} if (GUIHelpers.DoToolbarEx("Persistable Views")) { foreach (var viewBase in GameManager.ActiveSceneManager.PersistantViews) { if (viewBase == null) { continue; } if (GUIHelpers.DoTriggerButton(new UFStyle(viewBase.Identifier + ": " + viewBase.name, ElementDesignerStyles.EventButtonStyleSmall, null, null, null, false, TextAnchor.MiddleCenter) { })) { //var fileStorage = new TextAssetStorage(); var stringStorage = new StringSerializerStorage(); var stream = new JsonStream(); viewBase.Write(stream); stringStorage.Save(stream); Debug.Log(stringStorage); } } } if (GUIHelpers.DoToolbarEx("Persistable View-Models")) { foreach (var viewBase in GameManager.ActiveSceneManager.PersistantViewModels) { if (viewBase == null) { continue; } if (GUIHelpers.DoTriggerButton(new UFStyle(viewBase.Identifier + ": " + viewBase.GetType().Name, ElementDesignerStyles.EventButtonStyleSmall, null, null, null, false, TextAnchor.MiddleCenter) { })) { //var fileStorage = new TextAssetStorage(); var stringStorage = new StringSerializerStorage(); var stream = new JsonStream(); viewBase.Write(stream); stringStorage.Save(stream); Debug.Log(stringStorage); } } } } GUIHelpers.IsInsepctor = false; }
public override void OnInspectorGUI() { GUIHelpers.IsInsepctor = true; DrawTitleBar("Scene Manager"); base.OnInspectorGUI(); if (EditorApplication.isPlaying || EditorApplication.isPlayingOrWillChangePlaymode) { //if (GUI.Button(GUIHelpers.GetRect(ElementDesignerStyles.ButtonStyle), "Serialize To String", ElementDesignerStyles.ButtonStyle)) //{ // var sm = (target as SceneManager); // sm.SaveState(new TextAssetStorage() { AssetPath = "Assets/TestData.txt" }, new JsonStream() { UseReferences = true }); //} //if (GUI.Button(GUIHelpers.GetRect(ElementDesignerStyles.ButtonStyle), "Load From String", ElementDesignerStyles.ButtonStyle)) //{ // var sm = (target as SceneManager); // sm.LoadState(new TextAssetStorage() { AssetPath = "Assets/TestData.txt" }, new JsonStream() { UseReferences = true }); //} if (GUIHelpers.DoToolbarEx("Persistable Views")) { foreach (var viewBase in GameManager.ActiveSceneManager.PersistantViews) { if (viewBase == null) continue; if (GUIHelpers.DoTriggerButton(new UFStyle(viewBase.Identifier + ": " + viewBase.name, ElementDesignerStyles.EventButtonStyleSmall, null, null, null, false, TextAnchor.MiddleCenter) { })) { //var fileStorage = new TextAssetStorage(); var stringStorage = new StringSerializerStorage(); var stream = new JsonStream(); viewBase.Write(stream); stringStorage.Save(stream); Debug.Log(stringStorage); } } } if (GUIHelpers.DoToolbarEx("Persistable View-Models")) { foreach (var viewBase in GameManager.ActiveSceneManager.PersistantViewModels) { if (viewBase == null) continue; if (GUIHelpers.DoTriggerButton(new UFStyle(viewBase.Identifier + ": " + viewBase.GetType().Name, ElementDesignerStyles.EventButtonStyleSmall, null, null, null, false, TextAnchor.MiddleCenter) { })) { //var fileStorage = new TextAssetStorage(); var stringStorage = new StringSerializerStorage(); var stream = new JsonStream(); viewBase.Write(stream); stringStorage.Save(stream); Debug.Log(stringStorage); } } } } GUIHelpers.IsInsepctor = false; }