QuarterPickerModel constructor
QuarterPickerModel({})
Implementation
QuarterPickerModel({
DateTime? currentTime,
DateTime? maxTime,
DateTime? minTime,
List<String>? formats,
List<bool>? labels,
List<int>? weights,
List<String>? dividers,
}) : assert(weights == null || weights.length == 2),
assert(dividers == null || dividers.length == 1),
assert(formats == null || formats.length == 2),
assert(labels == null || labels.length == 1) {
this.weights = weights ?? [1, 1];
this.dividers = dividers ?? [''];
// 年label
this.labels = labels ?? [true];
this.formats = formats ?? [yyyy, QQQQ];
this.maxTime = maxTime ?? DateTime(2049, 12, 31);
this.minTime = minTime ?? DateTime(1970, 1, 1);
_checkTime(currentTime ??= DateTime.now());
_fillYearList();
_fillQuarterList();
int minQuarter = getQuarter(_minMonthOfCurrentYear());
int curQuarter = getQuarter(this.currentTime.month);
firstIndex = this.currentTime.year - this.minTime.year;
secondIndex = curQuarter - minQuarter;
thirdIndex = 0;
}