diff --git a/components/tvplanit/languages/vpsr.de.po b/components/tvplanit/languages/vpsr.de.po index 75ceda18d..2646ee71d 100644 --- a/components/tvplanit/languages/vpsr.de.po +++ b/components/tvplanit/languages/vpsr.de.po @@ -840,6 +840,10 @@ msgstr "Komponente muss mit einem TVpControlLink verbunden sein" msgid "Day increment unit not specified." msgstr "Einheit für das Zeitintervall nicht angegeben." +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "Ende der Wiederholungen nicht angegeben." + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/languages/vpsr.en.po b/components/tvplanit/languages/vpsr.en.po index 52ed6bbb9..2e66db9dc 100644 --- a/components/tvplanit/languages/vpsr.en.po +++ b/components/tvplanit/languages/vpsr.en.po @@ -833,6 +833,10 @@ msgstr "Component must be linked to a TVpControlLink" msgid "Day increment unit not specified." msgstr "Day increment unit not specified." +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "End of recurrence not specified." + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/languages/vpsr.fi.po b/components/tvplanit/languages/vpsr.fi.po index 256e1771b..7e62fcb95 100644 --- a/components/tvplanit/languages/vpsr.fi.po +++ b/components/tvplanit/languages/vpsr.fi.po @@ -831,6 +831,10 @@ msgstr "" msgid "Day increment unit not specified." msgstr "" +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "" + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/languages/vpsr.fr.po b/components/tvplanit/languages/vpsr.fr.po index dad518b70..c47be6e99 100644 --- a/components/tvplanit/languages/vpsr.fr.po +++ b/components/tvplanit/languages/vpsr.fr.po @@ -848,6 +848,10 @@ msgstr "Le composant doit être lié à un TVpControlLink" msgid "Day increment unit not specified." msgstr "" +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "" + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/languages/vpsr.nl.po b/components/tvplanit/languages/vpsr.nl.po index afb1ef783..0127420da 100644 --- a/components/tvplanit/languages/vpsr.nl.po +++ b/components/tvplanit/languages/vpsr.nl.po @@ -842,6 +842,10 @@ msgstr "Component moet moet met een TVpControlLink verbonden zijn" msgid "Day increment unit not specified." msgstr "" +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "" + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/languages/vpsr.pl.po b/components/tvplanit/languages/vpsr.pl.po index 965fcfc89..4d551e42c 100644 --- a/components/tvplanit/languages/vpsr.pl.po +++ b/components/tvplanit/languages/vpsr.pl.po @@ -850,6 +850,10 @@ msgstr "Komponent musi być przypisany do TVpControlLink." msgid "Day increment unit not specified." msgstr "Nie określono interwału dnia." +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "" + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/languages/vpsr.pot b/components/tvplanit/languages/vpsr.pot index de95a59f7..a1d548960 100644 --- a/components/tvplanit/languages/vpsr.pot +++ b/components/tvplanit/languages/vpsr.pot @@ -820,6 +820,10 @@ msgstr "" msgid "Day increment unit not specified." msgstr "" +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "" + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/languages/vpsr.ru.po b/components/tvplanit/languages/vpsr.ru.po index 55c5ccb58..4246420df 100644 --- a/components/tvplanit/languages/vpsr.ru.po +++ b/components/tvplanit/languages/vpsr.ru.po @@ -848,6 +848,10 @@ msgstr "" msgid "Day increment unit not specified." msgstr "" +#: vpsr.rsnoenddateforrecurringevent +msgid "End of recurrence not specified." +msgstr "" + #: vpsr.rsnoeventitemsfoundinical #, object-pascal-format msgid "No event items found in \"%s\"." diff --git a/components/tvplanit/source/include/vpsr.inc b/components/tvplanit/source/include/vpsr.inc index 4dbfa7dd4..7ab30b730 100644 --- a/components/tvplanit/source/include/vpsr.inc +++ b/components/tvplanit/source/include/vpsr.inc @@ -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'; diff --git a/components/tvplanit/source/vpevnteditdlg.pas b/components/tvplanit/source/vpevnteditdlg.pas index 9cf3f161a..c1e0517ad 100644 --- a/components/tvplanit/source/vpevnteditdlg.pas +++ b/components/tvplanit/source/vpevnteditdlg.pas @@ -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;