コード例 #1
0
        public void Undo()
        {
            if (_commands.Count == 0 || Head <= 0)
            {
                return;
            }

            Head -= 1;
            Commands.Command command = _commands[Head];
            command.Undo();
        }
コード例 #2
0
 private void AcceptCommand(string cmd, string path)
 {
     if (commands.ContainsKey(cmd))
     {
         Commands.Command cmnd = (Commands.Command)commands[cmd];
         cmnd.Path = path;
         cmnd.Execute();
     }
     else
     {
         Console.Beep();
         Console.WriteLine("Bad command!");
     }
 }
コード例 #3
0
        public void ExecuteNext()
        {
            if (_commands.Count == 0 || Head >= _commands.Count)
            {
                return;
            }
            if (Head == -1)
            {
                Head = 0;
            }

            Commands.Command command = _commands[Head];
            command.Execute();
            Head += 1;
        }
コード例 #4
0
ファイル: Kitchen.cs プロジェクト: gunklv/design_patterns_gow
 public void AddRequest(Commands.Command command)
 {
     _commands.Add(command);
 }