1 | if (date == null) {↵ | | 1 | if (maximumDate == null) {↵
|
2 | throw new IllegalArgumentException("Null 'date' argument.");↵ | | 2 | throw new IllegalArgumentException("Null 'maximumDate' argument.");↵
|
3 | }↵ | | 3 | }↵
|
4 | // check the new minimum date relative to the current maximum date↵ | | 4 | // check the new maximum date relative to the current minimum date↵
|
5 | Date maxDate = getMaximumDate();↵ | | 5 | Date minDate = getMinimumDate();↵
|
6 | long maxMillis = maxDate.getTime();↵ | | 6 | long minMillis = minDate.getTime();↵
|
7 | long newMinMillis = date.getTime();↵ | | 7 | long newMaxMillis = maximumDate.getTime();↵
|
8 | if (maxMillis <= newMinMillis) {↵ | | 8 | if (minMillis >= newMaxMillis) {↵
|
9 | Date oldMin = getMinimumDate();↵ | | 9 | Date oldMax = getMaximumDate();↵
|
10 | long length = maxMillis - oldMin.getTime();↵ | | 10 | long length = oldMax.getTime() - minMillis;↵
|
11 | maxDate = new Date(newMinMillis + length);↵ | | 11 | minDate = new Date(newMaxMillis - length);↵
|
12 | }↵ | | 12 | }↵
|
13 | setRange(new DateRange(date, maxDate), true, false);↵ | | 13 | setRange(new DateRange(minDate, maximumDate), true, false);↵
|
14 | notifyListeners(new AxisChangeEvent(this)); | | 14 | notifyListeners(new AxisChangeEvent(this));
|