public Subtask_Model(AssetManagerModel _assetManager, TaskName _taskName, string _name, int _softwareIndex) : base(_assetManager, _taskName) { m_name = _name; Debug.Log("_softwareIndex = " + _softwareIndex + " Taskname = " + _taskName); m_software = AssetSystem.System.GetSoftwareList(m_taskName)[_softwareIndex]; //Debug.Log("Create a subtask"); m_mementoHandler = new MementoHandler(); //using memento pattern to handle saving/loading and also undo/redo in the PipelineSystem.System.CreateSubtask(m_taskName, m_name); //create the directory if not exist //todo : m_versions = pipelineSystem.GetVersions(subtaskName, TaskName) m_versions = PipelineSystem.System.GetVersionList(m_taskName, m_name); IsSelected = false; }
public override SavedState Serialize() { string[] imgPaths = new string[m_concepts.Count]; int index = 0; foreach (string imgPath in m_concepts.Values) { imgPaths[index] = imgPath; index++; } Debug.Log("Saving concept"); MementoHandler m = new MementoHandler(); //using memento pattern to handle saving/loading and also undo/redo in the ConceptState cs = new ConceptState(imgPaths, m_state); m.SetState(cs); //will move when a new concept is added, to handle undo/redo functionality return(m.GetState()); /* IFormatter formatter = new BinaryFormatter(); * Stream stream = new FileStream("C:\\Users\\Natspir\\NatspirProd\\Test.assetProd", FileMode.Create, FileAccess.Write); * formatter.Serialize(stream, m.GetState()); * stream.Close();*/ }