/// <summary> /// Moves the cursor to the previous marker /// </summary> public static void PreviousMarker(ScintillaControl sci, Int32 marker, Int32 line) { Int32 prev = 0; Int32 count = 0; Int32 lineMask = sci.MarkerGet(line); if ((lineMask & GetMarkerMask(marker)) != 0) { prev = sci.MarkerPrevious(line - 1, GetMarkerMask(marker)); if (prev != -1) sci.GotoLine(prev); else { count = sci.LineCount; prev = sci.MarkerPrevious(count, GetMarkerMask(marker)); if (prev != -1) sci.GotoLine(prev); } } else { prev = sci.MarkerPrevious(line, GetMarkerMask(marker)); if (prev != -1) sci.GotoLine(prev); else { count = sci.LineCount; prev = sci.MarkerPrevious(count, GetMarkerMask(marker)); if (prev != -1) sci.GotoLine(prev); } } }
/// <summary> /// Moves the cursor to the previous marker /// </summary> public static void PreviousMarker(ScintillaControl sci, Int32 marker, Int32 line) { Int32 prev = 0; Int32 count = 0; Int32 lineMask = sci.MarkerGet(line); if ((lineMask & GetMarkerMask(marker)) != 0) { prev = sci.MarkerPrevious(line - 1, GetMarkerMask(marker)); if (prev != -1) { sci.EnsureVisibleEnforcePolicy(prev); sci.GotoLineIndent(prev); } else { count = sci.LineCount; prev = sci.MarkerPrevious(count, GetMarkerMask(marker)); if (prev != -1) { sci.EnsureVisibleEnforcePolicy(prev); sci.GotoLineIndent(prev); } } } else { prev = sci.MarkerPrevious(line, GetMarkerMask(marker)); if (prev != -1) { sci.EnsureVisibleEnforcePolicy(prev); sci.GotoLineIndent(prev); } else { count = sci.LineCount; prev = sci.MarkerPrevious(count, GetMarkerMask(marker)); if (prev != -1) { sci.EnsureVisibleEnforcePolicy(prev); sci.GotoLineIndent(prev); } } } }