public void RemoteDownloadArticleFromId(string id) { tabControl1.SelectedIndex = 2; HitomiMetadata metadata = new HitomiMetadata(); foreach (var v in hitomi_data.metadata_collection) { if (v.ID.ToString() == id) { metadata = v; break; } } PicElement fake_pe = new PicElement(this); HitomiArticle article = new HitomiArticle(); article.Magic = metadata.ID.ToString(); article.Title = metadata.Name; if (metadata.Artists != null) { article.Artists = metadata.Artists[0]; } if (metadata.Tags != null) { article.Tags = metadata.Tags.ToList(); } fake_pe.Article = article; fake_pe.Label = metadata.Name; RemoteDownloadArticle(fake_pe); }
public frmGalleryInfo(Form closed, HitomiMetadata metadata) { InitializeComponent(); this.metadata = metadata; closed_form = closed; id = metadata.ID.ToString(); }
public frmGalleryInfo(Form closed, HitomiMetadata metadata) { InitializeComponent(); this.metadata = metadata; closed_form = closed; id = metadata.ID.ToString(); CloseOnRBtn = new RightClickCloser(this); }
private void LoadThumbnail(HitomiMetadata md) { Application.Current.Dispatcher.Invoke(new Action( delegate { // Put code that needs to run on the UI thread here var se = new SearchSimpleElements(HitomiLegalize.MetadataToArticle(md)); ArticlePanel.Children.Add(se); Koromo_Copy.Monitor.Instance.Push("[AddSearchElements] Hitomi Metadata " + md.ID); })); }
private string MakeDownloadDirectory(string source, string artists, HitomiMetadata metadata, string extension) { string invalid = new string(Path.GetInvalidFileNameChars()) + new string(Path.GetInvalidPathChars()); string title = metadata.Name ?? ""; string type = metadata.Type ?? ""; string series = ""; if (HitomiSetting.Instance.GetModel().ReplaceArtistsWithTitle) { TextInfo textInfo = new CultureInfo("en-US", false).TextInfo; artists = textInfo.ToTitleCase(artists); } if (metadata.Parodies != null) { series = metadata.Parodies[0]; } if (title != null) { foreach (char c in invalid) { title = title.Replace(c.ToString(), ""); } } if (artists != null) { foreach (char c in invalid) { artists = artists.Replace(c.ToString(), ""); } } if (series != null) { foreach (char c in invalid) { series = series.Replace(c.ToString(), ""); } } if (artists.StartsWith("group:")) { artists = artists.Substring("group:".Length); } string path = source; path = Regex.Replace(path, "{Title}", title, RegexOptions.IgnoreCase); path = Regex.Replace(path, "{Artists}", artists, RegexOptions.IgnoreCase); path = Regex.Replace(path, "{Id}", metadata.ID.ToString(), RegexOptions.IgnoreCase); path = Regex.Replace(path, "{Type}", type, RegexOptions.IgnoreCase); path = Regex.Replace(path, "{Date}", DateTime.Now.ToString(), RegexOptions.IgnoreCase); path = Regex.Replace(path, "{Series}", series, RegexOptions.IgnoreCase); path += extension; return(path); }
public static HitomiMetadata?GetMetadataFromMagic(string magic) { HitomiMetadata tmp = new HitomiMetadata() { ID = Convert.ToInt32(magic) }; var pos = HitomiData.Instance.metadata_collection.BinarySearch(tmp, new CompareMetadata()); if (pos < 0) { return(null); } return(HitomiData.Instance.metadata_collection[pos]); }
public static HitomiArticle MetadataToArticle(HitomiMetadata metadata) { HitomiArticle article = new HitomiArticle(); article.Artists = metadata.Artists; article.Characters = metadata.Characters; article.Groups = metadata.Groups; article.Language = metadata.Language; article.Magic = metadata.ID.ToString(); article.Series = metadata.Parodies; article.Tags = metadata.Tags; article.Title = metadata.Name; article.Types = metadata.Type; return(article); }
public static HitomiMetadata ArticleToMetadata(HitomiArticle article) { HitomiMetadata metadata = new HitomiMetadata(); metadata.Artists = article.Artists; metadata.Characters = article.Characters; metadata.Groups = article.Groups; metadata.ID = Convert.ToInt32(article.Magic); metadata.Language = LegalizeLanguage(article.Language); metadata.Name = article.Title; metadata.Parodies = article.Series; metadata.Tags = article.Tags.Select(x => LegalizeTag(x)).ToArray(); metadata.Type = article.Types; return(metadata); }
private static HArticleModel ConvertTo(HitomiMetadata metadata, string url, string magic) { var article = new HArticleModel(); article.Magic = magic; article.ArticleType = HArticleType.Hitomi; article.URL = url; article.artist = metadata.Artists; article.group = metadata.Groups; article.parody = metadata.Parodies; article.misc = metadata.Tags; article.character = metadata.Characters; article.Language = metadata.Language; article.Title = metadata.Name; article.Type = metadata.Type; article.Magic = metadata.ID.ToString(); return(article); }
private void LoadThumbnail(HitomiMetadata md) { Application.Current.Dispatcher.Invoke(new Action( delegate { // Put code that needs to run on the UI thread here if (!Settings.Instance.UXSetting.UsingThumbnailSearchElements) { var se = new SearchElements(HitomiLegalize.MetadataToArticle(md)); SearchPanel.Children.Add(se); SearchPanel.Children.Add(new Separator()); } else { var sme = new SearchMaterialElements(HitomiLegalize.MetadataToArticle(md)); SearchMaterialPanel.Children.Add(sme); Koromo_Copy.Monitor.Instance.Push("[AddSearchElements] Hitomi Metadata " + md.ID); } })); }