From 5e151d64a7febb1d14dd672a76375095df9a5d6c Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Wed, 6 Aug 2014 13:45:26 +0000 Subject: [PATCH] fpspreadsheet: Fix missing of some cell border lines in TsWorksheetGrid git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3439 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/fpspreadsheet/fpspreadsheetgrid.pas | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/components/fpspreadsheet/fpspreadsheetgrid.pas b/components/fpspreadsheet/fpspreadsheetgrid.pas index 210a46380..890a8510f 100644 --- a/components/fpspreadsheet/fpspreadsheetgrid.pas +++ b/components/fpspreadsheet/fpspreadsheetgrid.pas @@ -2047,21 +2047,28 @@ begin else neighborcell := FWorksheet.FindCell(r+ADeltaRow, c+ADeltaCol); // Only cell has border, but neighbor has not - if ((cell <> nil) and (border in cell^.Border)) and + if HasBorder(cell, border) and not HasBorder(neighborCell, neighborBorder) then +{ if ((cell <> nil) and (border in cell^.Border)) and ((neighborcell = nil) or (neighborborder in neighborcell^.Border)) - then + then } ABorderStyle := cell^.BorderStyles[border] else // Only neighbor has border, cell has not - if ((cell = nil) or not (border in cell^.Border)) and + if not HasBorder(cell, border) and HasBorder(neighborCell, neighborBorder) then +{ +if ((cell = nil) or not (border in cell^.Border)) and (neighborcell <> nil) and (neighborborder in neighborcell^.Border) then +} ABorderStyle := neighborcell^.BorderStyles[neighborborder] else // Both cells have shared border -> use top or left border + if HasBorder(cell, border) and HasBorder(neighborCell, neighborBorder) then begin + { if (cell <> nil) and (border in cell^.Border) and (neighborcell <> nil) and (neighborborder in neighborcell^.Border) then begin + } if (border in [cbNorth, cbWest]) then ABorderStyle := neighborcell^.BorderStyles[neighborborder] else