mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-15 18:08:19 +02:00
virtualtreeview: partially revert 402cffbdfd
, issue #41210
This commit is contained in:
parent
3325629775
commit
a775e7be7c
@ -267,7 +267,7 @@ const
|
|||||||
DEFAULT_MARGIN = 4;
|
DEFAULT_MARGIN = 4;
|
||||||
DEFAULT_NODE_HEIGHT = 18;
|
DEFAULT_NODE_HEIGHT = 18;
|
||||||
DEFAULT_SPACING = 3;
|
DEFAULT_SPACING = 3;
|
||||||
DEFAULT_MINHEIGHT = 10;
|
DEFAULT_MIN_HEIGHT = 10;
|
||||||
|
|
||||||
LIS_NORMAL = 1;
|
LIS_NORMAL = 1;
|
||||||
{$EXTERNALSYM LIS_NORMAL}
|
{$EXTERNALSYM LIS_NORMAL}
|
||||||
@ -6930,8 +6930,13 @@ begin
|
|||||||
|
|
||||||
inherited Create(Collection);
|
inherited Create(Collection);
|
||||||
|
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
FMargin := Owner.Header.TreeView.Scale96ToFont(DEFAULT_MARGIN);
|
||||||
|
FSpacing := Owner.Header.TreeView.Scale96ToFont(DEFAULT_SPACING);
|
||||||
|
{$ELSE}
|
||||||
FMargin := DEFAULT_MARGIN;
|
FMargin := DEFAULT_MARGIN;
|
||||||
FSpacing := DEFAULT_SPACING;
|
FSpacing := DEFAULT_SPACING;
|
||||||
|
{$IFEND}
|
||||||
|
|
||||||
FWidth := Owner.FDefaultWidth;
|
FWidth := Owner.FDefaultWidth;
|
||||||
FLastWidth := Owner.FDefaultWidth;
|
FLastWidth := Owner.FDefaultWidth;
|
||||||
@ -7051,14 +7056,22 @@ end;
|
|||||||
|
|
||||||
function TVirtualTreeColumn.IsMarginStored: Boolean;
|
function TVirtualTreeColumn.IsMarginStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FMargin <> Owner.Header.TreeView.Scale96ToFont(DEFAULT_MARGIN);
|
||||||
|
{$ELSE}
|
||||||
Result := FMargin <> DEFAULT_MARGIN;
|
Result := FMargin <> DEFAULT_MARGIN;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
function TVirtualTreeColumn.IsSpacingStored: Boolean;
|
function TVirtualTreeColumn.IsSpacingStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FSpacing <> Owner.Header.TreeView.Scale96ToFont(DEFAULT_SPACING);
|
||||||
|
{$ELSE}
|
||||||
Result := FSpacing <> DEFAULT_SPACING;
|
Result := FSpacing <> DEFAULT_SPACING;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
@ -8095,7 +8108,11 @@ begin
|
|||||||
FClickIndex := NoColumn;
|
FClickIndex := NoColumn;
|
||||||
FDropTarget := NoColumn;
|
FDropTarget := NoColumn;
|
||||||
FTrackIndex := NoColumn;
|
FTrackIndex := NoColumn;
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
FDefaultWidth := Header.TreeView.Scale96ToFont(DEFAULT_COLUMN_WIDTH);
|
||||||
|
{$ELSE}
|
||||||
FDefaultWidth := DEFAULT_COLUMN_WIDTH;
|
FDefaultWidth := DEFAULT_COLUMN_WIDTH;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
@ -8142,7 +8159,11 @@ end;
|
|||||||
|
|
||||||
function TVirtualTreeColumns.IsDefaultWidthStored: Boolean;
|
function TVirtualTreeColumns.IsDefaultWidthStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FDefaultWidth <> Header.TreeView.Scale96ToFont(DEFAULT_COLUMN_WIDTH);
|
||||||
|
{$ELSE}
|
||||||
Result := FDefaultWidth <> DEFAULT_COLUMN_WIDTH;
|
Result := FDefaultWidth <> DEFAULT_COLUMN_WIDTH;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
@ -9854,9 +9875,15 @@ begin
|
|||||||
inherited Create;
|
inherited Create;
|
||||||
FOwner := AOwner;
|
FOwner := AOwner;
|
||||||
FColumns := GetColumnsClass.Create(Self);
|
FColumns := GetColumnsClass.Create(Self);
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
FHeight := FOwner.Scale96ToFont(DEFAULT_HEADER_HEIGHT);
|
||||||
|
FDefaultHeight := FOwner.Scale96ToFont(DEFAULT_HEADER_HEIGHT);
|
||||||
|
FMinHeight := FOwner.Scale96ToFont(DEFAULT_MIN_HEIGHT);
|
||||||
|
{$ELSE}
|
||||||
FHeight := DEFAULT_HEADER_HEIGHT;
|
FHeight := DEFAULT_HEADER_HEIGHT;
|
||||||
FDefaultHeight := DEFAULT_HEADER_HEIGHT;
|
FDefaultHeight := DEFAULT_HEADER_HEIGHT;
|
||||||
FMinHeight := DEFAULT_MINHEIGHT;
|
FMinHeight := 10;
|
||||||
|
{$IFEND}
|
||||||
FMaxHeight := 10000;
|
FMaxHeight := 10000;
|
||||||
FFont := TFont.Create;
|
FFont := TFont.Create;
|
||||||
FFont.OnChange := FontChanged;
|
FFont.OnChange := FontChanged;
|
||||||
@ -9950,7 +9977,11 @@ end;
|
|||||||
|
|
||||||
function TVTHeader.IsDefaultHeightStored: Boolean;
|
function TVTHeader.IsDefaultHeightStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FDefaultHeight <> FOwner.Scale96ToFont(DEFAULT_HEADER_HEIGHT);
|
||||||
|
{$ELSE}
|
||||||
Result := FDefaultHeight <> DEFAULT_HEADER_HEIGHT;
|
Result := FDefaultHeight <> DEFAULT_HEADER_HEIGHT;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
@ -9965,16 +9996,26 @@ end;
|
|||||||
|
|
||||||
function TVTHeader.IsHeightStored: Boolean;
|
function TVTHeader.IsHeightStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FHeight <> FOwner.Scale96ToFont(DEFAULT_HEADER_HEIGHT);
|
||||||
|
{$ELSE}
|
||||||
Result := FHeight <> DEFAULT_HEADER_HEIGHT;
|
Result := FHeight <> DEFAULT_HEADER_HEIGHT;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
function TVTHeader.IsMinHeightStored: Boolean;
|
function TVTHeader.IsMinHeightStored: Boolean;
|
||||||
begin
|
begin
|
||||||
Result := FMinHeight <> DEFAULT_MINHEIGHT;
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FMinHeight <> FOwner.Scale96ToFont(DEFAULT_Min_HEIGHT);
|
||||||
|
{$ELSE}
|
||||||
|
Result := FMinHeight <> DEFAULT_MIN_HEIGHT;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
procedure TVTHeader.SetAutoSizeIndex(Value: TColumnIndex);
|
procedure TVTHeader.SetAutoSizeIndex(Value: TColumnIndex);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
@ -11479,17 +11520,18 @@ var
|
|||||||
i: Integer;
|
i: Integer;
|
||||||
col: TVirtualTreeColumn;
|
col: TVirtualTreeColumn;
|
||||||
begin
|
begin
|
||||||
// if not (toAutoChangeScale in Treeview.TreeOptions.AutoOptions) then
|
|
||||||
// begin
|
|
||||||
{
|
|
||||||
if IsDefaultHeightStored then
|
if IsDefaultHeightStored then
|
||||||
FDefaultHeight := Round(FDefaultHeight * AYProportion);
|
FDefaultHeight := Round(FDefaultHeight * AYProportion);
|
||||||
}
|
|
||||||
|
if IsHeightStored then
|
||||||
|
FHeight := Round(FHeight * AYProportion);
|
||||||
|
|
||||||
|
if IsMinHeightStored then
|
||||||
FMinHeight := Round(FMinHeight * AYProportion);
|
FMinHeight := Round(FMinHeight * AYProportion);
|
||||||
{
|
|
||||||
if Columns.IsDefaultWidthStored then
|
if Columns.IsDefaultWidthStored then
|
||||||
Columns.DefaultWidth := Round(Columns.DefaultWidth * AXProportion);
|
Columns.DefaultWidth := Round(Columns.DefaultWidth * AXProportion);
|
||||||
}
|
|
||||||
for i := 0 to Columns.Count-1 do begin
|
for i := 0 to Columns.Count-1 do begin
|
||||||
col := Columns[i];
|
col := Columns[i];
|
||||||
if col.IsWidthStored then
|
if col.IsWidthStored then
|
||||||
@ -11499,10 +11541,6 @@ begin
|
|||||||
if col.IsMarginStored then
|
if col.IsMarginStored then
|
||||||
col.Margin := Round(col.Margin * AXProportion);
|
col.Margin := Round(col.Margin * AXProportion);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// FontChanged(nil);
|
|
||||||
if IsHeightStored then
|
|
||||||
FHeight := Round(FHeight * AYProportion);
|
|
||||||
end;
|
end;
|
||||||
{$IFEND}
|
{$IFEND}
|
||||||
|
|
||||||
@ -12357,12 +12395,22 @@ begin
|
|||||||
FLastSelectionLevel := -1;
|
FLastSelectionLevel := -1;
|
||||||
FSelectionBlendFactor := 128;
|
FSelectionBlendFactor := 128;
|
||||||
|
|
||||||
|
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
FDefaultNodeHeight := Scale96ToFont(DEFAULT_NODE_HEIGHT);
|
||||||
|
FIndent := Scale96ToFont(DEFAULT_INDENT);
|
||||||
|
FMargin := Scale96ToFont(DEFAULT_MARGIN);
|
||||||
|
FTextMargin := Scale96ToFont(DEFAULT_MARGIN);
|
||||||
|
FDragHeight := Scale96ToFont(DEFAULT_DRAG_HEIGHT);
|
||||||
|
FDragWidth := Scale96ToFont(DEFAULT_DRAG_WIDTH);
|
||||||
|
{$ELSE}
|
||||||
FDefaultNodeHeight := DEFAULT_NODE_HEIGHT;
|
FDefaultNodeHeight := DEFAULT_NODE_HEIGHT;
|
||||||
FIndent := DEFAULT_INDENT;
|
FIndent := DEFAULT_INDENT;
|
||||||
FMargin := DEFAULT_MARGIN;
|
FMargin := DEFAULT_MARGIN;
|
||||||
FTextMargin := DEFAULT_MARGIN;
|
FTextMargin := DEFAULT_MARGIN;
|
||||||
FDragHeight := DEFAULT_DRAG_HEIGHT;
|
FDragHeight := DEFAULT_DRAG_HEIGHT;
|
||||||
FDragWidth := DEFAULT_DRAG_WIDTH;
|
FDragWidth := DEFAULT_DRAG_WIDTH;
|
||||||
|
{$IFEND}
|
||||||
|
|
||||||
FPlusBM := TBitmap.Create;
|
FPlusBM := TBitmap.Create;
|
||||||
FHotPlusBM := TBitmap.Create;
|
FHotPlusBM := TBitmap.Create;
|
||||||
@ -14041,7 +14089,11 @@ end;
|
|||||||
|
|
||||||
function TBaseVirtualTree.IsDefaultNodeHeightStored: Boolean;
|
function TBaseVirtualTree.IsDefaultNodeHeightStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FDefaultNodeHeight <> Scale96ToFont(DEFAULT_NODE_HEIGHT);
|
||||||
|
{$ELSE}
|
||||||
Result := FDefaultNodeHeight <> DEFAULT_NODE_HEIGHT;
|
Result := FDefaultNodeHeight <> DEFAULT_NODE_HEIGHT;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
@ -14084,28 +14136,44 @@ end;
|
|||||||
|
|
||||||
function TBaseVirtualTree.IsDragHeightStored: Boolean;
|
function TBaseVirtualTree.IsDragHeightStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FDragHeight <> Scale96ToFont(DEFAULT_DRAG_HEIGHT);
|
||||||
|
{$ELSE}
|
||||||
Result := FDragHeight <> DEFAULT_DRAG_HEIGHT;
|
Result := FDragHeight <> DEFAULT_DRAG_HEIGHT;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
function TBaseVirtualTree.IsDragWidthStored: Boolean;
|
function TBaseVirtualTree.IsDragWidthStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FDragWidth <> Scale96ToFont(DEFAULT_DRAG_WIDTH);
|
||||||
|
{$ELSE}
|
||||||
Result := FDragWidth <> DEFAULT_DRAG_WIDTH;
|
Result := FDragWidth <> DEFAULT_DRAG_WIDTH;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
function TBaseVirtualTree.IsIndentStored: Boolean;
|
function TBaseVirtualTree.IsIndentStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FIndent <> Scale96ToFont(DEFAULT_INDENT);
|
||||||
|
{$ELSE}
|
||||||
Result := FIndent <> DEFAULT_INDENT;
|
Result := FIndent <> DEFAULT_INDENT;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
function TBaseVirtualTree.IsMarginStored: Boolean;
|
function TBaseVirtualTree.IsMarginStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FMargin <> Scale96ToFont(DEFAULT_MARGIN);
|
||||||
|
{$ELSE}
|
||||||
Result := FMargin <> DEFAULT_MARGIN;
|
Result := FMargin <> DEFAULT_MARGIN;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
@ -14119,7 +14187,11 @@ end;
|
|||||||
|
|
||||||
function TBaseVirtualTree.IsTextMarginStored: Boolean;
|
function TBaseVirtualTree.IsTextMarginStored: Boolean;
|
||||||
begin
|
begin
|
||||||
|
{$IF LCL_FullVersion >= 1080000}
|
||||||
|
Result := FTextMargin <> Scale96ToFont(DEFAULT_MARGIN);
|
||||||
|
{$ELSE}
|
||||||
Result := FTextMargin <> DEFAULT_MARGIN;
|
Result := FTextMargin <> DEFAULT_MARGIN;
|
||||||
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------------------------
|
||||||
@ -14855,7 +14927,11 @@ procedure TBaseVirtualTree.SetDefaultNodeHeight(Value: Cardinal);
|
|||||||
|
|
||||||
begin
|
begin
|
||||||
if Value = 0 then
|
if Value = 0 then
|
||||||
|
{$IF LCL_FullVersion >= 2000000}
|
||||||
|
Value := Scale96ToFont(DEFAULT_NODE_HEIGHT);
|
||||||
|
{$ELSE}
|
||||||
Value := DEFAULT_NODE_HEIGHT;
|
Value := DEFAULT_NODE_HEIGHT;
|
||||||
|
{$IFEND}
|
||||||
if FDefaultNodeHeight <> Value then
|
if FDefaultNodeHeight <> Value then
|
||||||
begin
|
begin
|
||||||
Inc(Integer(FRoot.TotalHeight), Integer(Value) - Integer(FDefaultNodeHeight));
|
Inc(Integer(FRoot.TotalHeight), Integer(Value) - Integer(FDefaultNodeHeight));
|
||||||
@ -24303,7 +24379,11 @@ var
|
|||||||
begin
|
begin
|
||||||
{$ifdef DEBUG_VTV}Logger.EnterMethod([lcCheck],'PaintCheckImage');{$endif}
|
{$ifdef DEBUG_VTV}Logger.EnterMethod([lcCheck],'PaintCheckImage');{$endif}
|
||||||
|
|
||||||
|
{$if LCL_FullVersion >= 1080000}
|
||||||
|
checkSize := Scale96ToFont(DEFAULT_CHECK_WIDTH);
|
||||||
|
{$else}
|
||||||
checkSize := DEFAULT_CHECK_WIDTH;
|
checkSize := DEFAULT_CHECK_WIDTH;
|
||||||
|
{$ifend}
|
||||||
|
|
||||||
with ImageInfo do
|
with ImageInfo do
|
||||||
begin
|
begin
|
||||||
|
Loading…
Reference in New Issue
Block a user