| Quintiq file version 2.0 | 
| #parent: #root | 
| Method UpdateDuration () id:Method_LibCal_dlgEditTimeInterval_UpdateDuration | 
| { | 
|   #keys: '[131094.0.1401995763]' | 
|   Body: | 
|   [* | 
|     timezone := TimeZone::UTCTimeZone();  // Use the UTC-timezone here, don't correct for a specific timezone.   | 
|      | 
|     // Don't use AddAsPeriod here, the 'nett' duration should be calculated here. | 
|     start    := datStartDate.Date().Add( timezone, durStartTimeOfDay.Duration() ); | 
|     end      := datEndDate  .Date().Add( timezone, durEndTimeOfDay  .Duration() ); | 
|     duration := end - start; | 
|      | 
|     // When the duration is one or more full days, the time should not be shown. | 
|     hideTime := LibCal_Event::USE_ONLY_DAYS() or | 
|                 ( duration.HourOfDay() = 0 and duration.MinuteOfHour() = 0 ); | 
|      | 
|     mask   := ifexpr( hideTime, "", "h:m" ); | 
|     indent := ifexpr( duration < Duration::Hours( 10 ), "    ", "  " ); | 
|      | 
|     if( abs( duration ) >= Duration::Days( 1 ) ) | 
|     { | 
|       mask := "d 'day" + ifexpr( abs( duration ) >= Duration::Days( 2 ), "s'", "'" ) + "  " + mask; | 
|     } | 
|      | 
|     valDuration.Text( indent + duration.Format( mask ) ); | 
|   *] | 
| } |