private static void DelegateTest() { Delegates.MainMenu m_MainMenu = new Delegates.MainMenu(); Delegates.SubMenu dateTimeMenu = new Delegates.SubMenu("Show Date/Time", m_MainMenu.GetSubMenu()); Delegates.FunctionItem showTime = new Delegates.FunctionItem("Show Time"); ShowTime showTimeInstance = new ShowTime(); showTime.AddFunction(new SelectFunctionDelegate(showTimeInstance.Invoke)); dateTimeMenu.AddItem(showTime); Delegates.FunctionItem showDate = new Delegates.FunctionItem("Show Date"); ShowDate showDateInstance = new ShowDate(); showDate.AddFunction(showDateInstance.Invoke); dateTimeMenu.AddItem(showDate); Delegates.SubMenu versionAndCapitalsMenu = new Delegates.SubMenu("Version and Capitals", m_MainMenu.GetSubMenu()); Delegates.FunctionItem countCapitals = new Delegates.FunctionItem("Count Capitals"); CountCapitals countCapitalsInstance = new CountCapitals(); countCapitals.AddFunction(countCapitalsInstance.Invoke); versionAndCapitalsMenu.AddItem(countCapitals); Delegates.FunctionItem showVersion = new Delegates.FunctionItem("Show Version"); ShowVersion showVersionInstance = new ShowVersion(); showVersion.AddFunction(showVersionInstance.Invoke); versionAndCapitalsMenu.AddItem(showVersion); m_MainMenu.AddMenuItem(dateTimeMenu); m_MainMenu.AddMenuItem(versionAndCapitalsMenu); m_MainMenu.Show(); }
public static Delegates.MainMenu CreateMainMenuDelegate() { Delegates.MainMenu myMenu = new Delegates.MainMenu("Main Menu - Delegates"); Delegates.MainMenu subMenu1 = new Delegates.MainMenu("Version and Digits"); Delegates.MainMenu subMenu2 = new Delegates.MainMenu("Show Date / Time"); subMenu1.AddMenuItem("Count Capitals", MethodsDelegates.CountCapitals); subMenu1.AddMenuItem("Show Version", MethodsDelegates.ShowVersion); myMenu.AddMenuItem(subMenu1); myMenu.AddMenuItem(subMenu2); subMenu2.AddMenuItem("Show Time", MethodsDelegates.ShowTime); subMenu2.AddMenuItem("Show Date", MethodsDelegates.ShowDate); return(myMenu); }
public static void runDelegates() { Delegates.MainMenu MainMenu = new Delegates.MainMenu("Main Menu - Delegates"); Delegates.MenuItem ShowDateOrTime = new Delegates.MenuItem(1, "Show Date/Time"); Delegates.MenuItem VersionAndCapitals = new Delegates.MenuItem(2, "Version And Capitals"); MainMenu.AddMenuItem(ShowDateOrTime); MainMenu.AddMenuItem(VersionAndCapitals); Delegates.MenuItem ShowTime = new Delegates.ActionMenuItem(1, "Show Time"); Delegates.MenuItem ShowDate = new Delegates.ActionMenuItem(2, "Show Date"); Delegates.MenuItem CountCapitals = new Delegates.ActionMenuItem(1, "Count Capitals"); Delegates.MenuItem DisplayVersion = new Delegates.ActionMenuItem(2, "Display Version"); ShowDateOrTime.AddSubItem(ShowTime); ShowDateOrTime.AddSubItem(ShowDate); VersionAndCapitals.AddSubItem(CountCapitals); VersionAndCapitals.AddSubItem(DisplayVersion); ShowDate.AttachObserver(new Delegates.ReportChosenDelegate(ShowCurrentDate)); ShowTime.AttachObserver(new Delegates.ReportChosenDelegate(ShowCurrentTime)); CountCapitals.AttachObserver(new Delegates.ReportChosenDelegate(CountCapitalsMethod)); DisplayVersion.AttachObserver(new Delegates.ReportChosenDelegate(DisplayVersionMethod)); MainMenu.Show(); }