private boolean breakAndSetText() {
			if (textQueue.isEmpty())
				return false;
			else {
				String s = textQueue.poll().trim();
				dummyArea.setText("");
				int acceptableEndOffset = 0;
				int i;
				for (i = 0; i < s.length(); i++) {
					char c = s.charAt(i);
					if (c == ' ')
						acceptableEndOffset = i;
					dummyArea.append("" + c);
					if (getLineCountAsSeen(dummyArea) > MAX_ROWS)
						break;
				}
				if (i == s.length())
					acceptableEndOffset = i;
				// debug println
				// System.out.println(s.substring(0, acceptableEndOffset));
				super.setText(s.substring(0, acceptableEndOffset));

				if (textQueue.isEmpty()) {
					if (acceptableEndOffset != s.length())
						textQueue.add(s.substring(acceptableEndOffset,
								s.length()));
				} else {
					if (acceptableEndOffset != s.length())
						textQueue.add(s.substring(acceptableEndOffset,
								s.length())
								+ textQueue.poll());
				}
				return true;
			}
		}