main
1using System;
2using System.Collections.Generic;
3using gorilla.commons.utility;
4using MoMoney.DTO;
5using MoMoney.Presentation.Presenters;
6using momoney.presentation.views;
7using MoMoney.Presentation.Views;
8using MoMoney.Presentation.Winforms.Helpers;
9using MoMoney.Presentation.Winforms.Krypton;
10using MoMoney.Presentation.Winforms.Resources;
11
12namespace MoMoney.Presentation.Winforms.Views
13{
14 public partial class AddNewIncomeView : ApplicationDockedWindow, IAddNewIncomeView
15 {
16 ControlAction<EventArgs> submit_button = x => { };
17 readonly IBindableList<CompanyDTO> companies_list;
18
19 public AddNewIncomeView()
20 {
21 InitializeComponent();
22 titled("Add Income")
23 .icon(ApplicationIcons.AddNewIncome);
24 ux_submit_button.Click += (sender, e) => submit_button(e);
25
26 companies_list = ux_companys.create_for<CompanyDTO>();
27 }
28
29 public void attach_to(IAddNewIncomePresenter presenter)
30 {
31 submit_button = x => presenter.submit_new(create_income());
32 }
33
34 public void run(IEnumerable<CompanyDTO> companies)
35 {
36 companies_list.bind_to(companies);
37 }
38
39 public void run(IEnumerable<IncomeInformationDTO> incomes)
40 {
41 ux_income_received_grid.DataSource = incomes.databind();
42 }
43
44 IncomeSubmissionDTO create_income()
45 {
46 return new IncomeSubmissionDTO
47 {
48 company_id = companies_list.get_selected_item().id,
49 amount = ux_amount.Text.to_double(),
50 recieved_date = ux_date_received.Value
51 };
52 }
53 }
54}