void lbVideos_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { ccDetail.Content = null; AnyVideosSelected = lbVideos.SelectedItems.Count > 0; OneVideoSelected = lbVideos.SelectedItems.Count == 1; MultipleVideosSelected = lbVideos.SelectedItems.Count > 1; // if only one video selected if (OneVideoSelected) { VM_AVDump vid = lbVideos.SelectedItem as VM_AVDump; ccDetail.Content = vid; } else if (MultipleVideosSelected) { MultipleAvdumps mv = new MultipleAvdumps() { SelectedCount = lbVideos.SelectedItems.Count, AVDumps = new List <VM_AVDump>() }; foreach (object obj in lbVideos.SelectedItems) { VM_AVDump vid = obj as VM_AVDump; mv.AVDumps.Add(vid); } ccDetail.Content = mv; } var control = Utils.FindElementByName <AvdumpFileControl>(ccDetail, "FileDetails"); control.DumpSingle = OneVideoSelected; control.DumpMultiple = MultipleVideosSelected; //SetConfirmDetails(); } catch (Exception ex) { Utils.ShowErrorMessage(ex); } }
void lbVideos_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { ccDetail.Content = null; AnyVideosSelected = lbVideos.SelectedItems.Count > 0; OneVideoSelected = lbVideos.SelectedItems.Count == 1; MultipleVideosSelected = lbVideos.SelectedItems.Count > 1; // if only one video selected if (OneVideoSelected) { VM_AVDump vid = lbVideos.SelectedItem as VM_AVDump; ccDetail.Content = vid; } // if only one video selected if (MultipleVideosSelected) { MultipleAvdumps mv = new MultipleAvdumps(); mv.SelectedCount = lbVideos.SelectedItems.Count; mv.AVDumps = new List <VM_AVDump>(); foreach (object obj in lbVideos.SelectedItems) { VM_AVDump vid = obj as VM_AVDump; mv.AVDumps.Add(vid); } ccDetailMultiple.Content = mv; } //SetConfirmDetails(); } catch (Exception ex) { Utils.ShowErrorMessage(ex); } }
void AvdumpFileControl_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { try { DumpSingle = false; DumpMultiple = false; if (DataContext == null) { return; } if (DataContext.GetType() == typeof(VM_AVDump)) { VM_AVDump dump = DataContext as VM_AVDump; if (dump != null) { AllAnime.Clear(); foreach (VM_AniDB_Anime anime in VM_AniDB_Anime.BestLevenshteinDistanceMatches(dump.VideoLocal.ClosestAnimeMatchString, 10)) { AllAnime.Add(anime); } if (AllAnime.Count > 0) { lbAnime.SelectedIndex = 0; } if (string.IsNullOrEmpty(dump.AVDumpFullResult)) { string ed2kDump = "Pre-calculated ED2K Dump string" + Environment.NewLine; ed2kDump += "---------------------------" + Environment.NewLine; ed2kDump += "This does not mean the data has been uploaded to AniDB yet" + Environment.NewLine; ed2kDump += "---------------------------" + Environment.NewLine; ed2kDump += $@"ed2k://|file|{dump.FileName}|{dump.FileSize}|{dump.VideoLocal.Hash}|/" + Environment.NewLine; dump.AVDumpFullResult = ed2kDump; } dump.ED2KDump = Utils.GetED2KDump(dump.AVDumpFullResult); SetED2KDump(dump.ED2KDump); } DumpSingle = true; } if (DataContext.GetType() == typeof(MultipleAvdumps)) { MultipleAvdumps dumpList = DataContext as MultipleAvdumps; AllAnime.Clear(); foreach (VM_AniDB_Anime anime in VM_AniDB_Anime.BestLevenshteinDistanceMatches(dumpList.AVDumps[0].VideoLocal.ClosestAnimeMatchString, 10)) { AllAnime.Add(anime); } if (AllAnime.Count > 0) { lbAnime.SelectedIndex = 0; } string massAvDump = ""; if (dumpList != null) { foreach (VM_AVDump dump in dumpList.AVDumps) { if (string.IsNullOrEmpty(dump.AVDumpFullResult)) { string ed2kDump = "Pre-calculated ED2K Dump string" + Environment.NewLine; ed2kDump += "---------------------------" + Environment.NewLine; ed2kDump += "This does not mean the data has been uploaded to AniDB yet" + Environment.NewLine; ed2kDump += "---------------------------" + Environment.NewLine; ed2kDump += $@"ed2k://|file|{dump.FileName}|{dump.FileSize}|{dump.VideoLocal.Hash}|/" + Environment.NewLine; dump.AVDumpFullResult = ed2kDump; } dump.ED2KDump = Utils.GetED2KDump(dump.AVDumpFullResult); massAvDump += dump.ED2KDump + Environment.NewLine; } } SetED2KDump(massAvDump); DumpMultiple = true; } } catch (Exception ex) { Utils.ShowErrorMessage(ex); } }