Exemple #1
0
 public DdfGuide(
     IAudioDramaListView audioDramaListView,
     IAudioDramaView audioDramaView,
     IRootView rootView,
     ICache <IEnumerable <AudioDramaDto> > dtoCache,
     ICache <IEnumerable <AudioDramaUserData> > userDataCache,
     IShutdown shutdown,
     IUserNotifier userNotifier,
     IUriInvoker uriInvoker,
     IClipboardService clipboardService,
     IYesNoDialog yesNoDialog,
     IOkDialog okDialog,
     IUpdatingView updatingView)
 {
     _audioDramaListView = audioDramaListView;
     _audioDramaView     = audioDramaView;
     _rootView           = rootView;
     _dtoCache           = dtoCache;
     _userDataCache      = userDataCache;
     _shutdown           = shutdown;
     _userNotifier       = userNotifier;
     _uriInvoker         = uriInvoker;
     _clipboardService   = clipboardService;
     _yesNoDialog        = yesNoDialog;
     _okDialog           = okDialog;
     _updatingView       = updatingView;
 }
        public AudioDramaListPresenter(
            IAudioDramaListView audioDramaListView,
            IAudioDramaExplorer explorer,
            IUriInvoker uriInvoker,
            IUserDataImportExport importExport,
            ISource <IEnumerable <AudioDrama> > audioDramaSource)
        {
            _audioDramaListView = audioDramaListView;
            _explorer           = explorer;
            _uriInvoker         = uriInvoker;
            _importExport       = importExport;
            _audioDramaSource   = audioDramaSource;

            _audioDramaListView.OrderByHeardFirstClicked           += OnSorterChanged(EAudioDramaSortMode.HeardFirst);
            _audioDramaListView.OrderByHeardLastClicked            += OnSorterChanged(EAudioDramaSortMode.HeardLast);
            _audioDramaListView.OrderByIsFavoriteFirstClicked      += OnSorterChanged(EAudioDramaSortMode.IsFavoriteFirst);
            _audioDramaListView.OrderByIsFavoriteLastClicked       += OnSorterChanged(EAudioDramaSortMode.IsFavoriteLast);
            _audioDramaListView.OrderByNumberAscendingClicked      += OnSorterChanged(EAudioDramaSortMode.NumberAscending);
            _audioDramaListView.OrderByNumberDescendingClicked     += OnSorterChanged(EAudioDramaSortMode.NumberDescending);
            _audioDramaListView.OrderByReleaseDateAscendingClicked +=
                OnSorterChanged(EAudioDramaSortMode.ReleaseDateAscending);
            _audioDramaListView.OrderByReleaseDateDescendingClicked +=
                OnSorterChanged(EAudioDramaSortMode.ReleaseDateDescending);
            _audioDramaListView.OrderByNameAscendingClicked  += OnSorterChanged(EAudioDramaSortMode.NameAscending);
            _audioDramaListView.OrderByNameDescendingClicked += OnSorterChanged(EAudioDramaSortMode.NameDescending);

            _audioDramaListView.AllClicked           += OnFilterChanged(EAudioDramaFilterMode.All);
            _audioDramaListView.MainsOnlyClicked     += OnFilterChanged(EAudioDramaFilterMode.MainsOnly);
            _audioDramaListView.FavoritesOnlyClicked += OnFilterChanged(EAudioDramaFilterMode.FavoritesOnly);
            _audioDramaListView.UnheardOnlyClicked   += OnFilterChanged(EAudioDramaFilterMode.UnheardOnly);
            _audioDramaListView.SpecialsOnlyClicked  += OnFilterChanged(EAudioDramaFilterMode.SpecialsOnly);

            _audioDramaListView.DieDreiFragezeichenClicked +=
                OnInterpreterChanged(EAudioDramaFilterMode.DieDreiFragezeichen);
            _audioDramaListView.DieDreiFragezeichenKidsClicked +=
                OnInterpreterChanged(EAudioDramaFilterMode.DieDreiFragezeichenKids);
            _audioDramaListView.DieDreiClicked += OnInterpreterChanged(EAudioDramaFilterMode.DieDrei);

            _audioDramaListView.ContributeClicked += (sender, args) => OnContributeClicked();
            _audioDramaListView.ExportClicked     += (sender, args) => OnExportClicked();
            _audioDramaListView.ImportClicked     += (sender, args) => OnImportClicked();

            _audioDramaListView.HeardClicked      += AudioDramaListViewOnHeardClicked;
            _audioDramaListView.IsFavoriteClicked += AudioDramaListViewOnIsFavoriteClicked;

            _importExport.UserDataImported += (sender, args) => UpdateViewWithMatchingAudioDramas();

            _audioDramaListView.SearchTextChanged += OnSearchTextChanged();
        }