private void Form_WhiteListChanged(object sender, MetadataKeywordListChangedEventArgs e) { if (string.IsNullOrEmpty(WebBrowser.DocumentText)) { return; } WebBrowser.Document?.InvokeScript("__onWhitelistChanged", e.ToObjectArray()); }
private void TagsModel_ItemAdded(object sender, TagEventArgs e) { if (TagsListSettings.ForceRuntimeUpdate) { MetadataKeywordListChangedEventArgs mklEvent = new MetadataKeywordListChangedEventArgs(MetadataKeywordsListsEventType.Add, e.Tag.Type.ToString().ToLowerInvariant(), e.Tag.Name, e.Tag.Id); IAsyncResult asyncResult = BeginInvoke(new EventHandler <MetadataKeywordListChangedEventArgs>(TagsModel_ItemAddedMethod), new object[] { this, mklEvent }); EndInvoke(asyncResult); } }
private void Ignorelist_Changed(object sender, MetadataKeywordListChangedEventArgs e) { MetadataKeywordLists_ListChanged(sender, e, (contentNode) => { contentNode.NodeFont = strikethroughFont; }, (contentNode) => { contentNode.NodeFont = null; } ); }
private void Blacklist_Changed(object sender, MetadataKeywordListChangedEventArgs e) { bool isInHidelist = MetadataKeywordLists.Hidelist[e.TagType].Any(x => x.Equals(e.TagName, StringComparison.OrdinalIgnoreCase)); MetadataKeywordLists_ListChanged(sender, e, (contentNode) => { contentNode.ForeColor = GetTreeNodeForeColor(TagsListSettings.Colors.Blacklist, isInHidelist); }, (contentNode) => { contentNode.ForeColor = GetTreeNodeForeColor(TagsListSettings.Colors.Default, isInHidelist); } ); }
private void Hidelist_Changed(object sender, MetadataKeywordListChangedEventArgs e) { bool isInWhitelist = MetadataKeywordLists.Whitelist[e.TagType].Any(x => x.Equals(e.TagName, StringComparison.OrdinalIgnoreCase)); bool isInBlacklist = MetadataKeywordLists.Blacklist[e.TagType].Any(x => x.Equals(e.TagName, StringComparison.OrdinalIgnoreCase)); MetadataKeywordLists_ListChanged(sender, e, (contentNode) => { contentNode.ForeColor = GetTreeNodeForeColor(GetHidelistColor(isInWhitelist, isInBlacklist), true); }, (contentNode) => { contentNode.ForeColor = GetTreeNodeForeColor(GetHidelistColor(isInWhitelist, isInBlacklist), false); } ); }
private void MetadataKeywordLists_ListChanged(object sender, MetadataKeywordListChangedEventArgs e, Action <TreeNode> onAdded, Action <TreeNode> onRemoved) { TreeNode contentNode = GetTagTreeNode(e.TagType, e.TagName, e.TagId); TreeNode categoryNode = GetCategoryTreeNode(e.TagType); if (contentNode != null) { TagInfo tagInfo = contentNode.Tag as TagInfo; if (e.EventType == MetadataKeywordsListsEventType.Add) { onAdded.Invoke(contentNode); } else if (e.EventType == MetadataKeywordsListsEventType.Remove) { onRemoved.Invoke(contentNode); } if (!TagsFilter.ShouldFilter(tagInfo)) { contentNode.Remove(); } } else { TagInfo tagInfo = new TagInfo() { Name = e.TagName, Id = e.TagId, Type = (TagType)Enum.Parse(typeof(TagType), e.TagType, true) }; if (TagsFilter.ShouldFilter(tagInfo)) { contentNode = new TreeNode(e.TagName) { Tag = TagsModel.AllTags.FirstOrDefault(x => x.Id == e.TagId) // should be First() but just in case... }; if (e.EventType == MetadataKeywordsListsEventType.Add) { AddContextMenu(contentNode); onAdded.Invoke(contentNode); if (categoryNode != null) { categoryNode.Nodes.Add(contentNode); } } else if (e.EventType == MetadataKeywordsListsEventType.Remove) { onRemoved.Invoke(contentNode); contentNode.Remove(); } } } // NOTE: there's no NodeAdded/NodeRemoved events. if (categoryNode != null) { TagType tagType = (TagType)categoryNode.Tag; categoryNode.Text = TagTextFormatter.Format(new TagInfo() { Type = tagType, Count = categoryNode.Nodes.Count, Name = "", Url = "" }, TagsListSettings.LabelFormats.Header); } }
private void TagsModel_ItemAddedMethod(object sender, MetadataKeywordListChangedEventArgs e) { MetadataKeywordLists_ListChanged(sender, e, (contentNode) => { }, (contentNode) => { }); }