You've already forked lazarus-ccr
tvplanit: Clear TVpMonthView's event array before painting. See https://forum.lazarus.freepascal.org/index.php/topic,62366.msg471573.html
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8713 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -207,7 +207,7 @@ procedure LoadImageFromRCDATA(AImage: TImage; ABaseResName: String;
|
|||||||
function GetScrollbarHeight: Integer;
|
function GetScrollbarHeight: Integer;
|
||||||
function GetScrollbarWidth: Integer;
|
function GetScrollbarWidth: Integer;
|
||||||
|
|
||||||
procedure FixLabels(AForm: TCustomForm);
|
procedure FixLabels({%H-}AForm: TCustomForm);
|
||||||
|
|
||||||
procedure Unused(const A1); overload;
|
procedure Unused(const A1); overload;
|
||||||
procedure Unused(const A1, A2); overload;
|
procedure Unused(const A1, A2); overload;
|
||||||
|
@ -278,6 +278,7 @@ type
|
|||||||
procedure PaintToCanvas(ACanvas: TCanvas; ARect: TRect; Angle: TVpRotationAngle;
|
procedure PaintToCanvas(ACanvas: TCanvas; ARect: TRect; Angle: TVpRotationAngle;
|
||||||
ADate: TDateTime);
|
ADate: TDateTime);
|
||||||
}
|
}
|
||||||
|
procedure ClearEventArray;
|
||||||
procedure RenderToCanvas(RenderCanvas: TCanvas; RenderIn: TRect;
|
procedure RenderToCanvas(RenderCanvas: TCanvas; RenderIn: TRect;
|
||||||
Angle: TVpRotationAngle; Scale: Extended; RenderDate: TDateTime;
|
Angle: TVpRotationAngle; Scale: Extended; RenderDate: TDateTime;
|
||||||
StartLine, StopLine: Integer; UseGran: TVpGranularity;
|
StartLine, StopLine: Integer; UseGran: TVpGranularity;
|
||||||
@ -606,6 +607,14 @@ begin
|
|||||||
Result := descrStr;
|
Result := descrStr;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TVpMonthView.ClearEventArray;
|
||||||
|
var
|
||||||
|
I: Integer;
|
||||||
|
begin
|
||||||
|
for I := 0 to High(mvEventArray) do
|
||||||
|
mvEventArray[I] := Default(TVpEventRec);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TVpMonthView.LoadLanguage;
|
procedure TVpMonthView.LoadLanguage;
|
||||||
var
|
var
|
||||||
item: TMenuItem;
|
item: TMenuItem;
|
||||||
|
@ -88,6 +88,7 @@ procedure TVpMonthViewPainter.Clear;
|
|||||||
begin
|
begin
|
||||||
RenderCanvas.Brush.Color := RealColor;
|
RenderCanvas.Brush.Color := RealColor;
|
||||||
RenderCanvas.FillRect(RenderIn);
|
RenderCanvas.FillRect(RenderIn);
|
||||||
|
FMonthView.ClearEventArray;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TVpMonthViewPainter.DrawBorders;
|
procedure TVpMonthViewPainter.DrawBorders;
|
||||||
@ -579,9 +580,9 @@ begin
|
|||||||
|
|
||||||
{ Store TextRect and Event in EventArray }
|
{ Store TextRect and Event in EventArray }
|
||||||
with TVpMonthViewOpener(FMonthView) do begin
|
with TVpMonthViewOpener(FMonthView) do begin
|
||||||
|
mvEventArray[visibleEvents].Rec := TextRect;
|
||||||
|
mvEventArray[visibleEvents].Event := TVpEvent(EventList.List^[j]);
|
||||||
Inc(visibleEvents);
|
Inc(visibleEvents);
|
||||||
mvEventArray[visibleEvents - 1].Rec := TextRect;
|
|
||||||
mvEventArray[visibleEvents - 1].Event := TVpEvent(EventList.List^[j]);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ Move TextRect down one line for the next item... }
|
{ Move TextRect down one line for the next item... }
|
||||||
@ -807,7 +808,7 @@ begin
|
|||||||
try
|
try
|
||||||
SelectClipRgn(RenderCanvas.Handle, Rgn);
|
SelectClipRgn(RenderCanvas.Handle, Rgn);
|
||||||
|
|
||||||
{ clear client area }
|
{ clear client area and event array }
|
||||||
Clear;
|
Clear;
|
||||||
|
|
||||||
{ measure the row heights }
|
{ measure the row heights }
|
||||||
|
Reference in New Issue
Block a user