예제 #1
0
        public MainMenu()
        {
            ///created the dictionery for action
            Dictionary <string, ITakeAction> ActionItems   = new Dictionary <string, ITakeAction>();
            IMissleLauncher         missleLauncher         = new MissleLauncher.MissleLauncher();
            MissleFactory           missleFactory          = new MissleFactory();
            IMissleLauncherComputer missleLauncherComputer = new MissleLauncherComputer.MissleLauncherComputer(missleLauncher);
            ///create option 1 - add missle
            ITakeAction addMissle = new StoreNewMissle(missleFactory, missleLauncher);

            ActionItems.Add("1", addMissle);
            /// creating option 2 - launch missles
            ITakeAction LaunchMissles = new LaunchMissles(missleLauncherComputer);

            ActionItems.Add("2", LaunchMissles);
            /// creating option 3 - get report
            ITakeAction reportAction = new InventoryReportAction(missleLauncher);

            ActionItems.Add("3", reportAction);
            /// creating option 4 - remove missle
            ITakeAction removeMissle = new RemoveMissle(missleLauncher);

            ActionItems.Add("4", removeMissle);
            /// creating option 5 - exit program
            ITakeAction exitProgram = new ExitProgram();

            ActionItems.Add("5", exitProgram);
            ///creating list of validations
            List <IInputvalidation> inputvalidations = new List <IInputvalidation>()
            {
                new IntInputValidation(), new MainMenuValidation()
            };

            Menu = new StringMenu(ActionItems, inputvalidations);
        }
예제 #2
0
        static void Main(string[] args)
        {
            Dictionary <int, Option> numericOptions = new Dictionary <int, Option>()
            {
                { 1, new Option(Actions.PrintAssa, "Print Assa") }, { 2, new Option(Actions.PrintName, "Print a Name") }, { 3, new Option(Actions.PrintNumbers, "Print Your Numbers") }
            };
            NumericMenu numMenu = new NumericMenu(numericOptions, "My test menu", "Please choose one of the following:", true);

            Dictionary <string, Option> stringOptions = new Dictionary <string, Option>()
            {
                { "Yuval", new Option(Actions.PrintYuval, "Print Yuval") }, { "Name", new Option(Actions.PrintName, "Print a Name") }, { "Numbers", new Option(Actions.PrintNumbers, "Print Your Numbers") }, { "NumMenu", new Option(numMenu.Run, "Show numeric menu") }
            };
            StringMenu strMenu = new StringMenu(stringOptions, "My test menu", "Please choose one of the following:", true);


            strMenu.Run();
        }