Example #1
0
        private void Form_WhiteListChanged(object sender, MetadataKeywordListChangedEventArgs e)
        {
            if (string.IsNullOrEmpty(WebBrowser.DocumentText))
            {
                return;
            }

            WebBrowser.Document?.InvokeScript("__onWhitelistChanged", e.ToObjectArray());
        }
Example #2
0
        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);
            }
        }
Example #3
0
 private void Ignorelist_Changed(object sender, MetadataKeywordListChangedEventArgs e)
 {
     MetadataKeywordLists_ListChanged(sender, e,
                                      (contentNode) =>
     {
         contentNode.NodeFont = strikethroughFont;
     },
                                      (contentNode) =>
     {
         contentNode.NodeFont = null;
     }
                                      );
 }
Example #4
0
        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);
            }
                                             );
        }
Example #5
0
        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);
            }
                                             );
        }
Example #6
0
        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);
            }
        }
Example #7
0
 private void TagsModel_ItemAddedMethod(object sender, MetadataKeywordListChangedEventArgs e)
 {
     MetadataKeywordLists_ListChanged(sender, e, (contentNode) => { }, (contentNode) => { });
 }