Source of test_menuitems.cpp


  1: /** @file test_menuitems.cpp */

  3: #include <iostream>
  4: #include <vector>
  5: using namespace std;

  7: #include "utilities.h"
  8: using Scobey::Menu;
  9: using Scobey::Pause;

 11: #include "menuitem_base.h"

 13: void InitializeMenuItems
 14: (
 15:     vector<MenuItem*>& menuItems //out
 16: );

 18: int main()
 19: {
 20:     vector<MenuItem*> menuItems;
 21:     InitializeMenuItems(menuItems);

 23:     extern string menuTitle;
 24:         Menu m(menuTitle);
 25:     for (vector<MenuItem*>::size_type i=0; i<menuItems.size(); i++)
 26:                 m.addOption(menuItems[i]->getOption());

 28:     int menuChoice;
 29:     do
 30:     {
 31:                 m.display();
 32:                 menuChoice = m.getChoice();
 33:         if (menuChoice != -1)
 34:             menuItems[menuChoice-1]->performAction();
 35:         else
 36:                     Pause(0, "\nProgram terminating due to invalid menu choices.\n");
 37:     }
 38:     while (menuChoice != 1 && menuChoice != -1);
 39: }