private void LineQueueEndOfSameLine() { CurrentLine.SpecialColor = false; ConsoleAccess.ResetColor(); PreviousLine = CurrentLine; CurrentLine = null; }
private void LineQueueRestoreColor() { CurrentLine.SpecialColor = false; ConsoleAccess.ResetColor(); CurrentLine.LineIndex++; if (CurrentLine.LineIndex < CurrentLine.Line.Length) { CurrentLine.LastCharForeground = ConsoleAccess.ForegroundColor; CurrentLine.LastCharBackground = ConsoleAccess.BackgroundColor; } }
private void SameLineDot() { ConsoleAccess.Lock(); var OrigConsolePos = new int[2] { Console.CursorLeft, Console.CursorTop }; ConsoleAccess.ForegroundColor = PreviousLine.LastCharForeground; ConsoleAccess.BackgroundColor = PreviousLine.LastCharBackground; if (PreviousLine.DotCount < 3) { ConsoleAccess.SetCursorPosition( PreviousLine.ConsolePos[0] + PreviousLine.RealCharLineIndex + PreviousLine.DotCount, PreviousLine.ConsolePos[1]); PreviousLine.DotCount++; ConsoleAccess.Write("."); } else { ConsoleAccess.SetCursorPosition( PreviousLine.ConsolePos[0] + PreviousLine.RealCharLineIndex, PreviousLine.ConsolePos[1]); ConsoleAccess.Write(". "); PreviousLine.DotCount = 1; } ConsoleAccess.ResetColor(); ConsoleAccess.ConsolePosition = OrigConsolePos; CurrentLine = PreviousLine; LineQueueEndOfSameLine(); ConsoleAccess.Unlock(); FinishedTyping(); }