public MainFormPresenter(IMainFormView view, IMainFormModel mainFormModel, IInfoTextModel infoTextModel, IWebCollectionProvider webCollectionProvider)
        {
            _view          = view;
            _mainFormModel = mainFormModel;

            //Combined listing (Collections+Beatmaps)
            BeatmapListingModel = new BeatmapListingModel(null);
            BeatmapListingModel.BeatmapsDropped        += BeatmapListing_BeatmapsDropped;
            BeatmapListingModel.SelectedBeatmapChanged += BeatmapListingViewOnSelectedBeatmapChanged;
            CollectionListingModel = new CollectionListingModel(Initalizer.LoadedCollections, _mainFormModel.GetCollectionEditor());
            CollectionListingModel.CollectionEditing          += CollectionListing_CollectionEditing;
            CollectionListingModel.SelectedCollectionsChanged += CollectionListing_SelectedCollectionsChanged;
            new CombinedListingPresenter(_view.CombinedListingView, CollectionListingModel, BeatmapListingModel, webCollectionProvider, mainFormModel.GetUserDialogs());

            //Beatmap preview stuff (images, beatmap info like ar,cs,stars...)
            _combinedBeatmapPreviewModel = new CombinedBeatmapPreviewModel();
            var presenter = new CombinedBeatmapPreviewPresenter(_view.CombinedBeatmapPreviewView, _combinedBeatmapPreviewModel);

            presenter.MusicControlModel.NextMapRequest += (s, a) => { _view.CombinedListingView.beatmapListingView.SelectNextOrFirst(); };

            _collectionTextModel = new CollectionTextModel();
            new CollectionTextPresenter(_view.CollectionTextView, _collectionTextModel);

            //General information (Collections loaded, update check etc.)
            InfoTextModel = infoTextModel;
            new InfoTextPresenter(_view.InfoTextView, InfoTextModel);
        }
 public void UnBind(IBeatmapListingModel beatmapListingModel, ICollectionListingModel collectionListingModel = null)
 {
     beatmapListingModel.BeatmapOperation -= BeatmapListingModel_BeatmapOperation;
     if (collectionListingModel != null)
     {
         collectionListingModel.CollectionEditing -= CollectionListingModel_CollectionEditing;
     }
 }
 public CollectionListingPresenter(ICollectionListingView view, ICollectionListingModel model)
 {
     _view             = view;
     _view.RightClick += _view_RightClick;
     _view.SelectedCollectionsChanged += ViewOnSelectedCollectionsChanged;
     _view.BeatmapsDropped            += ViewOnBeatmapsDropped;
     _model = model;
     _model.CollectionsChanged += ModelOnCollectionsChanged;
     Collections = _model.GetCollections();
 }
 public CollectionListingPresenter(ICollectionListingView view, ICollectionListingModel model, IUserDialogs userDialogs)
 {
     _view             = view;
     _view.RightClick += _view_RightClick;
     _view.SelectedCollectionsChanged += ViewOnSelectedCollectionsChanged;
     _view.BeatmapsDropped            += ViewOnBeatmapsDropped;
     _view.OnCollectionReorder        += ViewOnCollectionReorder;
     _model       = model;
     _userDialogs = userDialogs;
     _model.CollectionsChanged += ModelOnCollectionsChanged;
     Collections = _model.GetCollections();
 }
Beispiel #5
0
        public CombinedListingPresenter(ICombinedListingView view, ICollectionListingModel collectionListingModel, IBeatmapListingModel beatmapListingModel)
        {
            _view            = view;
            _beatmapsView    = _view.beatmapListingView;
            _collectionsView = _view.CollectionListingView;

            BeatmapListingModel = beatmapListingModel;
            new BeatmapListingPresenter(_beatmapsView, BeatmapListingModel);
            new CollectionListingPresenter(_collectionsView, collectionListingModel);

            _collectionsView.SelectedCollectionChanged  += CollectionsViewOnSelectedCollectionChanged;
            _collectionsView.SelectedCollectionsChanged += CollectionsViewOnSelectedCollectionsChanged;
        }
        public CombinedListingPresenter(ICombinedListingView view, ICollectionListingModel collectionListingModel, IBeatmapListingModel beatmapListingModel, IWebCollectionProvider webCollectionProvider, IUserDialogs userDialogs)
        {
            _view            = view;
            _beatmapsView    = _view.beatmapListingView;
            _collectionsView = _view.CollectionListingView;

            _collectionListingModel = collectionListingModel;
            BeatmapListingModel     = beatmapListingModel;

            _webCollectionProvider = webCollectionProvider;
            _userDialogs           = userDialogs;
            new BeatmapListingPresenter(_beatmapsView, BeatmapListingModel);
            new CollectionListingPresenter(_collectionsView, collectionListingModel, userDialogs);

            BeatmapListingModel.SelectedBeatmapsChanged += BeatmapListingModelOnSelectedBeatmapsChanged;
            _collectionsView.SelectedCollectionChanged  += CollectionsViewOnSelectedCollectionChanged;
            _collectionsView.SelectedCollectionsChanged += CollectionsViewOnSelectedCollectionsChanged;
        }