Esempio n. 1
0
        // 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();
        }
Esempio n. 2
0
        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);
        }