Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method ConfirmWhenDifferent () as Boolean id:Method_LibCal_dlgCalendarSettings_ConfirmWhenDifferent 
 | 
{ 
 | 
  #keys: '[146730.0.1422592967]' 
 | 
  Body: 
 | 
  [* 
 | 
    // Explicit confirmation is only required when there are calendars with divergent settings, 
 | 
    // i.e. with settings that are different from the settings of the calendar of the panel. 
 | 
    calendarsToUpdate  := dhCalendars.Data(); 
 | 
    divergentCalendars := this.GetDivergentCalendars( dpCalendarSettings.Data(), dhCalendars.Data() ); 
 | 
    continue           := true; 
 | 
     
 | 
    if( divergentCalendars.Size() > 0 ) 
 | 
    { 
 | 
      dlg := construct( LibCal_dlgCalendarSettingsConfirmation ); 
 | 
      dlg.ShowInfo( dpCalendarSettings.Data(), divergentCalendars );  // Show info about the divergent calendars. 
 | 
       
 | 
      retVal   := dlg.DoModal( this ); 
 | 
      continue := retVal >= 0; 
 | 
     
 | 
      if( retVal = 1 ) 
 | 
      { 
 | 
        // Only update calendars with the same settings, so remove the divergent calendars. 
 | 
        calendarsToUpdate := calendarsToUpdate.Difference( divergentCalendars ); 
 | 
      } 
 | 
    } 
 | 
     
 | 
    if( continue ) 
 | 
    { 
 | 
      this.UpdateCalendars( calendarsToUpdate ); 
 | 
    } 
 | 
     
 | 
    return continue; 
 | 
  *] 
 | 
} 
 |