public TextSampleForm() { InitializeComponent(); m_recorder = new TextEditor(textBox1); ChainManager.IniParams iniParams = new ChainManager.IniParams(); iniParams.RecordCollection.Add(m_recorder); iniParams.DontRecordWhenStatusError = true; m_chainManager = new ChainManager(iniParams); }
public MultiActorSampleForm() { InitializeComponent(); m_textEdiorRecorder1 = new TextEditor(textBox1); m_textEdiorRecorder2 = new TextEditor(textBox2); ChainManager.IniParams param = new ChainManager.IniParams() { DontRecordWhenStatusError = true, }; param.RecordCollection.Add(m_textEdiorRecorder1); param.RecordCollection.Add(m_textEdiorRecorder2); m_chainManager = new ChainManager(param); CheckUndoRedoStatus(); }
public void TestChainManager() { List<int> lst = new List<int>(); RecorderTester trr = new RecorderTester(lst); ChainManager.IniParams p = new ChainManager.IniParams(); p.RecordCollection.Add(trr); ChainManager cm = new ChainManager(p); // Start End Test cm.StartRecord(); trr.Add(1); trr.Add(2); cm.EndRecord(); List<int> result1 = new List<int> { 1, 2 }; if (result1.SequenceEqual(lst) == false) { throw new NotImplementedException(); } cm.StartRecord(); trr.Add(3); trr.Add(4); cm.EndRecord(); List<int> result2 = new List<int> { 1, 2, 3, 4 }; if (result2.SequenceEqual(lst) == false) { throw new NotImplementedException(); } // Undo Test cm.Undo(); if (result1.SequenceEqual(lst) == false) { throw new NotImplementedException(); } // Redo Test cm.Redo(); if (result2.SequenceEqual(lst) == false) { throw new NotImplementedException(); } // Cut Test cm.StartRecord(); trr.Add(3); trr.Add(4); cm.CutRecord(); if (result2.SequenceEqual(lst) == false) { throw new NotImplementedException(); } // Rollback Test cm.Rollback(); if (result1.SequenceEqual(lst) == false) { throw new NotImplementedException(); } }