fpspreadsheet: Fix TsWorksheetGrid header ignoring FixedColor setting for non-native TitleStyle.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3127 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
parent
b095079e91
commit
e6ad481905
@ -4,7 +4,7 @@ object Form1: TForm1
|
|||||||
Top = 193
|
Top = 193
|
||||||
Width = 884
|
Width = 884
|
||||||
Caption = 'fpsGrid'
|
Caption = 'fpsGrid'
|
||||||
ClientHeight = 629
|
ClientHeight = 624
|
||||||
ClientWidth = 884
|
ClientWidth = 884
|
||||||
Menu = MainMenu
|
Menu = MainMenu
|
||||||
OnActivate = FormActivate
|
OnActivate = FormActivate
|
||||||
@ -14,7 +14,7 @@ object Form1: TForm1
|
|||||||
object Panel1: TPanel
|
object Panel1: TPanel
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 85
|
Height = 85
|
||||||
Top = 544
|
Top = 539
|
||||||
Width = 884
|
Width = 884
|
||||||
Align = alBottom
|
Align = alBottom
|
||||||
BevelOuter = bvNone
|
BevelOuter = bvNone
|
||||||
@ -23,9 +23,9 @@ object Form1: TForm1
|
|||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object CbShowHeaders: TCheckBox
|
object CbShowHeaders: TCheckBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Height = 19
|
Height = 24
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 93
|
Width = 116
|
||||||
Caption = 'Show headers'
|
Caption = 'Show headers'
|
||||||
Checked = True
|
Checked = True
|
||||||
OnClick = CbShowHeadersClick
|
OnClick = CbShowHeadersClick
|
||||||
@ -34,9 +34,9 @@ object Form1: TForm1
|
|||||||
end
|
end
|
||||||
object CbShowGridLines: TCheckBox
|
object CbShowGridLines: TCheckBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Height = 19
|
Height = 24
|
||||||
Top = 32
|
Top = 32
|
||||||
Width = 100
|
Width = 125
|
||||||
Caption = 'Show grid lines'
|
Caption = 'Show grid lines'
|
||||||
Checked = True
|
Checked = True
|
||||||
OnClick = CbShowGridLinesClick
|
OnClick = CbShowGridLinesClick
|
||||||
@ -44,52 +44,69 @@ object Form1: TForm1
|
|||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
end
|
end
|
||||||
object EdFrozenCols: TSpinEdit
|
object EdFrozenCols: TSpinEdit
|
||||||
Left = 238
|
Left = 550
|
||||||
Height = 23
|
Height = 28
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 52
|
Width = 52
|
||||||
OnChange = EdFrozenColsChange
|
OnChange = EdFrozenColsChange
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
end
|
end
|
||||||
object EdFrozenRows: TSpinEdit
|
object EdFrozenRows: TSpinEdit
|
||||||
Left = 238
|
Left = 550
|
||||||
Height = 23
|
Height = 28
|
||||||
Top = 39
|
Top = 39
|
||||||
Width = 52
|
Width = 52
|
||||||
OnChange = EdFrozenRowsChange
|
OnChange = EdFrozenRowsChange
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
end
|
end
|
||||||
object Label1: TLabel
|
object Label1: TLabel
|
||||||
Left = 152
|
Left = 464
|
||||||
Height = 15
|
Height = 20
|
||||||
Top = 13
|
Top = 13
|
||||||
Width = 62
|
Width = 77
|
||||||
Caption = 'Frozen cols:'
|
Caption = 'Frozen cols:'
|
||||||
FocusControl = EdFrozenCols
|
FocusControl = EdFrozenCols
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object Label2: TLabel
|
object Label2: TLabel
|
||||||
Left = 153
|
Left = 465
|
||||||
Height = 15
|
Height = 20
|
||||||
Top = 40
|
Top = 40
|
||||||
Width = 66
|
Width = 82
|
||||||
Caption = 'Frozen rows:'
|
Caption = 'Frozen rows:'
|
||||||
FocusControl = EdFrozenRows
|
FocusControl = EdFrozenRows
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object CbReadFormulas: TCheckBox
|
object CbReadFormulas: TCheckBox
|
||||||
Left = 8
|
Left = 8
|
||||||
Height = 19
|
Height = 24
|
||||||
Top = 56
|
Top = 56
|
||||||
Width = 96
|
Width = 120
|
||||||
Caption = 'Read formulas'
|
Caption = 'Read formulas'
|
||||||
OnChange = CbReadFormulasChange
|
OnChange = CbReadFormulasChange
|
||||||
TabOrder = 4
|
TabOrder = 4
|
||||||
end
|
end
|
||||||
|
object CbHeaderStyle: TComboBox
|
||||||
|
Left = 152
|
||||||
|
Height = 28
|
||||||
|
Top = 8
|
||||||
|
Width = 116
|
||||||
|
ItemHeight = 20
|
||||||
|
ItemIndex = 2
|
||||||
|
Items.Strings = (
|
||||||
|
'Lazarus'
|
||||||
|
'Standard'
|
||||||
|
'Native'
|
||||||
|
)
|
||||||
|
OnChange = CbHeaderStyleChange
|
||||||
|
Style = csDropDownList
|
||||||
|
TabOrder = 5
|
||||||
|
Text = 'Native'
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object PageControl1: TPageControl
|
object PageControl1: TPageControl
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 465
|
Height = 460
|
||||||
Top = 79
|
Top = 79
|
||||||
Width = 884
|
Width = 884
|
||||||
ActivePage = TabSheet1
|
ActivePage = TabSheet1
|
||||||
@ -99,27 +116,52 @@ object Form1: TForm1
|
|||||||
OnChange = PageControl1Change
|
OnChange = PageControl1Change
|
||||||
object TabSheet1: TTabSheet
|
object TabSheet1: TTabSheet
|
||||||
Caption = 'Sheet1'
|
Caption = 'Sheet1'
|
||||||
ClientHeight = 437
|
ClientHeight = 427
|
||||||
ClientWidth = 876
|
ClientWidth = 876
|
||||||
object WorksheetGrid: TsWorksheetGrid
|
object WorksheetGrid: TsWorksheetGrid
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 437
|
Height = 427
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 876
|
Width = 876
|
||||||
FrozenCols = 0
|
FrozenCols = 0
|
||||||
FrozenRows = 0
|
FrozenRows = 0
|
||||||
ReadFormulas = False
|
ReadFormulas = False
|
||||||
Align = alClient
|
Align = alClient
|
||||||
ColCount = 2
|
ColCount = 27
|
||||||
ExtendedSelect = False
|
ExtendedSelect = False
|
||||||
MouseWheelOption = mwGrid
|
MouseWheelOption = mwGrid
|
||||||
Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goRowSizing, goColSizing, goThumbTracking, goSmoothScroll, goFixedColSizing]
|
Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goRowSizing, goColSizing, goThumbTracking, goSmoothScroll, goFixedColSizing]
|
||||||
RowCount = 2
|
RowCount = 101
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
TitleStyle = tsNative
|
TitleStyle = tsNative
|
||||||
OnSelection = WorksheetGridSelection
|
OnSelection = WorksheetGridSelection
|
||||||
ColWidths = (
|
ColWidths = (
|
||||||
42
|
56
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
|
64
|
||||||
64
|
64
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
@ -202,19 +244,19 @@ object Form1: TForm1
|
|||||||
end
|
end
|
||||||
object FontComboBox: TComboBox
|
object FontComboBox: TComboBox
|
||||||
Left = 52
|
Left = 52
|
||||||
Height = 23
|
Height = 28
|
||||||
Top = 2
|
Top = 2
|
||||||
Width = 127
|
Width = 127
|
||||||
ItemHeight = 15
|
ItemHeight = 20
|
||||||
OnSelect = FontComboBoxSelect
|
OnSelect = FontComboBoxSelect
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
end
|
end
|
||||||
object FontSizeComboBox: TComboBox
|
object FontSizeComboBox: TComboBox
|
||||||
Left = 179
|
Left = 179
|
||||||
Height = 23
|
Height = 28
|
||||||
Top = 2
|
Top = 2
|
||||||
Width = 48
|
Width = 48
|
||||||
ItemHeight = 15
|
ItemHeight = 20
|
||||||
Items.Strings = (
|
Items.Strings = (
|
||||||
'8'
|
'8'
|
||||||
'9'
|
'9'
|
||||||
@ -400,6 +442,42 @@ object Form1: TForm1
|
|||||||
Caption = '&File'
|
Caption = '&File'
|
||||||
object MenuItem46: TMenuItem
|
object MenuItem46: TMenuItem
|
||||||
Action = AcNew
|
Action = AcNew
|
||||||
|
Bitmap.Data = {
|
||||||
|
36040000424D3604000000000000360000002800000010000000100000000100
|
||||||
|
2000000000000004000064000000640000000000000000000000FFFFFF000000
|
||||||
|
001D000000340000003600000036000000360000003600000036000000360000
|
||||||
|
0036000000360000003600000036000000330000001DFFFFFF00FFFFFF000000
|
||||||
|
0034F9F9F9F5FCFCFCFDFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFC
|
||||||
|
FCFFFCFCFCFFFCFCFCFFFCFCFCFDF9F9F9F300000033FFFFFF00000000010000
|
||||||
|
0036FCFCFCFEFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFC
|
||||||
|
FCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFD00000036FFFFFF00000000010000
|
||||||
|
0036FCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFBFBFBFFFBFBFBFFFBFB
|
||||||
|
FBFFFBFBFBFFFBFBFBFFFBFBFBFFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFBFBFBFFFBFBFBFFFAFAFAFFFAFA
|
||||||
|
FAFFFAFAFAFFFAFAFAFFFAFAFAFFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFBFBFBFFFBFBFBFFFBFBFBFFFAFA
|
||||||
|
FAFFFAFAFAFFF8F8F8FFF8F8F8FFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFBFB
|
||||||
|
FBFFF9F9F9FFF9F9F9FFF8F8F8FFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFAFA
|
||||||
|
FAFFF9F9F9FFF6F6F6FFF6F6F6FFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFBFBFBFFF8F8
|
||||||
|
F8FFF6F6F6FFF3F3F3FFF2F2F2FFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFBFBFBFFF8F8F8FFF5F5
|
||||||
|
F5FFF2F2F2FFEFEFEFFFEDEDEDFFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFFBFBFBFFFCFCFCFFFCFCFCFFFBFBFBFFF8F8F8FFF5F5F5FFF1F1
|
||||||
|
F1FFECECECFFEAEAEAFFE6E6E6FFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFF9F9F9FFF9F9F9FFF9F9F9FFF7F7F7FFF6F6F6FFF2F2F2FFEBEB
|
||||||
|
EBFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFF0000003600000001000000010000
|
||||||
|
0036FCFCFCFFF7F7F7FFF9F9F9FFF7F7F7FFF7F7F7FFF3F3F3FFF0F0F0FFEAEA
|
||||||
|
EAFFFCFCFCFFF6F6F6FFF4F4F4FF9999999100000020FFFFFF00FFFFFF000000
|
||||||
|
0036FBFBFBFDF4F4F4FFF5F5F5FFF5F5F5FFF5F5F5FFF1F1F1FFEFEFEFFFE9E9
|
||||||
|
E9FFFCFCFCFFE7E7E7FF959595910000002000000002FFFFFF00FFFFFF000000
|
||||||
|
0033F8F8F8F0FBFBFBFDFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFCFCFFFCFC
|
||||||
|
FCFFF8F8F8FF949494910000002000000002FFFFFF00FFFFFF00FFFFFF000000
|
||||||
|
001C000000330000003600000036000000360000003600000036000000360000
|
||||||
|
0036000000360000002000000002FFFFFF00FFFFFF00FFFFFF00
|
||||||
|
}
|
||||||
end
|
end
|
||||||
object mnuOpen: TMenuItem
|
object mnuOpen: TMenuItem
|
||||||
Action = AcOpen
|
Action = AcOpen
|
||||||
|
@ -82,6 +82,7 @@ type
|
|||||||
CbShowGridLines: TCheckBox;
|
CbShowGridLines: TCheckBox;
|
||||||
CbBackgroundColor: TColorBox;
|
CbBackgroundColor: TColorBox;
|
||||||
CbReadFormulas: TCheckBox;
|
CbReadFormulas: TCheckBox;
|
||||||
|
CbHeaderStyle: TComboBox;
|
||||||
EdFormula: TEdit;
|
EdFormula: TEdit;
|
||||||
EdCellAddress: TEdit;
|
EdCellAddress: TEdit;
|
||||||
FontComboBox: TComboBox;
|
FontComboBox: TComboBox;
|
||||||
@ -232,6 +233,7 @@ type
|
|||||||
procedure AcVertAlignmentExecute(Sender: TObject);
|
procedure AcVertAlignmentExecute(Sender: TObject);
|
||||||
procedure AcWordwrapExecute(Sender: TObject);
|
procedure AcWordwrapExecute(Sender: TObject);
|
||||||
procedure CbBackgroundColorSelect(Sender: TObject);
|
procedure CbBackgroundColorSelect(Sender: TObject);
|
||||||
|
procedure CbHeaderStyleChange(Sender: TObject);
|
||||||
procedure CbReadFormulasChange(Sender: TObject);
|
procedure CbReadFormulasChange(Sender: TObject);
|
||||||
procedure CbShowHeadersClick(Sender: TObject);
|
procedure CbShowHeadersClick(Sender: TObject);
|
||||||
procedure CbShowGridLinesClick(Sender: TObject);
|
procedure CbShowGridLinesClick(Sender: TObject);
|
||||||
@ -548,6 +550,11 @@ begin
|
|||||||
with WorksheetGrid do BackgroundColors[Selection] := CbBackgroundColor.ItemIndex;
|
with WorksheetGrid do BackgroundColors[Selection] := CbBackgroundColor.ItemIndex;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TForm1.CbHeaderStyleChange(Sender: TObject);
|
||||||
|
begin
|
||||||
|
WorksheetGrid.TitleStyle := TTitleStyle(CbHeaderStyle.ItemIndex);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TForm1.CbReadFormulasChange(Sender: TObject);
|
procedure TForm1.CbReadFormulasChange(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
WorksheetGrid.ReadFormulas := CbReadFormulas.Checked;
|
WorksheetGrid.ReadFormulas := CbReadFormulas.Checked;
|
||||||
|
@ -609,7 +609,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
if wasFixed then begin
|
if wasFixed then begin
|
||||||
wasFixed := true;
|
wasFixed := true; // ?????
|
||||||
AState := AState - [gdFixed];
|
AState := AState - [gdFixed];
|
||||||
Canvas.Brush.Color := clWindow;
|
Canvas.Brush.Color := clWindow;
|
||||||
end;
|
end;
|
||||||
@ -649,6 +649,8 @@ begin
|
|||||||
ts.Alignment := taRightJustify;
|
ts.Alignment := taRightJustify;
|
||||||
ts.Layout := tlCenter;
|
ts.Layout := tlCenter;
|
||||||
end;
|
end;
|
||||||
|
if ShowHeaders and ((ACol = 0) or (ARow = 0)) then
|
||||||
|
Canvas.Brush.Color := FixedColor
|
||||||
end;
|
end;
|
||||||
if FWorksheet <> nil then begin
|
if FWorksheet <> nil then begin
|
||||||
r := ARow - FHeaderCount;
|
r := ARow - FHeaderCount;
|
||||||
@ -718,7 +720,7 @@ begin
|
|||||||
|
|
||||||
Canvas.SaveHandleState;
|
Canvas.SaveHandleState;
|
||||||
try
|
try
|
||||||
// Avoid painting into the fixed cells
|
// Avoid painting into the header cells
|
||||||
cliprect := ClientRect;
|
cliprect := ClientRect;
|
||||||
if FixedCols > 0 then
|
if FixedCols > 0 then
|
||||||
ColRowToOffset(True, True, FixedCols-1, tmp, cliprect.Left);
|
ColRowToOffset(True, True, FixedCols-1, tmp, cliprect.Left);
|
||||||
|
Loading…
Reference in New Issue
Block a user