// Set the tags that will be added on import. public void AttachTags(IEnumerable <string> tags) { App.Instance.Database.BeginTransaction(); var import_category = GetImportedTagsCategory(); foreach (var tagname in tags) { var tag = tag_store.GetTagByName(tagname); if (tag == null) { tag = tag_store.CreateCategory(import_category, tagname, false); tag_store.Commit(tag); } attach_tags.Add(tag); } App.Instance.Database.CommitTransaction(); }
private Tag EnsureTag(TagInfo info, Category parent) { Tag tag = tag_store.GetTagByName(info.TagName); if (tag != null) { return(tag); } tag = tag_store.CreateCategory(parent, info.TagName); if (info.HasIcon) { tag.StockIconName = info.IconName; tag_store.Commit(tag); } tags_created.Push(tag); return(tag); }