@@ -341,6 +341,12 @@ procedure TEditorOptForm.FormCreate(Sender: TObject);
341341 try
342342 StrtoAttr(Attribute , devEditor.Syntax.Values[AttrName]);
343343 cpp.Attribute [I].Assign(Attribute );
344+
345+ if SameText(cpp.Attribute [I].Name , ' WhiteSpace' ) or SameText(cpp.Attribute [I].Name , ' Space' ) then begin
346+ cpCompletionBackground.NoneColorColor := cpp.Attribute [I].Background;
347+ cpCompletionBackground.DefaultColorColor := cpp.Attribute [I].Background;
348+ end ;
349+
344350 finally
345351 Attribute .Free;
346352 end ;
@@ -406,7 +412,14 @@ procedure TEditorOptForm.FormCreate(Sender: TObject);
406412 chkCBParseLocalH.Checked := devCodeCompletion.ParseLocalHeaders;
407413 chkCBParseGlobalH.Checked := devCodeCompletion.ParseGlobalHeaders;
408414 tbCompletionDelay.Position := devCodeCompletion.Delay;
409- cpCompletionBackground.Selected := devCodeCompletion.BackColor;
415+
416+ cpCompletionBackground.Items.InsertObject(1 , ' Default' , TObject(cpCompletionBackground.DefaultColorColor));
417+
418+ if cpCompletionBackground.DefaultColorColor = devCodeCompletion.BackColor then
419+ cpCompletionBackground.ItemIndex := 1
420+ else
421+ cpCompletionBackground.Selected := devCodeCompletion.BackColor;
422+
410423 chkEnableCompletionClick(nil );
411424
412425 // Symbol Completion
@@ -438,7 +451,6 @@ procedure TEditorOptForm.FormCreate(Sender: TObject);
438451 // Set defaults of color buttons, don't want all system colors too
439452 cpMarginColor.Items.InsertObject(1 , ' Default' , TObject(cpMarginColor.DefaultColorColor));
440453 cpHighColor.Items.InsertObject(1 , ' Default' , TObject(cpHighColor.DefaultColorColor));
441- cpCompletionBackground.Items.InsertObject(1 , ' Default' , TObject(cpCompletionBackground.DefaultColorColor));
442454end ;
443455
444456procedure TEditorOptForm.cboEditorFontDrawItem (Control: TWinControl; Index: Integer; Rect: TRect; State:
@@ -823,7 +835,11 @@ procedure TEditorOptForm.btnOkClick(Sender: TObject);
823835 with devCodeCompletion do begin
824836 Enabled := chkEnableCompletion.Checked;
825837 Delay := tbCompletionDelay.Position;
826- BackColor := cpCompletionBackground.Selected;
838+ if cpCompletionBackground.ItemIndex = 1 then
839+ BackColor := cpCompletionBackground.DefaultColorColor
840+ else
841+ BackColor := cpCompletionBackground.Selected;
842+
827843 ParseLocalHeaders := chkCBParseLocalH.Checked;
828844 ParseGlobalHeaders := chkCBParseGlobalH.Checked;
829845 end ;
@@ -989,9 +1005,13 @@ procedure TEditorOptForm.StyleChange(Sender: TObject);
9891005 Background := cpBackground.Selected;
9901006
9911007 // Update default color
992- if SameText(Name , ' WhiteSpace' ) then begin
1008+ if SameText(Attr. Name , ' WhiteSpace' ) or SameText(Attr. Name , ' Space ' ) then begin
9931009 ffgColor := Foreground;
9941010 fbgColor := Background;
1011+
1012+ cpCompletionBackground.NoneColorColor := Background;
1013+ cpCompletionBackground.DefaultColorColor := Background;
1014+ cpCompletionBackground.Items.Objects[1 ] := TObject(Background);
9951015 end ;
9961016
9971017 Style := [];
@@ -1106,10 +1126,17 @@ procedure TEditorOptForm.cboQuickColorSelect(Sender: TObject);
11061126
11071127 offset := cboQuickColor.ItemIndex * 1000 ;
11081128 for i := 0 to pred(cpp.AttrCount) do begin
1109- attr := TSynHighlighterAttributes.Create(cpp.Attribute [i].Name ,cpp.Attribute [i].Name );
1129+ attr := TSynHighlighterAttributes.Create(cpp.Attribute [i].Name , cpp.Attribute [i].Name );
11101130 try
11111131 StrtoAttr(Attr, LoadStr(i + offset + 1 ));
11121132 cpp.Attribute [i].Assign(Attr);
1133+
1134+ if SameText(Attr.Name , ' WhiteSpace' ) or SameText(Attr.Name , ' Space' ) then begin
1135+ cpCompletionBackground.NoneColorColor := Attr.Background;
1136+ cpCompletionBackground.DefaultColorColor := Attr.Background;
1137+ cpCompletionBackground.Items.Objects[1 ] := TObject(Attr.Background);
1138+ end ;
1139+
11131140 finally
11141141 Attr.Free;
11151142 end ;
0 commit comments