コード例 #1
0
        public void Init(int animeID, GroupFileSummaryVM gfs)
        {
            this.Cursor = Cursors.Wait;

            GroupFileSummary = gfs;
            AnimeID          = animeID;

            // get the videos
            try
            {
                List <JMMServerBinary.Contract_VideoDetailed> vidContracts = JMMServerVM.Instance.clientBinaryHTTP.GetFilesByGroup(AnimeID,
                                                                                                                                   GroupFileSummary.GroupName, JMMServerVM.Instance.CurrentUser.JMMUserID.Value);
                vids = new List <VideoDetailedVM>();
                foreach (JMMServerBinary.Contract_VideoDetailed contract in vidContracts)
                {
                    VideoDetailedVM vid = new VideoDetailedVM(contract);
                    vids.Add(vid);
                }
                FileCount           = vids.Count;
                lbFiles.ItemsSource = vids;

                GroupName   = GroupFileSummary.GroupName;
                SummaryText = "";
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
            finally
            {
                this.Cursor = Cursors.Arrow;
            }
        }
コード例 #2
0
        private void CommandBinding_DeleteAllFiles(object sender, ExecutedRoutedEventArgs e)
        {
            object obj = e.Parameter;

            if (obj == null)
            {
                return;
            }

            try
            {
                AniDB_AnimeVM anime = this.DataContext as AniDB_AnimeVM;
                if (anime == null)
                {
                    return;
                }

                Window wdw = Window.GetWindow(this);
                if (obj.GetType() == typeof(GroupVideoQualityVM))
                {
                    GroupVideoQualityVM gvq = (GroupVideoQualityVM)obj;

                    this.Cursor = Cursors.Wait;
                    DeleteFilesForm frm = new DeleteFilesForm();
                    frm.Owner = wdw;
                    frm.Init(anime.AnimeID, gvq);
                    bool?result = frm.ShowDialog();
                    if (result.Value)
                    {
                        // refresh
                        RefreshRecords();
                    }

                    this.Cursor = Cursors.Arrow;
                }

                if (obj.GetType() == typeof(GroupFileSummaryVM))
                {
                    GroupFileSummaryVM gfs = (GroupFileSummaryVM)obj;

                    this.Cursor = Cursors.Wait;
                    DeleteFilesForm frm = new DeleteFilesForm();
                    frm.Owner = wdw;
                    frm.Init(anime.AnimeID, gfs);
                    bool?result = frm.ShowDialog();
                    if (result.Value)
                    {
                        // refresh
                        RefreshRecords();
                    }

                    this.Cursor = Cursors.Arrow;
                }
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
        }
コード例 #3
0
        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);
            }
        }
コード例 #4
0
        public void Init(int animeID, GroupFileSummaryVM gfs)
        {
            this.Cursor = Cursors.Wait;

            GroupFileSummary = gfs;
            AnimeID          = animeID;

            // get the videos
            try
            {
                JMMServerVM.Instance.RefreshCloudAccounts();
                dict = JMMServerVM.Instance.FolderProviders.ToDictionary(a => a.CloudID ?? 0, a => new Tuple <string, BitmapImage>(a.Provider, a.Icon));
                chks = new Dictionary <string, bool>();
                Dictionary <string, BitmapImage> types = new Dictionary <string, BitmapImage>();


                List <JMMServerBinary.Contract_VideoDetailed> vidContracts = JMMServerVM.Instance.clientBinaryHTTP.GetFilesByGroup(AnimeID,
                                                                                                                                   GroupFileSummary.GroupName, JMMServerVM.Instance.CurrentUser.JMMUserID.Value);
                vids = new List <VideoDetailedVM>();
                foreach (JMMServerBinary.Contract_VideoDetailed contract in vidContracts)
                {
                    VideoDetailedVM vid = new VideoDetailedVM(contract);
                    foreach (VideoLocal_PlaceVM vv in vid.Places)
                    {
                        Tuple <string, BitmapImage> tup = dict[vv.ImportFolder.CloudID ?? 0];
                        if (!types.ContainsKey(tup.Item1))
                        {
                            types.Add(tup.Item1, tup.Item2);
                        }
                    }
                    vids.Add(vid);
                }
                FileCount           = vids.Count;
                lbFiles.ItemsSource = vids;

                GroupName   = GroupFileSummary.GroupName;
                SummaryText = "";
                InitImportFolders(types);
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
            finally
            {
                this.Cursor = Cursors.Arrow;
            }
        }