Beispiel #1
0
        private void ShowMainMenu(View.Console view, Model.MemberRegister register)
        {
            while (true)
            {
                view.ShowMenu(View.Console.MenuEvent.MainMenu, null);
                switch (view.GetMenuSelection())
                {
                case View.Console.MenuEvent.AddNewMember:
                    HandleEventNewMember(view, register);
                    break;

                case View.Console.MenuEvent.MemberListMenu:
                    HandleEventShowMemberListMenu(view, register);
                    break;

                case View.Console.MenuEvent.MemberInfoMenu:
                    view.ShowInputInfo(View.Console.MenuEvent.MemberInfoMenu, null);
                    int id = view.InputMemberID();
                    if (id == 0)
                    {
                        break;
                    }

                    try
                    {
                        Model.Member m = register.GetMember(id);
                        HandleEventShowMemberInfoMenu(m, view, register);
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.NoMemberWithId, id.ToString());
                        view.Wait();
                    }
                    break;

                case View.Console.MenuEvent.DeleteMember:
                    view.ShowInputInfo(View.Console.MenuEvent.DeleteMember, null);
                    id = view.InputMemberID();
                    if (id == 0)
                    {
                        break;
                    }

                    try
                    {
                        register.DeleteMember(register.GetMember(id));
                        register.Save();
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.NoMemberWithId, id.ToString());
                        view.Wait();
                    }
                    break;

                case View.Console.MenuEvent.Exit:
                    return;
                }
            }
        }
Beispiel #2
0
        public void HandleEventShowMemberInfoMenu(Model.Member member, View.Console view, Model.MemberRegister register)
        {
            while (true)
            {
                view.ShowMenu(View.Console.MenuEvent.MemberInfoMenu, member);
                switch (view.GetMenuSelection())
                {
                case View.Console.MenuEvent.EditMemberName:
                    view.ShowInputInfo(View.Console.MenuEvent.EditMemberName, member);
                    try
                    {
                        member.Name = view.InputMemberName();
                        register.Save();
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.InvalidMemberName, null);
                        view.Wait();
                    }
                    break;

                case View.Console.MenuEvent.EditMemberPersonalNumber:
                    view.ShowInputInfo(View.Console.MenuEvent.EditMemberPersonalNumber, member);
                    try
                    {
                        member.PersonalNumber = view.InputMemberPersonalNumber();
                        register.Save();
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.InvalidPersonalNumber, null);
                        view.Wait();
                    }
                    break;

                case View.Console.MenuEvent.ManageBoatsMenu:
                    HandleEventShowManageBoatsMenu(member, view, register);
                    register.Save();
                    break;

                case View.Console.MenuEvent.Back:
                    // exit menu.
                    return;
                }
            }
        }
Beispiel #3
0
        private void HandleEventShowEditBoatMenu(Model.Member member, Model.Boat boat,
                                                 View.Console view, Model.MemberRegister register)
        {
            while (true)
            {
                view.ShowMenu(View.Console.MenuEvent.EditBoatMenu, member);
                switch (view.GetMenuSelection())
                {
                case View.Console.MenuEvent.EditBoatModel:
                    view.ShowInputInfo(View.Console.MenuEvent.EditBoatModel, member);
                    try
                    {
                        boat.Model = (Model.Boat.BoatModel)view.InputBoatModel();
                        register.Save();
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.InvalidBoatModel, null);
                        view.Wait();
                        return;
                    }
                    break;

                case View.Console.MenuEvent.EditBoatLength:
                    view.ShowInputInfo(View.Console.MenuEvent.EditBoatLength, member);
                    try
                    {
                        boat.Length = view.InputBoatLenght();
                        register.Save();
                        break;
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.InvalidBoatLenght, null);
                        view.Wait();
                        break;
                    }

                case View.Console.MenuEvent.Back:
                    // exit menu
                    return;
                }
            }
        }
Beispiel #4
0
        public void HandleEventShowMemberListMenu(View.Console view, Model.MemberRegister register)
        {
            while (true)
            {
                view.ShowMenu(View.Console.MenuEvent.MemberListMenu, null);
                switch (view.GetMenuSelection())
                {
                case View.Console.MenuEvent.MemberListSimple:
                    view.ShowMemberList(register.GetMemberList(), true);
                    view.Wait();
                    break;

                case View.Console.MenuEvent.MemberListComplete:
                    view.ShowMemberList(register.GetMemberList(), false);
                    view.Wait();
                    break;

                case View.Console.MenuEvent.Back:
                    // exit menu.
                    return;
                }
            }
        }
Beispiel #5
0
        public void HandleEventShowManageBoatsMenu(Model.Member member, View.Console view, Model.MemberRegister register)
        {
            while (true)
            {
                view.ShowMenu(View.Console.MenuEvent.ManageBoatsMenu, member);
                int boatId;

                switch (view.GetMenuSelection())
                {
                case View.Console.MenuEvent.AddBoat:
                    HandleEventAddNewBoat(member, view, register);
                    break;

                case View.Console.MenuEvent.EditBoatMenu:
                    if (member.GetBoatCount() == 1)
                    {
                        boatId = member.GetBoats().First().ID;
                    }
                    else
                    {
                        view.ShowInputInfo(View.Console.MenuEvent.EditBoatMenu, member);
                        boatId = view.InputBoatID();
                    }

                    try
                    {
                        Model.Boat b = member.GetBoat(boatId);
                        HandleEventShowEditBoatMenu(member, b, view, register);
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.NoBoatWithId, boatId.ToString());
                        view.Wait();
                    }
                    break;

                case View.Console.MenuEvent.DeleteBoat:
                    if (member.GetBoatCount() == 1)
                    {
                        boatId = member.GetBoats().First().ID;
                    }
                    else
                    {
                        view.ShowInputInfo(View.Console.MenuEvent.DeleteBoat, member);
                        boatId = view.InputBoatID();
                    }

                    try
                    {
                        member.DeleteBoat(boatId);
                        break;
                    }
                    catch (ArgumentException)
                    {
                        view.ShowErrorMessage(View.Console.Error.NoBoatWithId, boatId.ToString());
                        view.Wait();
                    }
                    break;

                case View.Console.MenuEvent.Back:
                    // exit menu
                    return;
                }
            }
        }