Switch to MVP pattern

This commit is contained in:
Anton Kasyanov
2016-05-22 18:37:04 +03:00
parent 5e276b7a98
commit 362fd0b8d4
41 changed files with 2060 additions and 1265 deletions

View File

@@ -0,0 +1,19 @@
namespace EveOPreview
{
public abstract class Presenter<TView, TArgument> : IPresenter<TArgument>
where TView : IView
{
// Properties are used instead of fields so the code remains CLS compliant
// 'protected readonly' fields would result in non-CLS compliant code
protected TView View { get; private set; }
protected IApplicationController Controller { get; private set; }
protected Presenter(IApplicationController controller, TView view)
{
this.Controller = controller;
this.View = view;
}
public abstract void Run(TArgument args);
}
}