From c8ac39c295bb859ee72314b6ec8e2412799f6381 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Sat, 13 Aug 2022 16:40:15 +0000 Subject: [PATCH] tvplanit: Some clean-up in holiday calculation. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8390 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/tvplanit/examples/fulldemo/demomain.pas | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/components/tvplanit/examples/fulldemo/demomain.pas b/components/tvplanit/examples/fulldemo/demomain.pas index 3cf7f7cf9..5b93b0a7c 100644 --- a/components/tvplanit/examples/fulldemo/demomain.pas +++ b/components/tvplanit/examples/fulldemo/demomain.pas @@ -138,6 +138,7 @@ type FResID: Integer; FLanguageDir: String; FHolidays: THolidayList; + FHolidayYear: Integer; procedure CalcHolidays(AYear: Integer); procedure ConnectHandler(Sender: TObject); procedure CreateResourceGroup; @@ -456,13 +457,12 @@ begin if d1 <> d then FHolidays.Add(d1, 'Christmas Day (in lieu)'); - // New Year + // New Year d := EncodeDate(AYear+1, 1, 1); // +1 --> following year FHolidays.Add(d, 'New Year'); d1 := InLieuHoliday(d); if d <> d1 then FHolidays.Add(d1, 'New Year (in lieu)'); - end; procedure TMainForm.Cb3DChange(Sender: TObject); @@ -595,7 +595,11 @@ var year: Integer; begin year := YearOf(ADate); - CalcHolidays(year); + if year <> FHolidayYear then + begin + CalcHolidays(year); + FHolidayYear := year; + end; end; procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: boolean);