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