Commit 30925fe
Changed files (5)
product
desktop.ui
product/desktop.ui/Properties/AssemblyInfo.cs
@@ -49,5 +49,5 @@ using System.Windows;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("2011.3.17.2242")]
-[assembly: AssemblyFileVersion("2011.3.17.2242")]
+[assembly: AssemblyVersion("2011.3.17.238")]
+[assembly: AssemblyFileVersion("2011.3.17.238")]
product/desktop.ui/views/AddNewIncomeDialog.xaml
@@ -6,7 +6,7 @@
<StackPanel>
<DockPanel>
<Label>Income Amount ($):</Label>
- <TextBox Text="{Binding Path=amount}"></TextBox>
+ <TextBox Text="{Binding Path=amount, UpdateSourceTrigger=PropertyChanged}"></TextBox>
</DockPanel>
<DockPanel LastChildFill="False" HorizontalAlignment="Right">
<Button IsDefault="True" Command="{Binding Path=Add}">_Add</Button>
product/desktop.ui/views/TaxSummaryTab.xaml
@@ -7,6 +7,7 @@
<StackPanel>
<StackPanel DataContext="{Binding Path=Selected}">
<Label>Total Income:</Label>
+ <Label Content="{Binding Path=TotalIncome}"></Label>
<Label>Federal Tax Rates for 2011</Label>
<ListView>
<ListViewItem> * 15% on the first $41,544 of taxable income, + </ListViewItem>
@@ -14,7 +15,6 @@
<ListViewItem> * 26% on the next $45,712 of taxable income (on the portion of taxable income between $83,088 and $128,800), + </ListViewItem>
<ListViewItem> * 29% of taxable income over $128,800. </ListViewItem>
</ListView>
- <Label Content="{Binding Path=TotalIncome}"></Label>
<Label>Federal Taxes:</Label>
<Label Content="{Binding Path=FederalTaxes}"></Label>
<Label>Provincial Tax Rates for 2011</Label>
product/desktop.ui/WPFApplicationController.cs
@@ -1,3 +1,4 @@
+using System;
using System.Windows;
using System.Windows.Controls;
using solidware.financials.infrastructure.eventing;
@@ -10,42 +11,48 @@ namespace solidware.financials.windows.ui
PresenterFactory factory;
EventAggregator event_aggregator;
- public WpfApplicationController(RegionManager region_manager, PresenterFactory factory, EventAggregator event_aggregator)
+ public WpfApplicationController(RegionManager region_manager, PresenterFactory factory,
+ EventAggregator event_aggregator)
{
this.region_manager = region_manager;
this.event_aggregator = event_aggregator;
this.factory = factory;
}
- public void add_tab<Presenter, View>() where Presenter : TabPresenter where View : FrameworkElement, Tab<Presenter>, new()
+ public void add_tab<Presenter, View>() where Presenter : TabPresenter
+ where View : FrameworkElement, Tab<Presenter>, new()
{
- var presenter = factory.create<Presenter>();
- event_aggregator.subscribe(presenter);
- presenter.present();
- region_manager.region<TabControl>(x => x.Items.Add(new TabItem
- {
- Header = presenter.Header,
- Content = new View {DataContext = presenter}
- }));
+ var presenter = open<Presenter>();
+ configure_region<TabControl>(x => x.Items.Add(new TabItem
+ {
+ Header = presenter.Header,
+ Content = new View {DataContext = presenter}
+ }));
}
- public void launch<Presenter, Dialog>() where Presenter : DialogPresenter where Dialog : FrameworkElement, Dialog<Presenter>, new()
+ public void launch<Presenter, Dialog>() where Presenter : DialogPresenter
+ where Dialog : FrameworkElement, Dialog<Presenter>, new()
{
- var presenter = factory.create<Presenter>();
- var dialog = new Dialog {DataContext = presenter};
- presenter.present();
- dialog.open(presenter);
+ new Dialog().open(factory.create<Presenter>());
}
- public void load_region<TPresenter, Region>() where TPresenter : Presenter where Region : FrameworkElement, View<TPresenter>, new()
+ public void load_region<TPresenter, Region>() where TPresenter : Presenter
+ where Region : FrameworkElement, View<TPresenter>, new()
+ {
+ configure_region<Region>(x => { x.DataContext = open<TPresenter>(); });
+ }
+
+ void configure_region<TRegion>(Action<TRegion> configure) where TRegion : UIElement
+ {
+ region_manager.region(configure);
+ }
+
+ TPresenter open<TPresenter>() where TPresenter : Presenter
{
var presenter = factory.create<TPresenter>();
event_aggregator.subscribe(presenter);
presenter.present();
- region_manager.region<Region>(x =>
- {
- x.DataContext = presenter;
- });
+ return presenter;
}
}
}
\ No newline at end of file
product/desktop.ui/WPFDialog.cs
@@ -13,8 +13,10 @@ namespace solidware.financials.windows.ui
public void open(TPresenter presenter)
{
- presenter.close = () => Close();
+ DataContext = presenter;
Owner = Application.Current.MainWindow;
+ presenter.close = () => Close();
+ presenter.present();
ShowDialog();
}
}