/// <summary> /// Sets the colours of the syntax style /// </summary> /// <param name="values"></param> public static void SetSyntaxStyle(SyntaxStyleValues values) { if(values != null) s_ColorValues = values; SaveSyntaxStyle(); UpdateSyntaxStyle(); }
/// <summary> /// Loads serialized colour values to use in the syntax style /// </summary> public static void LoadColorValues() { if (MainWindowViewModel.GetInstance().ActiveTheme.Name == "Dark") s_ColorValues = ParseSyntaxStyleString(Properties.Settings.Default.SyntaxStyleDark); //s_ColorValues = ParseSyntaxStyleString("#dfdfdf;#57a64a;#ff22ff;#569cd6;#4ec9b0;#70b0e0;#bfbfbf;#569cd6;"); else s_ColorValues = ParseSyntaxStyleString(Properties.Settings.Default.SyntaxStyleLight); //s_ColorValues = ParseSyntaxStyleString("#202020;#57a64a;#ff22ff;#569cd6;#4ec9b0;#70b0e0;#404040;#569cd6;"); UpdateSyntaxStyle(); }
/// <summary> /// Serializes the colours of the syntax style /// </summary> /// <param name="values">Colour values</param> /// <returns>Serialized value</returns> private static string CreateSyntaxStyleString(SyntaxStyleValues values) { StringBuilder sb = new StringBuilder(); sb.Append(values.DIGIT + ';'); sb.Append(values.COMMENT + ';'); sb.Append(values.STRING + ';'); sb.Append(values.PAIR + ';'); sb.Append(values.CLASS + ';'); sb.Append(values.STATEMENT + ';'); sb.Append(values.FUNCTION + ';'); sb.Append(values.BOOLEAN + ';'); return sb.ToString(); }
/// <summary> /// Deserializes the colours of the syntax style /// </summary> /// <param name="value">Serialized value</param> /// <returns>Colour values</returns> private static SyntaxStyleValues ParseSyntaxStyleString(string value) { SyntaxStyleValues ssv = new SyntaxStyleValues(); string[] values = value.Split(';'); if (values.Length < 8) return ssv; ssv.DIGIT = values[0]; ssv.COMMENT = values[1]; ssv.STRING = values[2]; ssv.PAIR = values[3]; ssv.CLASS = values[4]; ssv.STATEMENT = values[5]; ssv.FUNCTION = values[6]; ssv.BOOLEAN = values[7]; return ssv; }