tvplanit: Event editor cannot be closed when the end of recurrence is not specified for an event which is repeated for a limited number of times.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8555 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz
2022-10-13 22:05:52 +00:00
parent f102404a6c
commit 4e55432d77
10 changed files with 42 additions and 4 deletions

View File

@ -185,6 +185,7 @@ resourcestring
'Do you want to exchange them?';
RSStartEndTimesEqual = 'Start and end times cannot be equal.';
RSCannotEditOverlayedEvent= 'Cannot edit this overlayed event.';
RSNoEndDateForRecurringEvent = 'End of recurrence not specified.';
RSLoadICalTitle = 'Import from iCal file(s)';
RSSaveICalTitle = 'Export to iCal file';
RSNoOverlayedEvents = 'none';

View File

@ -312,6 +312,13 @@ begin
exit;
end;
if (RecurringType.ItemIndex > 0) and rbRepeatUntil.Checked and (RepeatUntil.Text = '') then
begin
MessageDlg(RSNoEndDateForRecurringEvent, mtError, [mbOK], 0);
RepeatUntil.SetFocus;
exit;
end;
ReturnCode := rtCommit;
Close;
end;
@ -427,7 +434,7 @@ begin
StartDate.Date := trunc(Event.StartTime);
EndDate.Date := trunc(Event.EndTime);
d := trunc(Event.RepeatRangeEnd);
if d = FOREVER_DATE then
if (d = 0) or (d = FOREVER_DATE) then
begin
RepeatUntil.Text := '';
rbRepeatForever.Checked := true;
@ -465,11 +472,9 @@ begin
CustomInterval.Text := IntToStr(Event.CustomInterval);
Category.Items.Clear;
for I := 0 to 9 do
if (CatColorMap.GetName(I) <> '') then
Category.Items.Add(CatColorMap.GetName(I));
Category.ItemIndex := Event.Category;
FLastEndTime := Event.EndTime;
@ -649,7 +654,7 @@ begin
rbRepeatUntil.Enabled := (RecurringType.ItemIndex > 0);
rbRepeatForever.Enabled := rbRepeatUntil.Enabled;
RepeatUntil.Enabled := rbRepeatUntil.Enabled and (not rbRepeatForever.Checked);
RepeatUntil.Enabled := rbRepeatUntil.Enabled; // and (not rbRepeatForever.Checked);
CustomInterval.Enabled := RecurringType.ItemIndex = ord(rtCustom);
IntervalLbl.Enabled := CustomInterval.Enabled;