void AnimeFileSummaryControl_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { try { if (this.DataContext == null) { VideoQualityRecords.Clear(); GroupSummaryRecords.Clear(); return; } bool changedCombo = false; if (cboSortGroupQual.SelectedIndex != AppSettings.FileSummaryQualSortDefault && cboSortGroupQual.SelectedIndex >= 0) { changedCombo = true; } if (cboFileSummaryType.SelectedIndex != AppSettings.FileSummaryTypeDefault && cboFileSummaryType.SelectedIndex >= 0) { changedCombo = true; } cboSortGroupQual.SelectedIndex = AppSettings.FileSummaryQualSortDefault; cboFileSummaryType.SelectedIndex = AppSettings.FileSummaryTypeDefault; if (!changedCombo) { RefreshRecords(); } } catch (Exception ex) { Utils.ShowErrorMessage(ex); } }
private void RefreshRecords() { try { IsDataLoading = true; IsDataFinishedLoading = false; TotalFileCount = 0; double fileSize = 0; VM_AniDB_Anime anime = DataContext as VM_AniDB_Anime; if (anime == null) { return; } if (IsGroupQualityDetails) { List <CL_GroupVideoQuality> summ = VM_ShokoServer.Instance.ShokoServices.GetGroupVideoQualitySummary(anime.AnimeID).CastList <CL_GroupVideoQuality>(); foreach (CL_GroupVideoQuality vidQual in summ) { TotalFileCount += vidQual.FileCountNormal + vidQual.FileCountSpecials; fileSize += vidQual.TotalFileSize; } VideoQualityRecords.ReplaceRange(summ); } else { VideoQualityRecords.Clear(); } if (IsGroupSummary) { List <VM_GroupFileSummary> summ = VM_ShokoServer.Instance.ShokoServices.GetGroupFileSummary(anime.AnimeID).CastList <VM_GroupFileSummary>(); foreach (VM_GroupFileSummary vidQual in summ) { TotalFileCount += vidQual.FileCountNormal + vidQual.FileCountSpecials; fileSize += vidQual.TotalFileSize; } GroupSummaryRecords.ReplaceRange(summ); } else { GroupSummaryRecords.Clear(); } TotalFileSize = Formatting.FormatFileSize(fileSize); IsDataLoading = false; IsDataFinishedLoading = true; } catch (Exception ex) { Utils.ShowErrorMessage(ex); } }
private void RefreshRecords() { try { IsDataLoading = true; IsDataFinishedLoading = false; VideoQualityRecords.Clear(); GroupSummaryRecords.Clear(); TotalFileCount = 0; double fileSize = 0; AniDB_AnimeVM anime = this.DataContext as AniDB_AnimeVM; if (anime == null) { return; } if (IsGroupQualityDetails) { List <JMMServerBinary.Contract_GroupVideoQuality> summ = JMMServerVM.Instance.clientBinaryHTTP.GetGroupVideoQualitySummary(anime.AnimeID); foreach (JMMServerBinary.Contract_GroupVideoQuality contract in summ) { GroupVideoQualityVM vidQual = new GroupVideoQualityVM(contract); TotalFileCount += vidQual.FileCountNormal + vidQual.FileCountSpecials; fileSize += vidQual.TotalFileSize; VideoQualityRecords.Add(vidQual); } } if (IsGroupSummary) { List <JMMServerBinary.Contract_GroupFileSummary> summ = JMMServerVM.Instance.clientBinaryHTTP.GetGroupFileSummary(anime.AnimeID); foreach (JMMServerBinary.Contract_GroupFileSummary contract in summ) { GroupFileSummaryVM vidQual = new GroupFileSummaryVM(contract); TotalFileCount += vidQual.FileCountNormal + vidQual.FileCountSpecials; fileSize += vidQual.TotalFileSize; GroupSummaryRecords.Add(vidQual); } } TotalFileSize = Utils.FormatFileSize(fileSize); IsDataLoading = false; IsDataFinishedLoading = true; } catch (Exception ex) { Utils.ShowErrorMessage(ex); } }