// get next word Stroke getNextStroke(BufferedReader logReader) { Stroke stroke = new Stroke(); String line = null; try { line = logReader.readLine(); int indexOfTransl = -1; if (line != null) indexOfTransl = line.indexOf("Translation"); if (line != null && indexOfTransl > -1) { boolean isMultipleWorld = false; int indexOfLast = 1 + line.indexOf(",) : "); if (indexOfLast < 1) { isMultipleWorld = true; indexOfLast = line.indexOf(" : "); } if (indexOfTransl == 24) { stroke.isDelete = false; } else { stroke.isDelete = true; } stroke.stroke = getStroke(line, indexOfTransl + 14, indexOfLast - 2); stroke.word = line.substring(indexOfLast + (isMultipleWorld ? 2 : 3), line.length() - 1); return stroke; } else { return null; } } catch (Exception e) { println("Error while reading stroke from Plover log file: " + e.getMessage()); } return null; }