From 16e6614574d0d1357bb3729fce36ffc4f970cb12 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Mon, 25 Jan 2016 22:39:37 +0000 Subject: [PATCH] fpspreadsheet: Fix diagonal border lines in merged cells. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4471 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/fpspreadsheet/fpspreadsheetgrid.pas | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/components/fpspreadsheet/fpspreadsheetgrid.pas b/components/fpspreadsheet/fpspreadsheetgrid.pas index 143556987..f402cc5f9 100644 --- a/components/fpspreadsheet/fpspreadsheetgrid.pas +++ b/components/fpspreadsheet/fpspreadsheetgrid.pas @@ -1896,6 +1896,7 @@ const var bs: TsCellBorderStyle; fmt: PsCellFormat; + r1, c1, r2, c2: Cardinal; begin if Assigned(Worksheet) then begin // Left border @@ -1913,6 +1914,11 @@ begin if ACell <> nil then begin fmt := Workbook.GetPointerToCellFormat(ACell^.FormatIndex); + if Worksheet.IsMergeBase(ACell) then + begin + Worksheet.FindMergedRange(ACell, r1, c1, r2, c2); + ARect := CellRect(GetGridCol(c1), GetGridRow(r1), GetGridCol(c2), GetGridRow(r2)); + end; // Diagonal up if cbDiagUp in fmt^.Border then begin bs := fmt^.Borderstyles[cbDiagUp];