main
1using System.Collections;
2using System.Collections.Generic;
3using gorilla.commons.utility;
4using MoMoney.Presentation.Model.Menu.File;
5using MoMoney.Presentation.Model.Menu.Help;
6using MoMoney.Presentation.Model.Menu.window;
7
8namespace MoMoney.Presentation.Model.Menu
9{
10 public interface ISubMenuRegistry : Registry<ISubMenu> {}
11
12 public class SubMenuRegistry : ISubMenuRegistry
13 {
14 readonly IFileMenu file_menu;
15 readonly IWindowMenu window_menu;
16 readonly IHelpMenu help_menu;
17
18 public SubMenuRegistry(IFileMenu file_menu, IWindowMenu window_menu, IHelpMenu help_menu)
19 {
20 this.file_menu = file_menu;
21 this.window_menu = window_menu;
22 this.help_menu = help_menu;
23 }
24
25 public IEnumerable<ISubMenu> all()
26 {
27 yield return file_menu;
28 yield return window_menu;
29 yield return help_menu;
30 }
31
32 public IEnumerator<ISubMenu> GetEnumerator()
33 {
34 return all().GetEnumerator();
35 }
36
37 IEnumerator IEnumerable.GetEnumerator()
38 {
39 return GetEnumerator();
40 }
41 }
42}