public int getMaxHeight() {
    if(caching && !maxHeightDirty) return _maxHeight;
	  maxHeightDirty = false;
		int max = 0;
		for (int i = 0; i < width; i++) {
			if (getColumnHeight(i) > max)
				max = getColumnHeight(i);
		}
		return (_maxHeight = max);

	}