diff options
| author | mo khan <mo@mokhan.ca> | 2010-10-19 12:31:58 -0600 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2010-10-19 12:31:58 -0600 |
| commit | 6d57e6b7a56727e5189d2e4bf7b62f33c12f9ada (patch) | |
| tree | e60cdba81e438811ed5217161ef46a844dbdc05e | |
| parent | 158ecc73bfdc1a7e1331973518688ecab895479f (diff) | |
| parent | dbb3a35c463071b0df52d0c8e42b26b00ef024de (diff) | |
Merge branch 'master' of github.com:arcresources/MVPtoMVVM
| -rwxr-xr-x | src/MVPtoMVVM.mvp/TodoItemView.xaml.cs | 3 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs | 32 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs | 36 |
3 files changed, 35 insertions, 36 deletions
diff --git a/src/MVPtoMVVM.mvp/TodoItemView.xaml.cs b/src/MVPtoMVVM.mvp/TodoItemView.xaml.cs index 662eef7..ffb2b89 100755 --- a/src/MVPtoMVVM.mvp/TodoItemView.xaml.cs +++ b/src/MVPtoMVVM.mvp/TodoItemView.xaml.cs @@ -6,9 +6,6 @@ using MVPtoMVVM.mvp.views; namespace MVPtoMVVM.mvp
{
- /// <summary>
- /// Interaction logic for TodoItemView.xaml
- /// </summary>
public partial class TodoItemView : ITodoItemView
{
private readonly IMvpPresenter parent;
diff --git a/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs b/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs index 9dd8f93..e949ca7 100644 --- a/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs +++ b/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs @@ -23,37 +23,39 @@ namespace MVPtoMVVM.mvp.presenters InitializeView();
}
- public void AddNewItem()
+ private void InitializeView()
{
- var items = new List<ITodoItemPresenter>(view.GetTodoItems());
- var newItem = new TodoItemPresenter(itemRepository) {Description = string.Empty, DueDate = DateTime.Today} ;
- items.Add(newItem);
- view.SetTodoItems(items);
+ RefreshItems();
}
- public void CancelAllChanges()
+ private void RefreshItems()
{
- RefreshItems();
+ var todoItemPresenters = itemRepository.GetAll().Select(MapFrom);
+ view.ShowTodoItems(todoItemPresenters);
}
- public void Remove(int itemId)
+ private ITodoItemPresenter MapFrom(TodoItem todoItem)
{
- view.SetTodoItems(view.GetTodoItems().Where(x => x.Id != itemId));
+ return new TodoItemPresenter(itemRepository) { Description = todoItem.Description, DueDate = todoItem.DueDate, Id = todoItem.Id };
}
- private void InitializeView()
+ public void AddNewItem()
{
- RefreshItems();
+ var items = new List<ITodoItemPresenter>(view.GetTodoItems());
+ var newItem = new TodoItemPresenter(itemRepository) {Description = string.Empty, DueDate = DateTime.Today} ;
+ items.Add(newItem);
+ view.ShowTodoItems(items);
}
- private void RefreshItems()
+ public void CancelAllChanges()
{
- view.SetTodoItems(itemRepository.GetAll().Select(MapFrom));
+ RefreshItems();
}
- private ITodoItemPresenter MapFrom(TodoItem todoItem)
+ public void Remove(int itemId)
{
- return new TodoItemPresenter(itemRepository) { Description = todoItem.Description, DueDate = todoItem.DueDate, Id = todoItem.Id};
+ view.ShowTodoItems(view.GetTodoItems().Where(x => x.Id != itemId));
}
+
}
}
\ No newline at end of file diff --git a/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs b/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs index 269a569..5fffc84 100644 --- a/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs +++ b/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs @@ -22,14 +22,6 @@ namespace MVPtoMVVM.mvp.presenters InitializeView();
}
- public void SetItem(TodoItem item)
- {
- Id = item.Id;
- Description = item.Description;
- DueDate = item.DueDate;
- IsDirty = false;
- }
-
private void InitializeView()
{
view.Id = Id;
@@ -38,6 +30,24 @@ namespace MVPtoMVVM.mvp.presenters view.SaveButtonEnabled = false;
}
+ private void UpdateControlState()
+ {
+ view.SaveButtonEnabled = IsDirty && IsDescriptionValid() && IsDueDateValid();
+ view.DescriptionHasValidationErrors = !IsDescriptionValid();
+ view.DescriptionValidationMessage = GetDescriptionValidationMessage();
+ view.DueDateHasValidationErrors = !IsDueDateValid();
+ view.DueDateValidationMessage = GetDueDateValidationMessage();
+ view.IsDueSoon = IsDueSoon();
+ }
+
+ public void SetItem(TodoItem item)
+ {
+ Id = item.Id;
+ Description = item.Description;
+ DueDate = item.DueDate;
+ IsDirty = false;
+ }
+
public void SaveItem()
{
var item = GetTodoItem();
@@ -88,16 +98,6 @@ namespace MVPtoMVVM.mvp.presenters }
}
- private void UpdateControlState()
- {
- view.SaveButtonEnabled = IsDirty && IsDescriptionValid() && IsDueDateValid();
- view.DescriptionHasValidationErrors = !IsDescriptionValid();
- view.DescriptionValidationMessage = GetDescriptionValidationMessage();
- view.DueDateHasValidationErrors = !IsDueDateValid();
- view.DueDateValidationMessage = GetDueDateValidationMessage();
- view.IsDueSoon = IsDueSoon();
- }
-
private bool IsDescriptionValid()
{
return description.Length > 0;
|
