/// <summary> /// Return true if the element is the last in the queue /// </summary> /// <returns></returns> public void Redo() { if (_redoLines.Count != 0) { Tuple <ActionType, ILineModel> line = _redoLines.Pop(); switch (line.Item1) { case ActionType.Add: CreateLine(line.Item2, true); LineAddedSignal.Dispatch(line.Item2); break; case ActionType.Edit: UpdateLine(line.Item2, true); LineUpdatedSignal.Dispatch(line.Item2); break; case ActionType.Delete: DeleteLine(line.Item2, true); LineDeletedSignal.Dispatch(line.Item2.Guid); break; } } SaveAvailableSignal.Dispatch(_redoLines.Count != 0); RedoAvailableSignal.Dispatch(_redoLines.Count != 0); }
private void Save(string path) { MasterSaveModel masterSave = SaveManager.GetSaveListModel(); byte[] bytes = Serializer.Serialize(masterSave, false, false, "LinyxEncryption"); File.WriteAllBytes(path, bytes); SaveAvailableSignal.Dispatch(false); }
private void OnAddLineReceived(ILineModel line) { _undoLines.Push(new Tuple <ActionType, ILineModel>(ActionType.Add, line)); UndoAvailableSignal.Dispatch(true); SaveAvailableSignal.Dispatch(true); }