public void RedoLastChange() { if (commandsManager.Redo()) { uiManager.UpdateUI(); } }
public void TestRedo() { var redoCommand = new CommandMock(); _redoStack.Push(redoCommand); int count = 0; _commandsManager.UndoRedoStacksChanged += () => count++; _commandsManager.Redo(); Assert.AreEqual(_redoStack.Count, 0); Assert.AreSame(_undoStack.Pop(), redoCommand); Assert.IsTrue(redoCommand.IsCalledExecute); Assert.AreEqual(count, 1); }
private void ShowHtml() { string uri = Settings.Instance().WebHost + "/mypad?lang=" + Settings.Instance().Language + "&scene_id=" + ProjectData.SceneId; //string uri = "http://192.168.33.91:8080" + "/mypad?lang=" + Settings.Instance().Language; Browser.LoadURL(uri, true); Browser.RegisterFunction("spawnObject", args => { var logger = LogManager.GetCurrentClassLogger(); string objectString = args[0].AsJSON; PrefabObject prefabObject = objectString.JsonDeserialize <PrefabObject>(); ObjectDto existedObject = ProjectData.ProjectStructure.Scenes.GetProjectScene(ProjectData.SceneId) .SceneObjects.Find(p => p.ObjectId == prefabObject.Id); Debug.Log("Object to spawn: " + prefabObject.Guid); int objectId = prefabObject.Id; if (GameStateData.GetPrefabGameObject(objectId) != null) { Helper.SetSpawnedObject(objectId); logger.Info("Spawn existed object: " + objectId); } else if (existedObject != null) { logger.Info("Object " + prefabObject.Guid + " is already loading!"); HideMenu(); return; } else { ProjectData.ProjectStructure.Objects.Add(prefabObject); var po = new List <PrefabObject> { prefabObject }; void OnLoadObjects() { if (GameStateData.GetPrefabGameObject(objectId) != null && !BrowserWindow.activeSelf) { Helper.SetSpawnedObject(objectId); logger.Info("New object spawned: " + objectId); } ObjectLoader.StopLoaderAnimation(); ProjectData.ObjectsLoaded -= OnLoadObjects; } LoaderAdapter.LoadPrefabObjects(po); ProjectData.ObjectsLoaded += OnLoadObjects; ObjectLoader.StartLoaderAnimation(); } HideMenu(); }); Browser.RegisterFunction("undo", args => { CommandsManager.Undo(); }); Browser.RegisterFunction("redo", args => { CommandsManager.Redo(); }); Browser.RegisterFunction("switchMode", args => { SwitchGameMode(); }); Browser.RegisterFunction("save", args => { Helper.SaveSceneObjects(); }); SetRender(); _htmlLoaded = true; }