Desktop, Filter UI: make date/time consistent

On all (most?) places we use separate date/time fields for the time of a
dive, and we follow the setting from the preferences to format those.

Make the new filter widget consistent, with respect to the to and from
interval.

Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
This commit is contained in:
Jan Mulder 2019-01-20 17:00:56 +01:00 committed by Dirk Hohndel
parent 5986225fce
commit e8b0d165a7
4 changed files with 57 additions and 17 deletions

View file

@ -114,10 +114,16 @@ bool MultiFilterSortModel::showDive(const struct dive *d) const
(d->airtemp.mkelvin < C_to_mkelvin(filterData.minAirTemp) || d->airtemp.mkelvin > C_to_mkelvin(filterData.maxAirTemp)))
return false;
if (filterData.from.isValid() && d->when < filterData.from.toTime_t())
QDateTime t = filterData.fromDate;
t.setTime(filterData.fromTime);
if (filterData.fromDate.isValid() && filterData.fromTime.isValid() &&
d->when < t.toMSecsSinceEpoch()/1000 + t.offsetFromUtc())
return false;
if (filterData.to.isValid() && d->when > filterData.to.toTime_t())
t = filterData.toDate;
t.setTime(filterData.toTime);
if (filterData.toDate.isValid() && filterData.toTime.isValid() &&
d->when > t.toMSecsSinceEpoch()/1000 + t.offsetFromUtc())
return false;
// tags.

View file

@ -24,8 +24,10 @@ struct FilterData {
double maxWaterTemp = 100;
double minAirTemp = 0;
double maxAirTemp = 100;
QDateTime from;
QDateTime to = QDateTime::currentDateTime();
QDateTime fromDate;
QTime fromTime;
QDateTime toDate = QDateTime::currentDateTime();
QTime toTime = QTime::currentTime();
QStringList tags;
QStringList people;
QStringList location;