From 77b16a5ce6cd079fe8fc9a28f72f2de885953fe9 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Mon, 16 Jan 2023 12:23:11 +0000 Subject: [PATCH] tvplanit: Fix GanttView crashing with empty datastore. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8682 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/tvplanit/examples/gantt/data.ini | 13 ++++--------- components/tvplanit/source/vpganttview.pas | 3 +++ 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/components/tvplanit/examples/gantt/data.ini b/components/tvplanit/examples/gantt/data.ini index e8db69a88..4654672ff 100644 --- a/components/tvplanit/examples/gantt/data.ini +++ b/components/tvplanit/examples/gantt/data.ini @@ -2,14 +2,9 @@ Version=v105 [Resources] -1178568021={Description:Gantt-Test}|{ResourceActive:true} +1178568021={Description:Test}|{ResourceActive:true} [Events of resource 1178568021] -1273124118={StartTime:2022/06/25 06:00:00}|{EndTime:2022/06/27 18:00:00}|{ResourceID:1178568021}|{Description:Phase 1}|{Category:1}|{AllDayEvent:false}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} -909791748={StartTime:2022/07/06}|{EndTime:2022/07/08}|{ResourceID:1178568021}|{Description:Phase 1a}|{Category:0}|{AllDayEvent:true}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} -1535857465={StartTime:2022/07/11 08:00:00}|{EndTime:2022/07/15 18:00:00}|{ResourceID:1178568021}|{Description:Phase 2}|{Category:0}|{AllDayEvent:false}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} -1813046879={StartTime:2022/07/19 08:00:00}|{EndTime:2022/07/22 18:30:00}|{ResourceID:1178568021}|{Description:Phase 3}|{Category:2}|{AllDayEvent:false}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} -1294424480={StartTime:2022/07/26 01:00:00}|{EndTime:2022/07/27 23:00:00}|{ResourceID:1178568021}|{Description:Phase 4}|{Category:0}|{AllDayEvent:false}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} -1842424188={StartTime:2022/08/02 08:00:00}|{EndTime:2022/08/04 16:00:00}|{ResourceID:1178568021}|{Description:Phase 5}|{Category:1}|{AllDayEvent:true}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} -1819459250={StartTime:2022/08/03}|{EndTime:2022/08/11}|{ResourceID:1178568021}|{Description:Phase 6}|{Category:0}|{AllDayEvent:true}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} -1339092840={StartTime:2022/08/10}|{EndTime:2022/08/16}|{ResourceID:1178568021}|{Description:Phase 7}|{Category:3}|{AllDayEvent:true}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} +1535857465={StartTime:2023/01/10 09:00:00}|{EndTime:2023/01/10 18:30:00}|{ResourceID:1178568021}|{Description:Test}|{Category:0}|{AllDayEvent:false}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} +1273124118={StartTime:2023/01/16}|{EndTime:2023/01/18 23:59:00}|{ResourceID:1178568021}|{Description:TEST}|{Category:0}|{AllDayEvent:true}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} +1813046879={StartTime:2023/01/24 08:00:00}|{EndTime:2023/01/24 18:00:00}|{ResourceID:1178568021}|{Description:TEST}|{Category:0}|{AllDayEvent:false}|{AlarmSet:false}|{AlarmAdvance:15}|{AlarmAdvanceType:atMinutes}|{RepeatCode:rtNone}|{CustomInterval:0} diff --git a/components/tvplanit/source/vpganttview.pas b/components/tvplanit/source/vpganttview.pas index d9e661bca..623deee96 100644 --- a/components/tvplanit/source/vpganttview.pas +++ b/components/tvplanit/source/vpganttview.pas @@ -1691,6 +1691,9 @@ begin end; SetLength(FWeekRecords, GetNumWeeks); + if Length(FWeekRecords) = 0 then + exit; + x1 := FixedColWidth; y1 := 0; if (gchMonth in FColHeaderAttributes.Visible) then