diff --git a/components/virtualtreeview/laz.virtualtrees.pas b/components/virtualtreeview/laz.virtualtrees.pas index 6d456e4453..d97ec5175b 100644 --- a/components/virtualtreeview/laz.virtualtrees.pas +++ b/components/virtualtreeview/laz.virtualtrees.pas @@ -294,6 +294,12 @@ var // Clipboard format IDs used in OLE drag'n drop and clipboard transfers. UtilityImageSize: Integer = cUtilityImageSize; +{$ifdef gtk} +// Workaround LCL bug 8553 +var + pf32bit: TPixelFormat = pfDevice; +{$endif} + type // The exception used by the trees. EVirtualTreeError = class(Exception); diff --git a/examples/virtualtreeview/vst_advanced/DrawTreeDemo.lfm b/examples/virtualtreeview/vst_advanced/DrawTreeDemo.lfm index 1cf9b3201a..08c5e22b8b 100644 --- a/examples/virtualtreeview/vst_advanced/DrawTreeDemo.lfm +++ b/examples/virtualtreeview/vst_advanced/DrawTreeDemo.lfm @@ -7,8 +7,8 @@ object DrawTreeForm: TDrawTreeForm Caption = 'DrawTreeForm' ClientHeight = 453 ClientWidth = 710 + LCLVersion = '4.99.0.0' OnCreate = FormCreate - LCLVersion = '2.1.0.0' object Label7: TLabel Left = 8 Height = 30 @@ -53,6 +53,7 @@ object DrawTreeForm: TDrawTreeForm AnchorSideBottom.Control = TrackBar1 Left = 8 Height = 361 + Hint = '(dummy)' Top = 46 Width = 694 Anchors = [akTop, akLeft, akRight, akBottom] @@ -111,6 +112,8 @@ object DrawTreeForm: TDrawTreeForm OnDrawHint = VDT1DrawHint OnDrawNode = VDT1DrawNode OnFreeNode = VDT1FreeNode + OnGetHint = VDT1GetHint + OnGetHintKind = VDT1GetHintKind OnGetHintSize = VDT1GetHintSize OnGetImageIndex = VDT1GetImageIndex OnGetNodeWidth = VDT1GetNodeWidth @@ -129,9 +132,9 @@ object DrawTreeForm: TDrawTreeForm Top = 415 Width = 197 Max = 100 - OnChange = TrackBar1Change Position = 50 TickStyle = tsNone + OnChange = TrackBar1Change Anchors = [akLeft, akBottom] BorderSpacing.Left = 7 TabOrder = 1 diff --git a/examples/virtualtreeview/vst_advanced/DrawTreeDemo.pas b/examples/virtualtreeview/vst_advanced/DrawTreeDemo.pas index b4cd849421..64928342e6 100644 --- a/examples/virtualtreeview/vst_advanced/DrawTreeDemo.pas +++ b/examples/virtualtreeview/vst_advanced/DrawTreeDemo.pas @@ -379,8 +379,9 @@ begin Data.Properties := Data.Properties + ', 64K colors'; pf24bit: Data.Properties := Data.Properties + ', 16M colors'; - pf32bit: - Data.Properties := Data.Properties + ', 16M+ colors'; + else + if Picture.Bitmap.PixelFormat = pf32bit then + Data.Properties := Data.Properties + ', 16M+ colors'; end; if Cardinal(Data.Image.Height) + 4 > TLazVirtualDrawTree(Sender).DefaultNodeHeight then Sender.NodeHeight[Node] := Data.Image.Height + 4;