Quintiq file version 2.0 #parent: #root Method InitializeRecurrencePeriod ( shadow[LibCal_RecurrencePeriod] sRecurrencePeriod_i ) id:Method_LibCal_dlgEvent_InitializeRecurrencePeriod { #keys: '[131092.0.2141066155]' Body: [* // Take over the existing period (if applicable) if( not isnull( sRecurrencePeriod_i ) ) { dsStartOfPeriod.Date( sRecurrencePeriod_i.StartDate() ); dhStartOfPeriod.Data( sRecurrencePeriod_i.StartDate() ); // NoEnd if( sRecurrencePeriod_i.istype( shadow[LibCal_RecurrencePeriodWithoutEnd] ) ) { // Is already initialized } // NrOfOccurrences else if( sRecurrencePeriod_i.istype( shadow[LibCal_RecurrencePeriodNrOfOccurrences] ) ) { period := sRecurrencePeriod_i.astype( shadow[LibCal_RecurrencePeriodNrOfOccurrences] ); ckbNoEndDate.Checked( false ); ckbEndAfter. Checked( true ); edtNrOfOccurrences.Text( [String]period.NrOfOccurrences() ); } // WithEndDate else if( sRecurrencePeriod_i.istype( shadow[LibCal_RecurrencePeriodWithEndDate] ) ) { period := sRecurrencePeriod_i.astype( shadow[LibCal_RecurrencePeriodWithEndDate] ); ckbEndBy.Checked( true ); dsEndOfPeriod.Date( period.EndDate() ); } } // Workaround for the fact that setting ckbEndOfPeriod.Checked() is not noticed during the first execution // of response dsStartOfPeriod.OnChanged(). See method SetEndOfPeriod() of the dialog for more information. lblWorkaround.Text( "initialized" ); this.InitializeDuration(); // Explicitly initialize the duration this.SetEndOfPeriod(); *] }