예제 #1
0
        private static void RegisterConfigurableSeverity(
            HighlightingSettingsManager highlightManager, string highlightId, string groupName, string ruleName, string description, Severity defaultSeverity)
        {
            FieldInfo allConfigurableSeverityItems = highlightManager.GetType().GetField("myConfigurableSeverityItem", BindingFlags.Instance | BindingFlags.NonPublic);

            if (allConfigurableSeverityItems != null)
            {
                Dictionary <string, HighlightingSettingsManager.ConfigurableSeverityItem> configurableSeverityItems =
                    allConfigurableSeverityItems.GetValue(highlightManager) as Dictionary <string, HighlightingSettingsManager.ConfigurableSeverityItem>;

                if (configurableSeverityItems != null)
                {
                    if (!configurableSeverityItems.ContainsKey(highlightId))
                    {
                        HighlightingSettingsManager.ConfigurableSeverityItem item = new HighlightingSettingsManager.ConfigurableSeverityItem(
                            highlightId, null, groupName, ruleName, description, defaultSeverity, false, false);
                        configurableSeverityItems.Add(highlightId, item);
                    }
                }
            }

            FieldInfo configurableSeverityImplementation = highlightManager.GetType()
                                                           .GetField(
                "myConfigurableSeverityImplementation", BindingFlags.Instance | BindingFlags.NonPublic);

            if (configurableSeverityImplementation != null)
            {
                JB::JetBrains.Util.OneToListMap <string, PsiLanguageType> mapToLanguage =
                    configurableSeverityImplementation.GetValue(highlightManager) as JB::JetBrains.Util.OneToListMap <string, PsiLanguageType>;

                if (mapToLanguage != null)
                {
                    if (!mapToLanguage.ContainsKey(highlightId))
                    {
                        PsiLanguageType languageType = Languages.Instance.GetLanguageByName("CSHARP");
                        mapToLanguage.Add(highlightId, languageType);
                    }
                }
            }
        }
예제 #2
0
        private static void RegisterConfigurableGroup(HighlightingSettingsManager highlightManager, string groupId, string groupName)
        {
            HighlightingSettingsManager.ConfigurableGroupDescriptor item = new HighlightingSettingsManager.ConfigurableGroupDescriptor(groupId, groupName);

            FieldInfo field = highlightManager.GetType().GetField("myConfigurableGroups", BindingFlags.Instance | BindingFlags.NonPublic);

            if (field != null)
            {
                Dictionary <string, HighlightingSettingsManager.ConfigurableGroupDescriptor> items =
                    field.GetValue(highlightManager) as Dictionary <string, HighlightingSettingsManager.ConfigurableGroupDescriptor>;

                if (items != null)
                {
                    items.Add(groupId, item);
                }
            }
        }
예제 #3
0
        private static void RegisterConfigurableSeverity(
            HighlightingSettingsManager highlightManager, string highlightId, string groupName, string ruleName, string description, Severity defaultSeverity)
        {
            HighlightingSettingsManager.ConfigurableSeverityItem item = new HighlightingSettingsManager.ConfigurableSeverityItem(
                highlightId, null, groupName, ruleName, description, defaultSeverity, false, false);

            FieldInfo field = highlightManager.GetType().GetField("myConfigurableSeverityItem", BindingFlags.Instance | BindingFlags.NonPublic);

            if (field != null)
            {
                Dictionary <string, HighlightingSettingsManager.ConfigurableSeverityItem> items =
                    field.GetValue(highlightManager) as Dictionary <string, HighlightingSettingsManager.ConfigurableSeverityItem>;

                if (items != null)
                {
                    if (!items.ContainsKey(highlightId))
                    {
                        items.Add(highlightId, item);
                    }
                }
            }
        }
예제 #4
0
        private static void RegisterConfigurableSeverity(
            HighlightingSettingsManager highlightManager, string highlightId, string groupName, string ruleName, string description, Severity defaultSeverity)
        {
            // TODO: This can be implemented with ICustomConfigurableSeverityItemProvider
            FieldInfo allConfigurableSeverityItems = highlightManager.GetType().GetField("myConfigurableSeverityItem", BindingFlags.Instance | BindingFlags.NonPublic);

            if (allConfigurableSeverityItems != null)
            {
                Dictionary<string, ConfigurableSeverityItem> configurableSeverityItems =
                    allConfigurableSeverityItems.GetValue(highlightManager) as Dictionary<string, ConfigurableSeverityItem>;

                if (configurableSeverityItems != null)
                {
                    if (!configurableSeverityItems.ContainsKey(highlightId))
                    {
                        ConfigurableSeverityItem item = new ConfigurableSeverityItem(highlightId, null, groupName, ruleName, description, defaultSeverity, false, false, null);
                        configurableSeverityItems.Add(highlightId, item);
                    }
                }
            }

            FieldInfo configurableSeverityImplementation = highlightManager.GetType()
                                                                           .GetField(
                                                                               "myConfigurableSeverityImplementation", BindingFlags.Instance | BindingFlags.NonPublic);

            if (configurableSeverityImplementation != null)
            {
                JetBrains.Util.OneToListMap<string, PsiLanguageType> mapToLanguage =
                    configurableSeverityImplementation.GetValue(highlightManager) as JetBrains.Util.OneToListMap<string, PsiLanguageType>;

                if (mapToLanguage != null)
                {
                    if (!mapToLanguage.ContainsKey(highlightId))
                    {
                        PsiLanguageType languageType = Languages.Instance.GetLanguageByName("CSHARP");
                        mapToLanguage.Add(highlightId, languageType);
                    }
                }
            }
        }
예제 #5
0
        private static void RegisterConfigurableGroup(HighlightingSettingsManager highlightManager, string groupId, string groupName)
        {
            HighlightingSettingsManager.ConfigurableGroupDescriptor item = new HighlightingSettingsManager.ConfigurableGroupDescriptor(groupId, groupName);

            // TODO: WTF!? Reflection. Oh boy.
            FieldInfo field = highlightManager.GetType().GetField("myConfigurableGroups", BindingFlags.Instance | BindingFlags.NonPublic);

            if (field != null)
            {
                Dictionary<string, HighlightingSettingsManager.ConfigurableGroupDescriptor> items =
                    field.GetValue(highlightManager) as Dictionary<string, HighlightingSettingsManager.ConfigurableGroupDescriptor>;

                if (items != null)
                {
                    if (!items.ContainsKey(groupId))
                    {
                        items.Add(groupId, item);
                    }
                }
            }
        }
        private static void RegisterConfigurableSeverity(
            HighlightingSettingsManager highlightManager, string highlightId, string groupName, string ruleName, string description, Severity defaultSeverity)
        {
            HighlightingSettingsManager.ConfigurableSeverityItem item = new HighlightingSettingsManager.ConfigurableSeverityItem(
                highlightId, null, groupName, ruleName, description, defaultSeverity, false, false);

            FieldInfo field = highlightManager.GetType().GetField("myConfigurableSeverityItem", BindingFlags.Instance | BindingFlags.NonPublic);

            if (field != null)
            {
                Dictionary<string, HighlightingSettingsManager.ConfigurableSeverityItem> items =
                    field.GetValue(highlightManager) as Dictionary<string, HighlightingSettingsManager.ConfigurableSeverityItem>;

                if (items != null)
                {
                    if (!items.ContainsKey(highlightId))
                    {
                        items.Add(highlightId, item);
                    }
                }
            }
        }