public void Initialize(DetailsPresenterModel _presenterModel, DetailsViewModel _viewModel)
 {
     presenterModel = _presenterModel;
     viewModel      = _viewModel;
     presenterModel.OnDetailsLoaded += LoadDetails;
     presenterModel.OnDetailsClosed += CloseWindow;
 }
    private void Start()
    {
        searchPM        = new SearchPresenterModel();
        searchPresenter = new SearchPresenterImpl(searchPM);

        searchInteractor = new MovieSearchImpl(searchPresenter, dataLoader, textureLoader);

        searchVM         = new SearchViewModel();
        searchController = new SearchController(searchInteractor, searchVM);

        detailsPM        = new DetailsPresenterModel();
        detailsPresenter = new DetailsPresenterImpl(detailsPM);

        detailsInteractor = new MovieDetailerImpl(detailsPresenter, textureLoader, dataLoader);

        detailsVM         = new DetailsViewModel();
        detailsController = new DetailsController(detailsInteractor, detailsVM);

        mainSearchView.Initialize(searchVM, searchPM, detailsController.SpecificSearch);
        detailsView.Initialize(detailsPM, detailsVM);
        relatedSearchView.SetButtonActions(detailsController.SpecificSearch);
    }
 public DetailsPresenterImpl(DetailsPresenterModel _model)
 {
     model = _model;
 }