fpspreadsheet: Show details on MERGECELLS records in BIFF Explorer

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3537 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz
2014-09-10 15:26:54 +00:00
parent 762033eb3b
commit b7efe2f644
2 changed files with 38 additions and 1 deletions

View File

@ -70,6 +70,7 @@ type
procedure ShowLabelCell;
procedure ShowLabelSSTCell;
procedure ShowLeftMargin;
procedure ShowMergedCells;
procedure ShowMMS;
procedure ShowMulBlank;
procedure ShowMulRK;
@ -397,6 +398,8 @@ begin
ShowInterfaceHdr;
$00E2:
ShowInterfaceEnd;
$00E5:
ShowMergedCells;
$00FC:
ShowSST;
$00FD:
@ -2846,6 +2849,40 @@ begin
end;
procedure TBIFFGrid.ShowMergedCells;
var
w: Word;
numBytes: Integer;
i, n: Integer;
begin
numBytes := 2;
Move(FBuffer[FBufferIndex], w, numBytes);
n := WordLEToN(w); // count of merged ranges in this record
RowCount := FixedRows + 1 + n*4;
ShowInRow(FCurrRow, FBufferIndex, numbytes, IntToStr(n),
'Count of merged ranges in this record');
for i:=1 to n do begin
Move(FBuffer[FBufferIndex], w, numBytes);
w := WordLEToN(w);
ShowInRow(FCurrRow, FBufferIndex, numbytes, IntToStr(w),
Format('Merged range #%d: First row = %d', [i, w]));
Move(FBuffer[FBufferIndex], w, numBytes);
w := WordLEToN(w);
ShowInRow(FCurrRow, FBufferIndex, numbytes, IntToStr(w),
Format('Merged range #%d: Last row = %d', [i, w]));
Move(FBuffer[FBufferIndex], w, numBytes);
ShowInRow(FCurrRow, FBufferIndex, numbytes, IntToStr(w),
Format('Merged range #%d: First column = %d', [i, w]));
Move(FBuffer[FBufferIndex], w, numBytes);
w := WordLEToN(w);
ShowInRow(FCurrRow, FBufferIndex, numbytes, IntToStr(w),
Format('Merged range #%d: Last column = %d', [i, w]));
end;
end;
procedure TBIFFGrid.ShowMMS;
var
w: Word;

View File

@ -322,7 +322,7 @@ begin
$00E1: Result := 'INTERFACEHDR: Beginning of user interface records';
$00E2: Result := 'INTERFACEEND: End of user interface records';
$00E3: Result := 'SXVS: View source';
$00E5: Result := 'MEGECELLS: Merged cells';
$00E5: Result := 'MERGEDCELLS: List of merged cells';
$00E9: Result := 'Bitmap';
$00EA: Result := 'TABIDCONF: Sheet Tab ID of conflict history';
$00EB: Result := 'MSODRAWINGGROUP: Microsoft Office drawing group';