@Override public void fillScreen(final char c) { myTerminalTextBuffer.lock(); try { final char[] chars = new char[myTerminalWidth]; Arrays.fill(chars, c); final String str = new String(chars); for (int row = 1; row <= myTerminalHeight; row++) { myTerminalTextBuffer.writeString(0, row, str); } } finally { myTerminalTextBuffer.unlock(); } }
@Override public void horizontalTab() { if (myCursorX >= myTerminalWidth) { return; } int length = myTerminalTextBuffer.getLine(myCursorY - 1).getText().length(); int stop = myTabulator.nextTab(myCursorX); myCursorX = Math.max(myCursorX, length); if (myCursorX < stop) { char[] chars = new char[stop - myCursorX]; Arrays.fill(chars, CharUtils.EMPTY_CHAR); doWriteString(new String(chars)); } else { myCursorX = stop; } myDisplay.setCursor(myCursorX, myCursorY); }