string GetColorInfoType(StructureVisualizerDataBlockKind blockKind) { switch (blockKind) { case StructureVisualizerDataBlockKind.Namespace: return(ThemeClassificationTypeNameKeys.StructureVisualizerNamespace); case StructureVisualizerDataBlockKind.Type: return(ThemeClassificationTypeNameKeys.StructureVisualizerType); case StructureVisualizerDataBlockKind.Method: return(ThemeClassificationTypeNameKeys.StructureVisualizerMethod); case StructureVisualizerDataBlockKind.Conditional: return(ThemeClassificationTypeNameKeys.StructureVisualizerConditional); case StructureVisualizerDataBlockKind.Loop: return(ThemeClassificationTypeNameKeys.StructureVisualizerLoop); case StructureVisualizerDataBlockKind.Property: return(ThemeClassificationTypeNameKeys.StructureVisualizerProperty); case StructureVisualizerDataBlockKind.Event: return(ThemeClassificationTypeNameKeys.StructureVisualizerEvent); case StructureVisualizerDataBlockKind.Try: return(ThemeClassificationTypeNameKeys.StructureVisualizerTry); case StructureVisualizerDataBlockKind.Catch: return(ThemeClassificationTypeNameKeys.StructureVisualizerCatch); case StructureVisualizerDataBlockKind.Filter: return(ThemeClassificationTypeNameKeys.StructureVisualizerFilter); case StructureVisualizerDataBlockKind.Finally: return(ThemeClassificationTypeNameKeys.StructureVisualizerFinally); case StructureVisualizerDataBlockKind.Fault: return(ThemeClassificationTypeNameKeys.StructureVisualizerFault); case StructureVisualizerDataBlockKind.Other: return(ThemeClassificationTypeNameKeys.StructureVisualizerOther); default: Debug.Fail($"Unknown block kind: {blockKind}"); return(ThemeClassificationTypeNameKeys.StructureVisualizerOther); } }
string GetColorInfoType(StructureVisualizerDataBlockKind blockKind) { switch (blockKind) { case StructureVisualizerDataBlockKind.Namespace: return(ThemeClassificationTypeNameKeys.StructureVisualizerNamespace); case StructureVisualizerDataBlockKind.Type: return(ThemeClassificationTypeNameKeys.StructureVisualizerType); case StructureVisualizerDataBlockKind.ValueType: return(ThemeClassificationTypeNameKeys.StructureVisualizerValueType); case StructureVisualizerDataBlockKind.Interface: return(ThemeClassificationTypeNameKeys.StructureVisualizerInterface); case StructureVisualizerDataBlockKind.Method: return(ThemeClassificationTypeNameKeys.StructureVisualizerMethod); case StructureVisualizerDataBlockKind.Accessor: return(ThemeClassificationTypeNameKeys.StructureVisualizerAccessor); case StructureVisualizerDataBlockKind.AnonymousMethod: return(ThemeClassificationTypeNameKeys.StructureVisualizerAnonymousMethod); case StructureVisualizerDataBlockKind.Constructor: return(ThemeClassificationTypeNameKeys.StructureVisualizerConstructor); case StructureVisualizerDataBlockKind.Destructor: return(ThemeClassificationTypeNameKeys.StructureVisualizerDestructor); case StructureVisualizerDataBlockKind.Operator: return(ThemeClassificationTypeNameKeys.StructureVisualizerOperator); case StructureVisualizerDataBlockKind.Conditional: return(ThemeClassificationTypeNameKeys.StructureVisualizerConditional); case StructureVisualizerDataBlockKind.Loop: return(ThemeClassificationTypeNameKeys.StructureVisualizerLoop); case StructureVisualizerDataBlockKind.Property: return(ThemeClassificationTypeNameKeys.StructureVisualizerProperty); case StructureVisualizerDataBlockKind.Event: return(ThemeClassificationTypeNameKeys.StructureVisualizerEvent); case StructureVisualizerDataBlockKind.Try: return(ThemeClassificationTypeNameKeys.StructureVisualizerTry); case StructureVisualizerDataBlockKind.Catch: return(ThemeClassificationTypeNameKeys.StructureVisualizerCatch); case StructureVisualizerDataBlockKind.Filter: return(ThemeClassificationTypeNameKeys.StructureVisualizerFilter); case StructureVisualizerDataBlockKind.Finally: return(ThemeClassificationTypeNameKeys.StructureVisualizerFinally); case StructureVisualizerDataBlockKind.Fault: return(ThemeClassificationTypeNameKeys.StructureVisualizerFault); case StructureVisualizerDataBlockKind.Lock: return(ThemeClassificationTypeNameKeys.StructureVisualizerLock); case StructureVisualizerDataBlockKind.Using: return(ThemeClassificationTypeNameKeys.StructureVisualizerUsing); case StructureVisualizerDataBlockKind.Fixed: return(ThemeClassificationTypeNameKeys.StructureVisualizerFixed); case StructureVisualizerDataBlockKind.Case: return(ThemeClassificationTypeNameKeys.StructureVisualizerCase); case StructureVisualizerDataBlockKind.Other: return(ThemeClassificationTypeNameKeys.StructureVisualizerOther); default: Debug.Fail($"Unknown block kind: {blockKind}"); return(ThemeClassificationTypeNameKeys.StructureVisualizerOther); } }
Pen GetPen(StructureVisualizerDataBlockKind blockKind) => GetLineColorInfo(GetColorInfoType(blockKind)).Pen;
/// <summary> /// Constructor /// </summary> /// <param name="blockTop">Start block span</param> /// <param name="blockBottom">End block span</param> /// <param name="blockKind">Block kind</param> public StructureVisualizerData(SnapshotSpan blockTop, SnapshotSpan blockBottom, StructureVisualizerDataBlockKind blockKind) { Top = blockTop; Bottom = blockBottom; BlockKind = blockKind; }