public static HighlightingRule CreateDigitRule() { var digitRule = new HighlightingRule(); Color color = (Color)ColorConverter.ConvertFromString("#2585E5"); digitRule.Color = new HighlightingColor() { Foreground = new CustomizedBrush(color) }; // These Regex's must match with the grammars in the DS ATG for digits // Refer to the 'number' and 'float' tokens in Start.atg //******************************************************************************* // number = digit {digit} . // float = digit {digit} '.' digit {digit} [('E' | 'e') ['+'|'-'] digit {digit}]. //******************************************************************************* string digit = @"(-?\b\d+)"; string floatingPoint = @"(\.[0-9]+)"; string numberWithOptionalDecimal = digit + floatingPoint + "?"; string exponent = @"([eE][+-]?[0-9]+)"; string numberWithExponent = digit + floatingPoint + exponent; digitRule.Regex = new Regex(numberWithExponent + "|" + numberWithOptionalDecimal); return digitRule; }
public HighlightingDefinition AddRule(string expression, HighlightingColor color) { var rule = new HighlightingRule { Regex = expression.ToRegex(), Color = color }; return AddRule(rule); }
/// <summary> /// Create hight lighting rule for class. /// </summary> /// <param name="engineController"></param> /// <returns></returns> public static HighlightingRule CreateClassHighlightRule(EngineController engineController) { Color color = (Color)ColorConverter.ConvertFromString("#2E998F"); var classHighlightRule = new HighlightingRule { Color = new HighlightingColor() { Foreground = new CodeHighlightingRuleFactory.CustomizedBrush(color) } }; var wordList = engineController.CodeCompletionServices.GetClasses(); String regex = String.Format(@"\b({0})({0})?\b", String.Join("|", wordList)); classHighlightRule.Regex = new Regex(regex); return classHighlightRule; }
public HighlightingDefinition AddRule(HighlightingRule rule) { MainRuleSet.Rules.Add(rule); AddColor(rule.Color); return this; }
public HighlightingRule GetRule() { var rule = new HighlightingRule(); rule.Color = GetColor(); rule.Regex = GetRegexFromString(Regex); return rule; }
private HighlightingRule CreateMethodHighlightRule() { Color color = (Color)ColorConverter.ConvertFromString("#417693"); var methodHighlightRule = new HighlightingRule { Color = new HighlightingColor() { Foreground = new CodeBlockEditorUtils.CustomizedBrush(color) } }; var engineController = dynamoViewModel.EngineController; var wordList = engineController.CodeCompletionServices.GetGlobals(); String regex = String.Format(@"\b({0})({0})?\b", String.Join("|", wordList)); methodHighlightRule.Regex = new Regex(regex); return methodHighlightRule; }
private HighlightingRule CreateClassHighlightRule() { Color color = (Color)ColorConverter.ConvertFromString("#2E998F"); var classHighlightRule = new HighlightingRule(); classHighlightRule.Color = new HighlightingColor() { Foreground = new Dynamo.Wpf.Views.CodeBlockEditorUtils.CustomizedBrush(color) }; var engineController = dynamoViewModel.Model.EngineController; var wordList = engineController.CodeCompletionServices.GetClasses(); String regex = String.Format(@"\b({0})({0})?\b", String.Join("|", wordList)); classHighlightRule.Regex = new Regex(regex); return classHighlightRule; }
private void InitializeSyntaxHighlighter() { var stream = GetType().Assembly.GetManifestResourceStream( "Dynamo.UI.Resources." + Configurations.HighlightingFile); this.InnerTextEditor.SyntaxHighlighting = HighlightingLoader.Load( new XmlTextReader(stream), HighlightingManager.Instance); // Highlighting Digits var rules = this.InnerTextEditor.SyntaxHighlighting.MainRuleSet.Rules; var highlightingRule = new HighlightingRule(); Color color = (Color)ColorConverter.ConvertFromString("#2585E5"); highlightingRule.Color = new HighlightingColor() { Foreground = new CustomizedBrush(color) }; // These Regex's must match with the grammars in the DS ATG for digits // Refer to the 'number' and 'float' tokens in Start.atg //******************************************************************************* // number = digit {digit} . // float = digit {digit} '.' digit {digit} [('E' | 'e') ['+'|'-'] digit {digit}]. //******************************************************************************* // number with optional floating point string number = @"(-?\d+(\.[0-9]+)?)"; // optional exponent string exponent = @"([eE][+-]?[0-9]+)?"; highlightingRule.Regex = new Regex(number + exponent); rules.Add(highlightingRule); }
/// <summary> /// Create hight lighting rule for method. /// </summary> /// <returns></returns> public static HighlightingRule CreateMethodHighlightRule(EngineController engineController) { Color color = (Color)ColorConverter.ConvertFromString("#417693"); var methodHighlightRule = new HighlightingRule { Color = new HighlightingColor() { Foreground = new CodeHighlightingRuleFactory.CustomizedBrush(color) } }; var wordList = engineController.CodeCompletionServices.GetGlobals(); String regex = String.Format(@"\b({0})\b", String.Join("|", wordList)); methodHighlightRule.Regex = new Regex(regex); return methodHighlightRule; }