Skip to content

Commit 51b650a

Browse files
rduivenvoordenyalldawson
authored andcommittedOct 5, 2020
Show some more diverse format for an interval
Before showing an interval of two hours would show you: interval: 0.0833333 days Now depending on the range of the interval you will see output in days, minutes or seconds: make_interval(years:=0.75) <interval: 273.938 days> make_interval(days:=2, hours:=3) <interval: 2.125 days> make_interval(hours:=3,days:=1) <interval: 1.125 days> make_interval(minutes:=30) <interval: 30 minutes> make_interval(minutes:=0.5,seconds:=5) <interval: 35 seconds>
1 parent 667af7f commit 51b650a

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed
 

‎src/core/expression/qgsexpression.cpp

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -975,7 +975,22 @@ QString QgsExpression::formatPreviewString( const QVariant &value, const bool ht
975975
else if ( value.canConvert< QgsInterval >() )
976976
{
977977
QgsInterval interval = value.value<QgsInterval>();
978-
return startToken + tr( "interval: %1 days" ).arg( interval.days() ) + endToken;
978+
if ( interval.days() > 1 )
979+
{
980+
return startToken + tr( "interval: %1 days" ).arg( interval.days() ) + endToken;
981+
}
982+
else if ( interval.hours() > 1 )
983+
{
984+
return startToken + tr( "interval: %1 hours" ).arg( interval.hours() ) + endToken;
985+
}
986+
else if ( interval.minutes() > 1 )
987+
{
988+
return startToken + tr( "interval: %1 minutes" ).arg( interval.minutes() ) + endToken;
989+
}
990+
else
991+
{
992+
return startToken + tr( "interval: %1 seconds" ).arg( interval.seconds() ) + endToken;
993+
}
979994
}
980995
else if ( value.canConvert< QgsGradientColorRamp >() )
981996
{

0 commit comments

Comments
 (0)
Please sign in to comment.