Пример #1
0
        public GedParser(string gedPath)
        {
            // TODO dunno yet if the path to the GED is useful

            _masterTagCache = new StringCache();
            gs = new GEDSplitter(_masterTagCache);

            _IndiParseSingleton  = new IndiParse();
            _HeadParseSingleton  = new HeadParse();
            _FamParseSingleton   = new FamParse();
            _SourParseSingleton  = new SourceRecParse();
            _RepoParseSingleton  = new RepoParse();
            _NoteParseSingleton  = new NoteParse();
            _MediaParseSingleton = new MediaParse();

            _GedSplitFactory = new GSFactory(_masterTagCache);
        }
Пример #2
0
        public void Query(string movieid)
        {
            DetailMovie detailMovie = DataBase.SelectDetailMovieById(movieid);

            //访问次数+1
            detailMovie.visits += 1;
            DataBase.UpdateMovieByID(movieid, "visits", detailMovie.visits);


            //扫描目录
            List <string> imagePathList = new List <string>();

            if (Directory.Exists(StaticVariable.BasePicPath + $"ExtraPic\\{detailMovie.id}\\"))
            {
                try
                {
                    foreach (var path in Directory.GetFiles(StaticVariable.BasePicPath + $"ExtraPic\\{detailMovie.id}\\"))
                    {
                        imagePathList.Add(path);
                    }
                }
                catch { }
                if (imagePathList.Count > 0)
                {
                    imagePathList = imagePathList.CustomSort().ToList();
                }
            }
            //释放图片内存
            if (DetailMovie != null)
            {
                DetailMovie.smallimage = null;
                DetailMovie.bigimage   = null;
                for (int i = 0; i < DetailMovie.extraimagelist.Count; i++)
                {
                    DetailMovie.extraimagelist[i] = null;
                }

                for (int i = 0; i < DetailMovie.actorlist.Count; i++)
                {
                    DetailMovie.actorlist[i].bigimage   = null;
                    DetailMovie.actorlist[i].smallimage = null;
                }
            }
            GC.Collect();
            DetailMovie = new DetailMovie();
            if (detailMovie != null)
            {
                detailMovie.bigimage = StaticClass.GetBitmapImage(detailMovie.id, "BigPic");

                //if (File.Exists(BasePicPath + $"SmallPic\\{detailMovie.id}.jpg"))
                //{
                //    detailMovie.extraimagelist.Add(StaticClass.GetBitmapImage(detailMovie.id, "SmallPic"));
                //    detailMovie.extraimagePath.Add(BasePicPath + $"SmallPic\\{detailMovie.id}.jpg");
                //}

                if (File.Exists(BasePicPath + $"BigPic\\{detailMovie.id}.jpg"))
                {
                    detailMovie.extraimagelist.Add(detailMovie.bigimage);
                    detailMovie.extraimagePath.Add(BasePicPath + $"BigPic\\{detailMovie.id}.jpg");
                }



                foreach (var path in imagePathList)
                {
                    detailMovie.extraimagelist.Add(StaticClass.GetExtraImage(path));
                    detailMovie.extraimagePath.Add(path);
                }//加载预览图


                DB db = new DB("Translate");
                //加载翻译结果
                if (Properties.Settings.Default.TitleShowTranslate)
                {
                    string translate_title = db.GetInfoBySql($"select translate_title from youdao where id='{detailMovie.id}'");
                    if (translate_title != "")
                    {
                        detailMovie.title = translate_title;
                    }
                }

                if (Properties.Settings.Default.PlotShowTranslate)
                {
                    string translate_plot = db.GetInfoBySql($"select translate_plot from youdao where id='{detailMovie.id}'");
                    if (translate_plot != "")
                    {
                        detailMovie.plot = translate_plot;
                    }
                }
                db.CloseDB();

                //显示新增按钮
                List <string> labels = detailMovie.labellist;
                detailMovie.labellist = new List <string>();
                detailMovie.labellist.Add("+");
                detailMovie.labellist.AddRange(labels);

                DetailMovie = detailMovie;
                //QueryCompletedHandler?.Invoke(null, EventArgs.Empty);
                VedioInfo = MediaParse.GetMediaInfo(DetailMovie.filepath);
            }
        }