summaryrefslogtreecommitdiff
path: root/src/Notepad/Presentation/Views/Menu/Mappers/SubMenuToToolStripMenuItemMapper.cs
blob: 74efbbdf3ce2301161e7b227aa3156720f231359 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System.Windows.Forms;
using Notepad.Presentation.Model.Menu;
using Notepad.Presentation.Views.Menu.Mappers;

namespace Notepad.Presentation.Views.Menu.Mappers {
    public class SubMenuToToolStripMenuItemMapper : ISubMenuToToolStripMenuItemMapper {
        private readonly IMenuItemToToolStripMenuItemMapper mapper;

        public SubMenuToToolStripMenuItemMapper(IMenuItemToToolStripMenuItemMapper mapper) {
            this.mapper = mapper;
        }

        public ToolStripMenuItem MapFrom(ISubMenu item) {
            var toolStripMenuItem = new ToolStripMenuItem(item.Name());
            foreach (var menuItem in item.AllMenuItems()) {
                toolStripMenuItem.DropDownItems.Add(mapper.MapFrom(menuItem));
            }
            return toolStripMenuItem;
        }
    }
}