main
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Windows.Forms;
5using MoMoney.DTO;
6using MoMoney.Presentation.Presenters;
7using momoney.presentation.views;
8using MoMoney.Presentation.Views;
9using MoMoney.Presentation.Winforms.Databinding;
10using MoMoney.Presentation.Winforms.Resources;
11using gorilla.commons.utility;
12
13namespace MoMoney.Presentation.Winforms.Views
14{
15 public partial class AddCompanyView : ApplicationDockedWindow, IAddCompanyView
16 {
17 ControlAction<EventArgs> submit_button = x => {};
18 readonly RegisterNewCompany dto;
19
20 public AddCompanyView()
21 {
22 InitializeComponent();
23 titled("Add A Company")
24 .icon(ApplicationIcons.AddCompany);
25 dto = new RegisterNewCompany();
26
27 listView1.View = View.LargeIcon;
28 listView1.LargeImageList = new ImageList();
29 ApplicationIcons.all().each(x => listView1.LargeImageList.Images.Add(x.name_of_the_icon, x));
30 listView1.Columns.Add("Name");
31
32 ux_submit_button.Click += (x, y) => submit_button(y);
33 ux_cancel_button.Click += (x, y) => Close();
34 }
35
36 public void attach_to(IAddCompanyPresenter presenter)
37 {
38 ux_company_name.bind_to(dto, x => x.company_name);
39 submit_button = x => presenter.submit(dto);
40 }
41
42 public void run(IEnumerable<CompanyDTO> companies)
43 {
44 ux_companys_listing.DataSource = companies.databind();
45
46 listView1.Items.Clear();
47 listView1.Items.AddRange(companies.Select(x => new ListViewItem(x.name, 0)).ToArray());
48 }
49 }
50}