static void Main(string[] args) { Console.WriteLine("Enter text!\n"); TextOriginator txt = new TextOriginator(); TextCaretaker ct = new TextCaretaker(); string s = Console.ReadLine(); txt.setTextAndDate(s); Console.WriteLine(txt.ToString()); ct.setSave(txt.Save()); Console.WriteLine("\nEnter new text!\n"); s = Console.ReadLine(); txt.setTextAndDate(s); Console.WriteLine(txt.ToString()); txt.Load(ct.getSave()); Console.WriteLine("\nRollback!\n"); Console.WriteLine(txt.ToString()); }
static void Main(string[] args) { TextOriginator textOriginator = new TextOriginator(); textOriginator.Text = "asm"; textOriginator.CursorPosition = 3; // Anlık durum yığına ekleniyor. textOriginator.Save(); textOriginator.Text = "asmi"; textOriginator.CursorPosition = 4; // Anlık durum yığına ekleniyor. textOriginator.Save(); textOriginator.Text = "asmin"; textOriginator.CursorPosition = 5; // Anlık durum yığına ekleniyor. textOriginator.Save(); // Yığındaki bir önceki duruma geçiyor. textOriginator.Undo(); Console.WriteLine(textOriginator.ToString()); // Yığındaki bir önceki duruma geçiyor. textOriginator.Undo(); Console.WriteLine(textOriginator.ToString()); // Yığındaki bir önceki duruma geçiyor. textOriginator.Undo(); Console.WriteLine(textOriginator.ToString()); //output: // text: asmin, cursor position: 5 // text: asmi, cursor position: 4 // text: asm, cursor position: 3 }