public PreferenceEditor(IPreferences pref) { InitializeComponent(); _boldFont = new Font(_listView.Font, _listView.Font.Style | FontStyle.Bold); _preferences = pref; _filterChangeTimer = new Timer(); _filterChangeTimer.Interval = 500; _filterChangeTimer.Tick += new EventHandler(OnFilterChangeTimer); StringResource sr = UsabilityPlugin.Strings; _filterLabel.Text = sr.GetString("Form.PreferenceEditor._filterLabel"); _nameHeader.Text = sr.GetString("Form.PreferenceEditor._nameHeader"); _typeHeader.Text = sr.GetString("Form.PreferenceEditor._typeHeader"); _valueHeader.Text = sr.GetString("Form.PreferenceEditor._valueHeader"); _okButton.Text = sr.GetString("Common.OK"); _cancelButton.Text = sr.GetString("Common.Cancel"); _resetButton.Text = sr.GetString("Form.PreferenceEditor._resetButton"); this.Text = sr.GetString("Form.PreferenceEditor.Text"); //洗い出し _folderTags = new List <FolderTag>(); _itemTags = new List <ItemTag>(); foreach (IPreferenceFolder folder in _preferences.GetAllFolders()) { FolderTag ft = new FolderTag(folder); _folderTags.Add(ft); int count = ft.Work.ChildCount; for (int i = 0; i < count; i++) { IPreferenceItem item = ft.Work.ChildAt(i).AsItem(); if (item != null) { ItemTag it = new ItemTag(item); _itemTags.Add(it); } } } //ソート _itemTags.Sort(); InitList(); }
public async Task AddTag(IFolder folder, Tag tag) { Ensure.NotNull(folder, $"{nameof(folder)} cannot be null."); Ensure.NotNull(tag, $"{nameof(tag)} cannot be null."); var folderTag = _db.FolderTags.FirstOrDefault(x => x.TagName == tag.TagName && x.FolderId == folder.Id); //If already added, return if (folderTag != null) { return; } folderTag = new FolderTag { FolderId = folder.Id, TagName = tag.TagName }; _db.FolderTags.Add(folderTag); await _db.SaveChangesAsync(); }