case (DateTickUnit.MONTH):
years = calendar.get(Calendar.YEAR);
calendar.clear(Calendar.MILLISECOND);
calendar.set(years, value, 1, 0, 0, 0);
Month month = new Month(calendar.getTime());
Date standardDate = this.calculateDateForPosition(month,
this.tickMarkPosition);
final long millis = standardDate.getTime();
if (millis > date.getTime()) {
month = (Month) month.previous();
standardDate = this.calculateDateForPosition(month,
this.tickMarkPosition);
}
return standardDate;