lines = new LinkedList<String>();
- vScroller = new TVScroller(this, getWidth() - 1, 0, getHeight() - 1);
- hScroller = new THScroller(this, 0, getHeight() - 1, getWidth() - 1);
+ vScroller = new TVScroller(this, getWidth() - 1, 0,
+ Math.max(1, getHeight() - 1));
+ hScroller = new THScroller(this, 0, getHeight() - 1,
+ Math.max(1, getWidth() - 1));
reflowData();
}
@Override
public void setWidth(final int width) {
super.setWidth(width);
- hScroller.setWidth(getWidth() - 1);
- vScroller.setX(getWidth() - 1);
+ if (hScroller != null) {
+ hScroller.setWidth(getWidth() - 1);
+ }
+ if (vScroller != null) {
+ vScroller.setX(getWidth() - 1);
+ }
}
/**
@Override
public void setHeight(final int height) {
super.setHeight(height);
- hScroller.setY(getHeight() - 1);
- vScroller.setHeight(getHeight() - 1);
+ if (hScroller != null) {
+ hScroller.setY(getHeight() - 1);
+ }
+ if (vScroller != null) {
+ vScroller.setHeight(getHeight() - 1);
+ }
}
/**
} else {
line = "";
}
- String formatString = "%-" + Integer.toString(getWidth() - 1) + "s";
- putStringXY(0, topY, String.format(formatString, line), color);
+ if (getWidth() > 3) {
+ String formatString = "%-" + Integer.toString(getWidth() - 1) + "s";
+ putStringXY(0, topY, String.format(formatString, line), color);
+ }
topY++;
if (topY >= (getHeight() - 1)) {