Пример #1
0
        private static bool ShouldBeVisibleBasedOnAccess(CodeItemAccessEnum access)
        {
            switch (access)
            {
            case CodeItemAccessEnum.Private:
                return(Settings.Default.ShowPrivate);

            case CodeItemAccessEnum.Protected:
                return(Settings.Default.ShowProtected);

            case CodeItemAccessEnum.Public:
                return(Settings.Default.ShowPublic);

            case CodeItemAccessEnum.Internal:
                return(Settings.Default.ShowInternal);

            case CodeItemAccessEnum.Sealed:
                return(Settings.Default.ShowSealed);

            case CodeItemAccessEnum.Unknown:
                return(true);

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Пример #2
0
        public static ImageMoniker MapMoniker(CodeItemKindEnum kind, CodeItemAccessEnum access)
        {
            string monikerString;
            var    accessString = GetEnumDescription(access);

            switch (kind)
            {
            case CodeItemKindEnum.Class:
                monikerString = $"Class{accessString}";
                break;

            case CodeItemKindEnum.Constant:
                monikerString = $"Constant{accessString}";
                break;

            case CodeItemKindEnum.Delegate:
                monikerString = $"Delegate{accessString}";
                break;

            case CodeItemKindEnum.Enum:
                monikerString = $"Enumeration{accessString}";
                break;

            case CodeItemKindEnum.EnumMember:
                monikerString = $"EnumerationItem{accessString}";
                break;

            case CodeItemKindEnum.Event:
                monikerString = $"Event{accessString}";
                break;

            case CodeItemKindEnum.Interface:
                monikerString = $"Interface{accessString}";
                break;

            case CodeItemKindEnum.Constructor:
            case CodeItemKindEnum.Method:
                monikerString = $"Method{accessString}";
                break;

            case CodeItemKindEnum.Property:
                monikerString = $"Property{accessString}";
                break;

            case CodeItemKindEnum.Struct:
                monikerString = $"Structure{accessString}";
                break;

            case CodeItemKindEnum.Variable:
                monikerString = $"Field{accessString}";
                break;

            case CodeItemKindEnum.Switch:
                monikerString = "FlowSwitch";
                break;

            case CodeItemKindEnum.SwitchSection:
                monikerString = "FlowDecision";
                break;

            default:
                monikerString = $"Property{accessString}";
                break;
            }

            var monikers = typeof(KnownMonikers).GetProperties();

            var imageMoniker = monikers.FirstOrDefault(m => monikerString.Equals(m.Name))?.GetValue(null, null);

            if (imageMoniker != null)
            {
                return((ImageMoniker)imageMoniker);
            }

            return(KnownMonikers.QuestionMark);
        }
Пример #3
0
        public void ShouldMapMethodOk(CodeItemAccessEnum access, string type, string name, string extra, string expected)
        {
            var tooltip = TooltipMapper.Map(access, type, name, extra);

            Assert.AreEqual(expected, tooltip);
        }
Пример #4
0
 public static string Map(CodeItemAccessEnum access, string type, string name, ParameterListSyntax parameters)
 {
     return(Map(access, type, name, SyntaxMapper.MapParameters(parameters, true)));
 }
Пример #5
0
        public static string Map(CodeItemAccessEnum access, string type, string name, string extra)
        {
            var accessString = access == CodeItemAccessEnum.Unknown ? string.Empty : access.ToString();

            return(string.Join(" ", new[] { accessString, type, name, extra }.Where(s => !string.IsNullOrEmpty(s))));
        }
Пример #6
0
 public static string Map(CodeItemAccessEnum access, string type, string name,
                          VisualBasicSyntax.ParameterListSyntax parameters, SemanticModel semanticModel)
 {
     return(Map(access, type, name, ParameterMapper.MapParameters(parameters, semanticModel, true)));
 }