From 52dfc8ccac853adffb166c59cf191755ac2f1999 Mon Sep 17 00:00:00 2001 From: blikblum Date: Sun, 10 Apr 2016 19:27:41 +0000 Subject: [PATCH] * Fix memleak in dragdrop demo. Issue 29983 git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4613 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- .../branches/4.8/demos/dragdrop/fmain.lfm | 3 ++- .../branches/4.8/demos/dragdrop/fmain.pas | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.lfm b/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.lfm index f93e3c966..1eafc371e 100644 --- a/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.lfm +++ b/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.lfm @@ -7,7 +7,7 @@ object MainForm: TMainForm ClientHeight = 349 ClientWidth = 454 Position = poScreenCenter - LCLVersion = '1.1' + LCLVersion = '1.7' object VirtualStringTree1: TVirtualStringTree Left = 8 Height = 315 @@ -25,6 +25,7 @@ object MainForm: TMainForm TreeOptions.AutoOptions = [toAutoDropExpand, toAutoScroll, toAutoScrollOnExpand, toAutoTristateTracking, toAutoDeleteMovedNodes] OnDragOver = VirtualStringTree1DragOver OnDragDrop = VirtualStringTree1DragDrop + OnFreeNode = VirtualStringTree1FreeNode OnGetText = VirtualStringTree1GetText OnGetNodeDataSize = VirtualStringTree1GetNodeDataSize OnInitNode = VirtualStringTree1InitNode diff --git a/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.pas b/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.pas index dac3dd138..103512c52 100644 --- a/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.pas +++ b/components/virtualtreeview-new/branches/4.8/demos/dragdrop/fmain.pas @@ -26,6 +26,8 @@ type procedure VirtualStringTree1DragOver(Sender: TBaseVirtualTree; Source: TObject; Shift: TShiftState; State: TDragState; const Pt: TPoint; Mode: TDropMode; var Effect: Integer; var Accept: Boolean); + procedure VirtualStringTree1FreeNode(Sender: TBaseVirtualTree; + Node: PVirtualNode); procedure VirtualStringTree1GetNodeDataSize(Sender: TBaseVirtualTree; var NodeDataSize: Integer); procedure VirtualStringTree1GetText(Sender: TBaseVirtualTree; @@ -136,6 +138,12 @@ begin Accept := (Sender = VirtualStringTree1) or (Source = ListBox1); end; +procedure TMainForm.VirtualStringTree1FreeNode(Sender: TBaseVirtualTree; + Node: PVirtualNode); +begin + PNodeData(Sender.GetNodeData(Node))^.Title := ''; +end; + procedure TMainForm.VirtualStringTree1GetNodeDataSize(Sender: TBaseVirtualTree; var NodeDataSize: Integer); begin