1: // Filename: SHELL.CPP
2: // Purpose: Provides a shell starter program utilizing both
3: // a "menu" and on-line help or other "text items".
5: #include <iostream>
6: using namespace std;
8: #include "MENU.H" // Header file for the Menu class
9: #include "TXITEMS.H" // Header file for the TextItems class
11: int main()
12: {
13: Menu m("Main Menu"); // Declare a Menu object "m" with title "Main Menu"
14: m.AddOption("Quit"); // Then add four options to the menu "m" ...
15: m.AddOption("Get information");
16: m.AddOption("Do something");
17: m.AddOption("Do something else");
19: TextItems itemList("SHELL.DAT"); // Load text items into memory
20: int menuChoice;
22: do
23: {
24: m.Display(); // Display the menu
25: menuChoice = m.Choice(); // Get the user's choice
27: if (menuChoice == -1) // If user choice not OK ...
28: {
29: cout << "\nUser failed to make valid menu choice."
30: << "\nProgram now terminating.";
31: return 1; // Exit program, indicating unsuccessful termination.
32: }
34: switch (menuChoice) // Display text item depending on user's choice
35: {
36: case 1: /* Do nothing */; break;
37: case 2: itemList.DisplayItem("Program Info"); break;
38: case 3: itemList.DisplayItem("Doing Something"); break;
39: case 4: itemList.DisplayItem("Doing Something Else"); break;
40: }
42: } while (menuChoice != 1); // Quit when user chooses first menu option
44: return 0;
45: }