Esempio n. 1
0
            public static void ShowBooks()
            {
                Menu <Book> takedBooksMenu = new Menu <Book>(takedBooks)
                {
                    Info            = "Мои книги:",
                    ItemInstruction = (item) =>
                    {
                        return(item.Author + ", \"" + item.Name + "\" (" + item.Year + ")");
                    },
                    Empty = "Вы не брали книг"
                };

                takedBooksMenu.KeyInstructions += (key) =>
                {
                    if (key == ConsoleKey.Enter)
                    {
                        takedBooksMenu.DeleteSelectedItem();
                        if (takedBooks.Count != 0)
                        {
                            Library.MakeBookAvailable(takedBooks[takedBooksMenu.SelectedItem]);
                        }
                    }
                };
                takedBooksMenu.Help += String.Join("\n",
                                                   "Enter - вернуть книгу",
                                                   "Backspace - назад");
                takedBooksMenu.Use();
            }
Esempio n. 2
0
            public static void ShowUsers()
            {
                Menu <User> usersMenu = new Menu <User>(users)
                {
                    Info            = "Пользователи:",
                    Empty           = "Пользователей нет",
                    ItemInstruction = (item) =>
                    {
                        if (item.GetType() == typeof(Admin))
                        {
                            Console.ForegroundColor = ConsoleColor.White;
                        }
                        else
                        {
                            Console.ForegroundColor = ConsoleColor.DarkGray;
                        }
                        return(item.Name + " (" + item.Login + ":" + item.Password + ")");
                    },
                    ColorInfo = new Tuple <ConsoleColor, string>[]
                    {
                        new Tuple <ConsoleColor, string>(ConsoleColor.White, "администратор"),
                        new Tuple <ConsoleColor, string>(ConsoleColor.DarkGray, "пользователь")
                    },
                    AddItemInstruction = AddUser
                };

                usersMenu.KeyInstructions += (key) =>
                {
                    if (key == ConsoleKey.Enter)
                    {
                        EditUser(users[usersMenu.SelectedItem]);
                    }
                    if (key == ConsoleKey.Tab)
                    {
                        usersMenu.AddItem();
                    }
                    if (key == ConsoleKey.Delete)
                    {
                        usersMenu.DeleteSelectedItem();
                    }
                };
                usersMenu.Help += String.Join("\n",
                                              "Enter - редактировать",
                                              "Tab - добавить",
                                              "Delete - удалить",
                                              "Backspace - назад");
                usersMenu.Use();
            }
Esempio n. 3
0
            public static void ShowBooks()
            {
                Menu <Book> booksMenu = new Menu <Book>(books)
                {
                    Info            = "Библиотека:",
                    Empty           = "В библиотеке нет книг",
                    ItemInstruction = (item) =>
                    {
                        if (item.IsAvailable)
                        {
                            Console.ForegroundColor = ConsoleColor.Green;
                        }
                        else
                        {
                            Console.ForegroundColor = ConsoleColor.Red;
                        }
                        return(item.Author + ", \"" + item.Name + "\" (" + item.Year + ")");
                    },
                    ColorInfo = new Tuple <ConsoleColor, string>[]
                    {
                        new Tuple <ConsoleColor, string>(ConsoleColor.Green, "доступные книги"),
                        new Tuple <ConsoleColor, string>(ConsoleColor.Red, "недоступные книги")
                    },
                    AddItemInstruction = AddBook
                };

                if (currentUser.GetType() == typeof(Admin))
                {
                    booksMenu.KeyInstructions += (key) =>
                    {
                        if (key == ConsoleKey.Enter)
                        {
                            if (books.Count != 0)
                            {
                                EditBook(books[booksMenu.SelectedItem]);
                            }
                        }
                        if (key == ConsoleKey.Tab)
                        {
                            booksMenu.AddItem();
                        }
                        if (key == ConsoleKey.Delete)
                        {
                            booksMenu.DeleteSelectedItem();
                        }
                    };
                    booksMenu.Help += String.Join("\n",
                                                  "Enter - редактировать",
                                                  "Tab - добавить",
                                                  "Delete - удалить",
                                                  "Backspace - назад");
                }
                else if (currentUser.GetType() == typeof(User))
                {
                    booksMenu.KeyInstructions += (key) =>
                    {
                        if (key == ConsoleKey.Enter)
                        {
                            currentUser.TakeBook(books[booksMenu.SelectedItem]);
                            books[booksMenu.SelectedItem].IsAvailable = false;
                        }
                    };
                    booksMenu.Help += String.Join("\n",
                                                  "Enter - взять книгу",
                                                  "Backspace - назад");
                }
                booksMenu.Use();
            }