mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-16 20:49:30 +02:00
IDE: Simplify type definitions in EditorOptions. Also satisfies -Sy checks.
This commit is contained in:
parent
fa66089578
commit
7cb4c0928a
@ -407,8 +407,7 @@ type
|
||||
BoolOpt: Boolean; // Checkbox only
|
||||
MaxLevel: Integer;
|
||||
end;
|
||||
TEditorOptionsDividerInfoList = Array [0..999] of TEditorOptionsDividerInfo;
|
||||
PEditorOptionsDividerInfoList = ^TEditorOptionsDividerInfoList;
|
||||
PEditorOptionsDividerInfoList = ^TEditorOptionsDividerInfo;
|
||||
|
||||
TEditorOptionsDividerRecord = record
|
||||
Count: Integer;
|
||||
@ -437,10 +436,8 @@ const
|
||||
EditorOptionsDividerDefaults: array[TLazSyntaxHighlighter] of TEditorOptionsDividerRecord =
|
||||
( (Count: 0; Info: nil), // none
|
||||
(Count: 0; Info: nil), // text
|
||||
{$T-} // Fix compilation with -Sy. Type mismatch here. PEditorOptionsDividerInfoList <> TEditorOptionsDividerInfo
|
||||
(Count: 9; Info: @EditorOptionsDividerInfoPas[0]), // Freepas
|
||||
(Count: 9; Info: @EditorOptionsDividerInfoPas[0]), // pas
|
||||
{$T+}
|
||||
(Count: 0; Info: nil), // lfm
|
||||
(Count: 0; Info: nil), // xml
|
||||
(Count: 0; Info: nil), // html
|
||||
@ -468,8 +465,7 @@ type
|
||||
Index: Integer; // FHighlighter.FoldConf[index]
|
||||
Enabled: Boolean;
|
||||
end;
|
||||
TEditorOptionsFoldInfoList = Array [0..999] of TEditorOptionsFoldInfo;
|
||||
PEditorOptionsFoldInfoList = ^TEditorOptionsFoldInfoList;
|
||||
PEditorOptionsFoldInfoList = ^TEditorOptionsFoldInfo;
|
||||
|
||||
TEditorOptionsFoldRecord = record
|
||||
Count: Integer;
|
||||
@ -643,7 +639,6 @@ const
|
||||
)
|
||||
);
|
||||
|
||||
{$T-} // Fix compilation with -Sy. Type mismatch here.
|
||||
(* When adding new entries, ensure that resourcestrings are re-assigned in InitLocale *)
|
||||
EditorOptionsFoldDefaults: array[TLazSyntaxHighlighter] of TEditorOptionsFoldRecord =
|
||||
( (Count: 0; HasMarkup: False; Info: nil), // none
|
||||
@ -668,7 +663,6 @@ const
|
||||
(Count: 0; HasMarkup: False; Info: nil), // PO
|
||||
(Count: 0; HasMarkup: False; Info: nil) // Pike
|
||||
);
|
||||
{$T+}
|
||||
|
||||
const
|
||||
EditorOptsFormatVersion = 13;
|
||||
@ -5580,7 +5574,7 @@ begin
|
||||
ValidLang := StrToValidXMLName(Syn.LanguageName);
|
||||
FoldRec := EditorOptionsFoldDefaults[HighlighterList[h].TheType];
|
||||
for i := 0 to FoldRec.Count - 1 do begin
|
||||
FoldInf := FoldRec.Info^[i];
|
||||
FoldInf := FoldRec.Info[i];
|
||||
idx := FoldInf.Index;
|
||||
Path := 'EditorOptions/FoldConfig/Lang' + ValidLang + '/Type' + FoldInf.Xml + '/' ;
|
||||
// try reading the old config first
|
||||
@ -5625,8 +5619,8 @@ begin
|
||||
if (syn is TSynCustomFoldHighlighter) then begin
|
||||
TheFoldInfo := EditorOptionsFoldDefaults[HighlighterList[h].TheType];
|
||||
for i := 0 to TheFoldInfo.Count - 1 do
|
||||
with TSynCustomFoldHighlighter(Syn).FoldConfig[TheFoldInfo.Info^[i].Index] do
|
||||
Enabled := TheFoldInfo.Info^[i].Enabled;
|
||||
with TSynCustomFoldHighlighter(Syn).FoldConfig[TheFoldInfo.Info[i].Index] do
|
||||
Enabled := TheFoldInfo.Info[i].Enabled;
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -5650,13 +5644,13 @@ begin
|
||||
if (syn is TSynCustomFoldHighlighter) then begin
|
||||
TheFoldInfo := EditorOptionsFoldDefaults[HighlighterList[h].TheType];
|
||||
for i := 0 to TheFoldInfo.Count - 1 do begin
|
||||
ConfName := TheFoldInfo.Info^[i].Xml;
|
||||
ConfName := TheFoldInfo.Info[i].Xml;
|
||||
Path := 'EditorOptions/FoldConfig/Lang' +
|
||||
StrToValidXMLName(Syn.LanguageName) + '/Type' + ConfName + '/' ;
|
||||
XMLConfig.DeletePath(Path + 'Enabled/');
|
||||
XMLConfig.WriteObject(Path + 'Settings/',
|
||||
TSynCustomFoldHighlighter(Syn).FoldConfig[TheFoldInfo.Info^[i].Index],
|
||||
TSynCustomFoldHighlighter(DefSyn).FoldConfig[TheFoldInfo.Info^[i].Index]);
|
||||
TSynCustomFoldHighlighter(Syn).FoldConfig[TheFoldInfo.Info[i].Index],
|
||||
TSynCustomFoldHighlighter(DefSyn).FoldConfig[TheFoldInfo.Info[i].Index]);
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -5684,7 +5678,7 @@ begin
|
||||
// read settings, that are different from the defaults
|
||||
for i := 0 to TheInfo.Count - 1 do begin
|
||||
Conf := Syn.DividerDrawConfig[i];
|
||||
ConfName := TheInfo.Info^[i].Xml;
|
||||
ConfName := TheInfo.Info[i].Xml;
|
||||
Path := 'EditorOptions/DividerDraw/Lang' + Syn.LanguageName + '/Type' + ConfName + '/' ;
|
||||
Conf.MaxDrawDepth := XMLConfig.GetValue(Path + 'MaxDepth/Value', Conf.MaxDrawDepth);
|
||||
Conf.TopColor := XMLConfig.GetValue(Path + 'TopColor/Value', Conf.TopColor);
|
||||
@ -5703,7 +5697,7 @@ begin
|
||||
if h < 0 then exit;
|
||||
TheInfo := EditorOptionsDividerDefaults[HighlighterList[h].TheType];
|
||||
for i := 0 to TheInfo.Count - 1 do begin
|
||||
Syn.DividerDrawConfig[i].MaxDrawDepth := TheInfo.Info^[i].MaxLeveL;
|
||||
Syn.DividerDrawConfig[i].MaxDrawDepth := TheInfo.Info[i].MaxLeveL;
|
||||
Syn.DividerDrawConfig[i].TopColor := clDefault;
|
||||
Syn.DividerDrawConfig[i].NestColor := clDefault;
|
||||
end;
|
||||
@ -5730,7 +5724,7 @@ begin
|
||||
for i := 0 to TheInfo.Count - 1 do begin
|
||||
Conf := Syn.DividerDrawConfig[i];
|
||||
DefConf := DefSyn.DividerDrawConfig[i]; // default value
|
||||
ConfName := TheInfo.Info^[i].Xml;
|
||||
ConfName := TheInfo.Info[i].Xml;
|
||||
Path := 'EditorOptions/DividerDraw/Lang' +
|
||||
StrToValidXMLName(Syn.LanguageName) + '/Type' + ConfName + '/' ;
|
||||
XMLConfig.SetDeleteValue(Path + 'MaxDepth/Value', Conf.MaxDrawDepth,
|
||||
|
@ -117,11 +117,11 @@ begin
|
||||
Hl := TSynCustomFoldHighlighter(FCurHighlighter);
|
||||
|
||||
for i := 0 to FCurFoldInfo.Count - 1 do begin
|
||||
if Hl.FoldConfig[FCurFoldInfo.Info^[i].Index].SupportedModes * [fmFold, fmHide] <> [] then begin
|
||||
j := FoldConfigCheckListBox.Items.Add(FCurFoldInfo.Info^[i].Name);
|
||||
if Hl.FoldConfig[FCurFoldInfo.Info[i].Index].SupportedModes * [fmFold, fmHide] <> [] then begin
|
||||
j := FoldConfigCheckListBox.Items.Add(FCurFoldInfo.Info[i].Name);
|
||||
FoldConfigCheckListBox.Checked[j] :=
|
||||
Hl.FoldConfig[FCurFoldInfo.Info^[i].Index].Enabled and
|
||||
(Hl.FoldConfig[FCurFoldInfo.Info^[i].Index].Modes * [fmFold, fmHide] <> []);
|
||||
Hl.FoldConfig[FCurFoldInfo.Info[i].Index].Enabled and
|
||||
(Hl.FoldConfig[FCurFoldInfo.Info[i].Index].Modes * [fmFold, fmHide] <> []);
|
||||
FoldConfigCheckListBox.Items.Objects[j] := TObject({%H-}Pointer(PtrUInt(i)));
|
||||
end;
|
||||
end;
|
||||
@ -137,8 +137,8 @@ begin
|
||||
Hl := TSynCustomFoldHighlighter(FCurHighlighter);
|
||||
j := 0;
|
||||
for i := 0 to FCurFoldInfo.Count - 1 do begin
|
||||
if Hl.FoldConfig[FCurFoldInfo.Info^[i].Index].SupportedModes * [fmFold, fmHide] <> [] then begin
|
||||
Hl.FoldConfig[FCurFoldInfo.Info^[i].Index].Enabled
|
||||
if Hl.FoldConfig[FCurFoldInfo.Info[i].Index].SupportedModes * [fmFold, fmHide] <> [] then begin
|
||||
Hl.FoldConfig[FCurFoldInfo.Info[i].Index].Enabled
|
||||
:= FoldConfigCheckListBox.Checked[j];
|
||||
inc(j);
|
||||
end;
|
||||
@ -163,7 +163,7 @@ begin
|
||||
AvailModes := [];
|
||||
Modes := [fmFold];
|
||||
if i >= 0 then begin
|
||||
i := FCurFoldInfo.Info^[i].Index;
|
||||
i := FCurFoldInfo.Info[i].Index;
|
||||
AvailModes := Hl.FoldConfig[i].SupportedModes * [fmFold, fmHide];
|
||||
Modes := Hl.FoldConfig[i].Modes * [fmFold, fmHide];
|
||||
end;
|
||||
@ -191,7 +191,7 @@ begin
|
||||
i := FoldConfigCheckListBox.ItemIndex;
|
||||
if i < 0 then exit;
|
||||
i := PtrUInt(FoldConfigCheckListBox.Items.Objects[i]);
|
||||
i := FCurFoldInfo.Info^[i].Index;
|
||||
i := FCurFoldInfo.Info[i].Index;
|
||||
Hl := TSynCustomFoldHighlighter(FCurHighlighter);
|
||||
Modes := [fmFold];
|
||||
if chkHide.Checked then Modes := [fmHide];
|
||||
|
@ -116,7 +116,7 @@ begin
|
||||
|
||||
DividerConfigListBox.Clear;
|
||||
for i := 0 to FCurDivInfo.Count - 1 do begin
|
||||
DividerConfigListBox.Items.add(FCurDivInfo.Info^[i].Name);
|
||||
DividerConfigListBox.Items.add(FCurDivInfo.Info[i].Name);
|
||||
DividerConfigListBox.Checked[i] :=
|
||||
FCurHighlighter.DividerDrawConfig[i].MaxDrawDepth > 0;
|
||||
end;
|
||||
@ -140,8 +140,8 @@ begin
|
||||
for i := 0 to FCurDivInfo.Count - 1 do begin
|
||||
if DividerConfigListBox.Checked[i] then begin
|
||||
if FCurHighlighter.DividerDrawConfig[i].MaxDrawDepth = 0 then begin
|
||||
if FCurDivInfo.Info^[i].MaxLevel > 0 then
|
||||
FCurHighlighter.DividerDrawConfig[i].MaxDrawDepth := FCurDivInfo.Info^[i].MaxLevel
|
||||
if FCurDivInfo.Info[i].MaxLevel > 0 then
|
||||
FCurHighlighter.DividerDrawConfig[i].MaxDrawDepth := FCurDivInfo.Info[i].MaxLevel
|
||||
else
|
||||
FCurHighlighter.DividerDrawConfig[i].MaxDrawDepth := 1;
|
||||
end;
|
||||
@ -156,7 +156,7 @@ begin
|
||||
NewDiv := FCurHighlighter.DividerDrawConfig[i];
|
||||
FCurDividerConf := nil;
|
||||
|
||||
b := FCurDivInfo.Info^[i].BoolOpt;
|
||||
b := FCurDivInfo.Info[i].BoolOpt;
|
||||
DividerSpinPanel.Visible := not b;
|
||||
NestLvlPanel.Visible := not b;
|
||||
DividerSpinEdit.Value := NewDiv.MaxDrawDepth;
|
||||
|
@ -193,7 +193,7 @@ begin
|
||||
i := chkKWGroups.ItemIndex;
|
||||
if i < 0 then exit;
|
||||
i := PtrUInt(chkKWGroups.Items.Objects[i]);
|
||||
i := FCurFoldInfo.Info^[i].Index;
|
||||
i := FCurFoldInfo.Info[i].Index;
|
||||
Hl := TSynCustomFoldHighlighter(FCurHighlighter);
|
||||
|
||||
Modes := [fmMarkup];
|
||||
@ -247,7 +247,7 @@ begin
|
||||
j := 0;
|
||||
for i1 := 0 to chkKWGroups.Count - 1 do begin
|
||||
i := PtrUInt(chkKWGroups.Items.Objects[i1]);
|
||||
idx := FCurFoldInfo.Info^[i].Index;
|
||||
idx := FCurFoldInfo.Info[i].Index;
|
||||
if Hl.FoldConfig[idx].SupportedModes * [fmMarkup, fmOutline] <> [] then begin
|
||||
if not chkKWGroups.Checked[j] then
|
||||
Hl.FoldConfig[idx].Modes := Hl.FoldConfig[idx].Modes - FMask
|
||||
@ -313,10 +313,10 @@ begin
|
||||
if not FUseMarkupWordBracket then FMask := FMask - [fmMarkup];
|
||||
if not FUseMarkupOutline then FMask := FMask - [fmOutline];
|
||||
for i := 0 to FCurFoldInfo.Count - 1 do begin
|
||||
if Hl.FoldConfig[FCurFoldInfo.Info^[i].Index].SupportedModes * FMask <> [] then begin
|
||||
j := chkKWGroups.Items.Add(FCurFoldInfo.Info^[i].Name);
|
||||
if Hl.FoldConfig[FCurFoldInfo.Info[i].Index].SupportedModes * FMask <> [] then begin
|
||||
j := chkKWGroups.Items.Add(FCurFoldInfo.Info[i].Name);
|
||||
chkKWGroups.Checked[j] :=
|
||||
(Hl.FoldConfig[FCurFoldInfo.Info^[i].Index].Modes * FMask <> []);
|
||||
(Hl.FoldConfig[FCurFoldInfo.Info[i].Index].Modes * FMask <> []);
|
||||
chkKWGroups.Items.Objects[j] := TObject({%H-}Pointer(PtrUInt(i)));
|
||||
end;
|
||||
end;
|
||||
@ -373,7 +373,7 @@ begin
|
||||
i := PtrUInt(chkKWGroups.Items.Objects[i]);
|
||||
|
||||
if i >= 0 then begin
|
||||
i := FCurFoldInfo.Info^[i].Index;
|
||||
i := FCurFoldInfo.Info[i].Index;
|
||||
FMask := [fmMarkup, fmOutline];
|
||||
if not FUseMarkupWordBracket then FMask := FMask - [fmMarkup];
|
||||
if not FUseMarkupOutline then FMask := FMask - [fmOutline];
|
||||
|
Loading…
Reference in New Issue
Block a user