private void ShowBeatmapListing(object sender, object data = null) { if (_beatmapListingForm == null || _beatmapListingForm.IsDisposed) { _beatmapListingForm = GuiComponentsProvider.Instance.GetClassImplementing <IBeatmapListingForm>(); var presenter = new BeatmapListingFormPresenter(_beatmapListingForm); _beatmapListingBindingProvider.Bind(presenter.BeatmapListingModel); _beatmapListingForm.Closing += (s, a) => _beatmapListingBindingProvider.UnBind(presenter.BeatmapListingModel); } _beatmapListingForm.Show(); }
public BeatmapListingFormPresenter(IBeatmapListingForm view) { _view = view; //_view.BeatmapListingView.SelectedBeatmapChanged += BeatmapListingView_SelectedBeatmapChanged; BeatmapListingModel = new BeatmapListingModel(Initalizer.LoadedBeatmaps); BeatmapListingModel.SelectedBeatmapChanged += BeatmapListingView_SelectedBeatmapChanged; new BeatmapListingPresenter(_view.BeatmapListingView, BeatmapListingModel); _combinedBeatmapPreviewModel = new CombinedBeatmapPreviewModel(); var presenter = new CombinedBeatmapPreviewPresenter(_view.CombinedBeatmapPreviewView, _combinedBeatmapPreviewModel); presenter.MusicControlModel.NextMapRequest += (s, a) => _view.BeatmapListingView.SelectNextOrFirst(); }