mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-07 16:38:17 +02:00
EditorOpts: refactor
git-svn-id: trunk@59387 -
This commit is contained in:
parent
d606082834
commit
995e509d32
@ -1528,7 +1528,8 @@ type
|
|||||||
|
|
||||||
function ExtensionToLazSyntaxHighlighter(Ext: String): TLazSyntaxHighlighter; override;
|
function ExtensionToLazSyntaxHighlighter(Ext: String): TLazSyntaxHighlighter; override;
|
||||||
function CreateSyn(LazSynHilighter: TLazSyntaxHighlighter): TSrcIDEHighlighter;
|
function CreateSyn(LazSynHilighter: TLazSyntaxHighlighter): TSrcIDEHighlighter;
|
||||||
function ReadColorScheme(const LanguageName: String): String;
|
function ReadColorScheme(const LanguageName: String): String; // TODO: rename ReadColorSchemeName
|
||||||
|
function GetColorSchemeLanguage(aHighLighter: TSynCustomHighlighter; SynColorSchemeName: String = ''): TColorSchemeLanguage;
|
||||||
function ReadPascalColorScheme: String;
|
function ReadPascalColorScheme: String;
|
||||||
procedure WriteColorScheme(const LanguageName, SynColorScheme: String);
|
procedure WriteColorScheme(const LanguageName, SynColorScheme: String);
|
||||||
procedure ReadHighlighterSettings(Syn: TSrcIDEHighlighter;
|
procedure ReadHighlighterSettings(Syn: TSrcIDEHighlighter;
|
||||||
@ -5385,6 +5386,25 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TEditorOptions.GetColorSchemeLanguage(aHighLighter: TSynCustomHighlighter;
|
||||||
|
SynColorSchemeName: String): TColorSchemeLanguage;
|
||||||
|
var
|
||||||
|
Scheme: TColorScheme;
|
||||||
|
LangScheme: TColorSchemeLanguage;
|
||||||
|
begin
|
||||||
|
Result := nil;
|
||||||
|
// initialize with defaults
|
||||||
|
if SynColorSchemeName = '' then
|
||||||
|
SynColorSchemeName := ReadColorScheme(aHighLighter.LanguageName);
|
||||||
|
if (SynColorSchemeName = '') then
|
||||||
|
exit;
|
||||||
|
|
||||||
|
Scheme := UserColorSchemeGroup.ColorSchemeGroup[SynColorSchemeName];
|
||||||
|
if Scheme = nil then
|
||||||
|
exit;
|
||||||
|
Result := Scheme.ColorSchemeBySynClass[aHighLighter.ClassType];
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TEditorOptions.WriteColorScheme(const LanguageName, SynColorScheme: String);
|
procedure TEditorOptions.WriteColorScheme(const LanguageName, SynColorScheme: String);
|
||||||
begin
|
begin
|
||||||
if (LanguageName = '') or (SynColorScheme = '') then
|
if (LanguageName = '') or (SynColorScheme = '') then
|
||||||
@ -5399,20 +5419,9 @@ procedure TEditorOptions.ReadHighlighterSettings(Syn: TSrcIDEHighlighter;
|
|||||||
SynColorScheme: String);
|
SynColorScheme: String);
|
||||||
// if SynColorScheme='' then default ColorScheme will be used
|
// if SynColorScheme='' then default ColorScheme will be used
|
||||||
var
|
var
|
||||||
Scheme: TColorScheme;
|
|
||||||
LangScheme: TColorSchemeLanguage;
|
LangScheme: TColorSchemeLanguage;
|
||||||
begin
|
begin
|
||||||
// initialize with defaults
|
LangScheme := GetColorSchemeLanguage(Syn, SynColorScheme);
|
||||||
if SynColorScheme = '' then
|
|
||||||
SynColorScheme := ReadColorScheme(Syn.LanguageName);
|
|
||||||
//DebugLn(['TEditorOptions.ReadHighlighterSettings ',SynColorScheme,' Syn.ClassName=',Syn.ClassName]);
|
|
||||||
if (SynColorScheme = '') or (Syn.LanguageName = '') then
|
|
||||||
exit;
|
|
||||||
|
|
||||||
Scheme := UserColorSchemeGroup.ColorSchemeGroup[SynColorScheme];
|
|
||||||
if Scheme = nil then
|
|
||||||
exit;
|
|
||||||
LangScheme := Scheme.ColorSchemeBySynClass[Syn.ClassType];
|
|
||||||
if LangScheme = nil then
|
if LangScheme = nil then
|
||||||
exit;
|
exit;
|
||||||
|
|
||||||
@ -5638,14 +5647,9 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
// get current colorscheme:
|
// get current colorscheme:
|
||||||
SynColorScheme := ReadColorScheme(aSynEd.Highlighter.LanguageName);
|
Scheme := GetColorSchemeLanguage(aSynEd.Highlighter);
|
||||||
SchemeGrp := UserColorSchemeGroup.ColorSchemeGroup[SynColorScheme];
|
|
||||||
if SchemeGrp = nil then
|
|
||||||
exit;
|
|
||||||
Scheme := SchemeGrp.ColorSchemeBySynClass[aSynEd.Highlighter.ClassType];
|
|
||||||
|
|
||||||
if Assigned(Scheme) then Scheme.ApplyTo(aSynEd);
|
if Assigned(Scheme) then Scheme.ApplyTo(aSynEd);
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TEditorOptions.SetMarkupColor(Syn : TSrcIDEHighlighter;
|
procedure TEditorOptions.SetMarkupColor(Syn : TSrcIDEHighlighter;
|
||||||
@ -5657,11 +5661,7 @@ var
|
|||||||
Attrib: TColorSchemeAttribute;
|
Attrib: TColorSchemeAttribute;
|
||||||
begin
|
begin
|
||||||
if assigned(Syn) then begin
|
if assigned(Syn) then begin
|
||||||
SynColorScheme := ReadColorScheme(Syn.LanguageName);
|
Scheme := GetColorSchemeLanguage(Syn);
|
||||||
SchemeGrp := UserColorSchemeGroup.ColorSchemeGroup[SynColorScheme];
|
|
||||||
if SchemeGrp = nil then
|
|
||||||
exit;
|
|
||||||
Scheme := SchemeGrp.ColorSchemeBySynClass[Syn.ClassType];
|
|
||||||
end else begin
|
end else begin
|
||||||
SchemeGrp := UserColorSchemeGroup.ColorSchemeGroup[DefaultColorSchemeName];
|
SchemeGrp := UserColorSchemeGroup.ColorSchemeGroup[DefaultColorSchemeName];
|
||||||
if SchemeGrp = nil then
|
if SchemeGrp = nil then
|
||||||
|
Loading…
Reference in New Issue
Block a user