/// <summary>
 /// 
 /// </summary>
 public static void RemoveAllHighlights(ScintillaControl sci)
 {
     if (sci == null) return;
     Int32 es = sci.EndStyled;
     Int32[] indics = new Int32[] { indicatorDebugCurrentLine, indicatorDebugDisabledBreakpoint, indicatorDebugEnabledBreakpoint };
     foreach (Int32 indicator in indics)
     {
         sci.CurrentIndicator = indicator;
         for (int position = 0; position < sci.Length;)
         {
             Int32 start = sci.IndicatorStart(indicator, position);
             Int32 end = sci.IndicatorEnd(indicator, start);
             Int32 length = end - start;
             if (length > 0)
             {
                 sci.IndicatorClearRange(start, length);
                 position = start + length + 1;
             }
             else break;
         }
     }
     sci.StartStyling(es, (1 << sci.StyleBits) - 1);
 }
        /// <summary>
        /// 
        /// </summary>
		static public void RemoveHighlight(ScintillaControl sci, Int32 line, Int32 indicator)
		{
			if (sci == null) return;
			Int32 start = sci.PositionFromLine(line);
			Int32 length = sci.LineLength(line);
			if (start < 0 || length < 1)
			{
				return;
			}
			// Remember previous EndStyled marker and restore it when we are done.
			Int32 es = sci.EndStyled;
			// Mask for style bits used for restore.
			Int32 mask = (1 << sci.StyleBits) - 1;
            Language lang = PluginBase.MainForm.SciConfig.GetLanguage(sci.ConfigurationLanguage);
            if (indicator == indicatorDebugCurrentLine)
            {
                sci.SetIndicFore(indicator, lang.editorstyle.DebugLineBack);
            }
            else if (indicator == indicatorDebugEnabledBreakpoint)
            {
                sci.SetIndicFore(indicator, lang.editorstyle.ErrorLineBack);
            }
            else if (indicator == indicatorDebugDisabledBreakpoint)
            {
                sci.SetIndicFore(indicator, lang.editorstyle.DisabledLineBack);
            }
			sci.SetIndicStyle(indicator, 7);
			sci.CurrentIndicator = indicator;
			sci.IndicatorClearRange(start, length);
			sci.StartStyling(es, mask);
		}
 /// <summary>
 /// 
 /// </summary>
 public static void RemoveHighlight(ScintillaControl sci, Int32 line, Int32 indicator)
 {
     if (sci == null) return;
     Int32 start = sci.PositionFromLine(line);
     Int32 length = sci.LineLength(line);
     if (start < 0 || length < 1) return;
     Int32 es = sci.EndStyled;
     Int32 mask = (1 << sci.StyleBits) - 1;
     Language lang = PluginBase.MainForm.SciConfig.GetLanguage(sci.ConfigurationLanguage);
     if (indicator == indicatorDebugCurrentLine)
     {
         sci.SetIndicFore(indicator, lang.editorstyle.DebugLineBack);
         sci.SetIndicSetAlpha(indicator, 40); // Improve contrast
     }
     else if (indicator == indicatorDebugEnabledBreakpoint)
     {
         sci.SetIndicFore(indicator, lang.editorstyle.ErrorLineBack);
         sci.SetIndicSetAlpha(indicator, 40); // Improve contrast
     }
     else if (indicator == indicatorDebugDisabledBreakpoint)
     {
         sci.SetIndicFore(indicator, lang.editorstyle.DisabledLineBack);
         sci.SetIndicSetAlpha(indicator, 40); // Improve contrast
     }
     sci.SetIndicStyle(indicator, 7);
     sci.CurrentIndicator = indicator;
     sci.IndicatorClearRange(start, length);
     sci.StartStyling(es, mask);
 }
Esempio n. 4
0
        /// <summary>
        /// 
        /// </summary>
		static public void RemoveHighlight(ScintillaControl sci, Int32 line, Int32 indicator)
		{
			if (sci == null)
				return;

			Int32 start = sci.PositionFromLine(line);

			Int32 length = sci.LineLength(line);
			if (start < 0 || length < 1)
			{
				return;
			}

			// Remember previous EndStyled marker and restore it when we are done.
			Int32 es = sci.EndStyled;
			// Mask for style bits used for restore.
			Int32 mask = (1 << sci.StyleBits) - 1;

			if (indicator == indicatorDebugCurrentLine)
			{
				sci.SetIndicFore(indicator, DataConverter.ColorToInt32(PluginMain.settingObject.DebugLineColor));
			}
			else if (indicator == indicatorDebugEnabledBreakpoint)
			{
				sci.SetIndicFore(indicator, DataConverter.ColorToInt32(PluginMain.settingObject.BreakPointEnableLineColor));
			}
			else if (indicator == indicatorDebugDisabledBreakpoint)
			{
				sci.SetIndicFore(indicator, DataConverter.ColorToInt32(PluginMain.settingObject.BreakPointDisableLineColor));
			}
			sci.SetIndicStyle(indicator, /* (int)ScintillaNet.Enums.IndicatorStyle.RoundBox */ 7);
			sci.CurrentIndicator = indicator;
			sci.IndicatorClearRange(start, length);
			sci.StartStyling(es, mask);
		}