diff --git a/components/virtualtreeview-unstable/VirtualTrees.pas b/components/virtualtreeview-unstable/VirtualTrees.pas
index 6a0b2f686..c04d15600 100644
--- a/components/virtualtreeview-unstable/VirtualTrees.pas
+++ b/components/virtualtreeview-unstable/VirtualTrees.pas
@@ -854,7 +854,6 @@ type
FDrawBuffer,
FTarget: TBitmap;
FTextHeight: Integer;
- FBidiMode: TBidiMode;
function AnimationCallback(Step, StepSize: Integer; Data: Pointer): Boolean;
procedure InternalPaint(Step, StepSize: Integer);
procedure CMTextChanged(var Message: TLMessage); message CM_TEXTCHANGED;
@@ -863,7 +862,6 @@ type
procedure WMShowWindow(var Message: TLMShowWindow); message LM_SHOWWINDOW;
protected
procedure CreateParams(var Params: TCreateParams); override;
-
procedure Paint; override;
public
constructor Create(AOwner: TComponent); override;
@@ -872,7 +870,6 @@ type
procedure ActivateHint(Rect: TRect; const AHint: string); override;
function CalcHintRect(MaxWidth: Integer; const AHint: string; AData: Pointer): TRect; override;
function IsHintMsg(var Msg: TMsg): Boolean; {override;}
- property BidiMode: TBidiMode read FBidiMode write FBidiMode;
end;
// Drag image support for the tree.
@@ -1718,7 +1715,6 @@ type
// ----- TBaseVirtualTree
TBaseVirtualTree = class(TCustomControl)
private
- FBidiMode: TBidiMode;
//FBorderStyle: TBorderStyle;
FHeader: TVTHeader;
FRoot: PVirtualNode;
@@ -2365,7 +2361,6 @@ TBaseVirtualTree = class(TCustomControl)
property Background: TPicture read FBackground write SetBackground;
property BackgroundOffsetX: Integer index 0 read FBackgroundOffsetX write SetBackgroundOffset default 0;
property BackgroundOffsetY: Integer index 1 read FBackgroundOffsetY write SetBackgroundOffset default 0;
- property BidiMode: TBidiMode read FBidiMode write FBidiMode default bdLeftToRight;
//property BorderStyle: TBorderStyle read FBorderStyle write SetBorderStyle default bsSingle;
property BottomSpace: Cardinal read FBottomSpace write SetBottomSpace default 0;
property ButtonFillMode: TVTButtonFillMode read FButtonFillMode write SetButtonFillMode default fmTreeColor;
@@ -2624,8 +2619,8 @@ TBaseVirtualTree = class(TCustomControl)
procedure UpdateHorizontalScrollBar(DoRepaint: Boolean);
procedure UpdateScrollBars(DoRepaint: Boolean); virtual;
procedure UpdateVerticalScrollBar(DoRepaint: Boolean);
- function UseRightToLeftAlignment: Boolean;
- function UseRightToLeftReading: Boolean;
+ //lcl: reenable in case TControl implementation change to match Delphi
+// function UseRightToLeftReading: Boolean;
procedure ValidateChildren(Node: PVirtualNode; Recursive: Boolean);
procedure ValidateNode(Node: PVirtualNode; Recursive: Boolean);
{$ifdef EnableAccessible}
@@ -2957,7 +2952,7 @@ type
property Margin;
property NodeAlignment;
property NodeDataSize;
- //property ParentBiDiMode;
+ property ParentBiDiMode;
property ParentColor default False;
property ParentCtl3D;
property ParentFont;
@@ -3167,7 +3162,7 @@ type
property Margin;
property NodeAlignment;
property NodeDataSize;
- //property ParentBiDiMode;
+ property ParentBiDiMode;
property ParentColor default False;
property ParentCtl3D;
property ParentFont;
@@ -13600,7 +13595,7 @@ begin
begin
// box is always of odd size
//The TCanvas of VCL does not has width and height. It cause a conflict here
- //FMinusBM.Height:= 0;
+
FMinusBM.Width := 9;
FMinusBM.Height := 9;
@@ -13638,7 +13633,6 @@ begin
Logger.SendBitmap([lcPaintBitmap],'FMinusBM',FMinusBM);
with FPlusBM, Canvas do
begin
- //FPlusBM.Width := 0;
FPlusBM.Width := 9;
FPlusBM.Height := 9;
Transparent := True;
@@ -19552,8 +19546,6 @@ begin
begin
FOffsetX := Value.X;
FOffsetY := Value.Y;
- //todo: remove this assignment?
- Result := True;
Application.CancelHint;
if FUpdateCount = 0 then
@@ -27926,11 +27918,10 @@ begin
R := Rect(TargetRect.Left, 0, TargetRect.Left, MaximumBottom - Target.Y);
TargetRect := Rect(0, 0, MaximumRight - Target.X, MaximumBottom - Target.Y);
Logger.Send([lcPaintDetails],'NodeBitmap.Handle',NodeBitmap.Handle);
- // Avoid unnecessary copying of bitmap content. This will destroy the DC handle too.
- NodeBitmap.Height := 0;
+
NodeBitmap.PixelFormat := pf32Bit;
- NodeBitmap.Width := TargetRect.Right - TargetRect.Left + 1;
- NodeBitmap.Height := TargetRect.Bottom - TargetRect.Top + 1;
+ NodeBitmap.Width := TargetRect.Right - TargetRect.Left;
+ NodeBitmap.Height := TargetRect.Bottom - TargetRect.Top;
Logger.Send([lcPaintDetails],'NodeBitmap.Handle',NodeBitmap.Handle);
Logger.Send([lcPaintDetails],'TargetRect',TargetRect);
Logger.Send([lcPaintDetails],'NodeBitmap Width: %d Height: %d',[NodeBitmap.Width,NodeBitmap.Height]);
@@ -29436,14 +29427,11 @@ begin
end;
end;
-function TBaseVirtualTree.UseRightToLeftAlignment: Boolean;
-begin
- //todo_lcl
- Result:=False;
-end;
-
//----------------------------------------------------------------------------------------------------------------------
+//lcl: the current implementation in TControl is exactly equal to this.
+// disable for now and reenable in the case the TControl implementation change
+{
function TBaseVirtualTree.UseRightToLeftReading: Boolean;
// The tree can handle right-to-left reading also on non-middle-east systems, so we cannot use the same function as
@@ -29452,6 +29440,7 @@ function TBaseVirtualTree.UseRightToLeftReading: Boolean;
begin
Result := BiDiMode <> bdLeftToRight;
end;
+}
//----------------------------------------------------------------------------------------------------------------------
diff --git a/components/virtualtreeview-unstable/demos/advanced/Advanced.lpi b/components/virtualtreeview-unstable/demos/advanced/Advanced.lpi
index f996f5e94..0951ee858 100644
--- a/components/virtualtreeview-unstable/demos/advanced/Advanced.lpi
+++ b/components/virtualtreeview-unstable/demos/advanced/Advanced.lpi
@@ -28,16 +28,16 @@
-
+
-
+
-
+
-
+
diff --git a/components/virtualtreeview-unstable/demos/advanced/MultilineDemo.lrs b/components/virtualtreeview-unstable/demos/advanced/MultilineDemo.lrs
index 58e9ef655..022f5e636 100644
--- a/components/virtualtreeview-unstable/demos/advanced/MultilineDemo.lrs
+++ b/components/virtualtreeview-unstable/demos/advanced/MultilineDemo.lrs
@@ -1,3 +1,5 @@
+{ This is an automatically generated lazarus resource file }
+
LazarusResources.Add('TNodeForm','FORMDATA',[
'TPF0'#9'TNodeForm'#8'NodeForm'#4'Left'#3'='#2#6'Height'#3#30#2#3'Top'#3'L'#1
+#5'Width'#3#5#3#18'HorzScrollBar.Page'#3#4#3#18'VertScrollBar.Page'#3#29#2#13