private void Notify(string uri, string filename, object obj) { PicElement pe = new PicElement(this); pe.Article = new HitomiArticle(); pe.Article.Magic = ((int)obj).ToString(); pe.Dock = DockStyle.Bottom; pe.SetImageFromAddress(filename, 300, 400, false); pe.Font = this.Font; AddPanel(pe); PBIncrease(); Application.DoEvents(); }
private void AddPanel() { int count = 0; foreach (var md in metadatas) { if (!md.Item3.HasValue) { continue; } count++; if (count == 100) { return; } string path = Path.Combine(tbPath.Text, md.Item1); IPicElement pe; pe = new PicElement(this); HitomiArticle article = HitomiCommon.MetadataToArticle(md.Item3.Value); pe.Article = article; pe.Label = article.Title; using (var zip = ZipFile.Open(path, ZipArchiveMode.Read)) { string tmp = Path.GetTempFileName(); zip.Entries[0].ExtractToFile(tmp, true); pe.SetImageFromAddress(tmp, 150, 200); } pe.Font = this.Font; this.Post(() => ImagePanel.Controls.Add(pe as Control)); } }