コード例 #1
0
ファイル: Program.cs プロジェクト: nbalage90/DesignPatterns
        static void Main(string[] args)
        {
            Console.WriteLine("***State Pattern Demo***\n");
            TV tv = new TV();

            Console.WriteLine("User is pressing buttons in the following sequence:");
            Console.WriteLine("Off->Mute->On->On->Mute->Mute->Off\n");
            tv.PressOffButton();
            tv.PressMuteButton();
            tv.PressOnButton();
            tv.PressOnButton();
            tv.PressMuteButton();
            tv.PressMuteButton();
            tv.PressOffButton();
        }
コード例 #2
0
ファイル: On.cs プロジェクト: nbalage90/DesignPatterns
 public void PressMuteButton(TV context)
 {
     Console.WriteLine("You pressed Mute button. Going from On to Mute mode.");
     tvContext.CurrentState = new Mute(context);
 }
コード例 #3
0
ファイル: On.cs プロジェクト: nbalage90/DesignPatterns
 public On(TV context)
 {
     Console.WriteLine("TV is On now.");
     this.tvContext = context;
 }
コード例 #4
0
ファイル: On.cs プロジェクト: nbalage90/DesignPatterns
 public void PressOnButton(TV context)
 {
     Console.WriteLine("You pressed On button. TV is already in On state.");
 }
コード例 #5
0
ファイル: On.cs プロジェクト: nbalage90/DesignPatterns
 public void PressOffButton(TV context)
 {
     Console.WriteLine("You pressed Off button. Going from On to Off state.");
     tvContext.CurrentState = new Off(context);
 }
コード例 #6
0
ファイル: Mute.cs プロジェクト: nbalage90/DesignPatterns
 public void PressMuteButton(TV context)
 {
     Console.WriteLine("You pressed Mute button. TV is already in Mute mode.");
 }
コード例 #7
0
ファイル: Mute.cs プロジェクト: nbalage90/DesignPatterns
 public void PressOnButton(TV context)
 {
     Console.WriteLine("You pressed On button. Going from Mute mode to On state.");
     tvContext.CurrentState = new On(context);
 }
コード例 #8
0
ファイル: Mute.cs プロジェクト: nbalage90/DesignPatterns
 public Mute(TV context)
 {
     Console.WriteLine("TV is in Mute mode now.");
     this.tvContext = context;
 }
コード例 #9
0
ファイル: Off.cs プロジェクト: nbalage90/DesignPatterns
 public void PressMuteButton(TV context)
 {
     Console.WriteLine("You pressed Mute button. TV is already in Off state, so Mute operation will not work.");
 }
コード例 #10
0
ファイル: Off.cs プロジェクト: nbalage90/DesignPatterns
 public void PressOffButton(TV context)
 {
     Console.WriteLine("You pressed Off button. TV is already in Off state");
 }