From 006d375ec3b09baa29789d47fd65e3d8fa061746 Mon Sep 17 00:00:00 2001 From: Basile Burg Date: Thu, 21 May 2015 20:41:16 +0200 Subject: [PATCH] options, added hintDelay (ddoc) to editor category --- src/ce_editoroptions.pas | 15 ++++++++++++++- src/ce_synmemo.pas | 12 +++++++++++- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/ce_editoroptions.pas b/src/ce_editoroptions.pas index f6402225..957c7175 100644 --- a/src/ce_editoroptions.pas +++ b/src/ce_editoroptions.pas @@ -37,6 +37,7 @@ type fBracketMatchColor: TSynSelectedColor; fFont: TFont; // + fHintDelay: Integer; fTabWidth: Integer; fBlockIdent: Integer; fLineSpacing: Integer; @@ -55,8 +56,10 @@ type procedure setBracketMatchColor(aValue: TSynSelectedColor); procedure setD2Syn(aValue: TPersistent); procedure setTxtSyn(aValue: TPersistent); - procedure setShortcuts(Avalue: TCollection); + procedure setShortcuts(aValue: TCollection); + procedure setHintDelay(aValue: Integer); published + property hintDelay: Integer read fHintDelay write setHintDelay; property bracketMatchColor: TSynSelectedColor read fBracketMatchColor write setBracketMatchColor; property mouseLinkColor: TSynSelectedColor read fMouseLinkColor write setMouseLinkColor; property selectedColor: TSynSelectedColor read fSelCol write setSelCol; @@ -142,6 +145,7 @@ begin fTxtSyn := TSynTxtSyn.Create(self); fTxtSyn.Assign(TxtSyn); // + fHintDelay:=200; fSelCol := TSynSelectedColor.Create; fFoldedColor := TSynSelectedColor.Create; fMouseLinkColor := TSynSelectedColor.Create; @@ -210,6 +214,7 @@ begin begin srcopt := TCEEditorOptionsBase(src); // + fHintDelay:=srcopt.fHintDelay; fFont.Assign(srcopt.fFont); fSelCol.Assign(srcopt.fSelCol); fFoldedColor.Assign(srcopt.fFoldedColor); @@ -233,6 +238,13 @@ begin inherited; end; +procedure TCEEditorOptionsBase.setHintDelay(aValue: Integer); +begin + if aValue > 2000 then aValue := 2000 + else if aValue < 20 then aValue := 20; + fHintDelay:=aValue; +end; + procedure TCEEditorOptionsBase.setShortcuts(aValue: TCollection); begin fShortCuts.Assign(aValue); @@ -431,6 +443,7 @@ var shc: TCEPersistentShortcut; kst: TSynEditKeyStroke; begin + anEditor.hintDelay:=fHintDelay; anEditor.defaultFontSize := font.Size; anEditor.Font.Assign(font); anEditor.SelectedColor.Assign(fSelCol); diff --git a/src/ce_synmemo.pas b/src/ce_synmemo.pas index 2bb1f27d..8e8ee538 100644 --- a/src/ce_synmemo.pas +++ b/src/ce_synmemo.pas @@ -91,6 +91,7 @@ type fMousePos: TPoint; fCallTipWin: TCEEditorHintWindow; fDDocWin: TCEEditorHintWindow; + fHintDelay: Integer; fHintTimer: TIdleTimer; fCanShowHint: boolean; fOldMousePos: TPoint; @@ -106,6 +107,7 @@ type procedure HintTimerEvent(sender: TObject); procedure InitHintWins; function getIfTemp: boolean; + procedure setHintDelay(aValue: Integer); protected procedure MouseLeave; override; procedure SetVisible(Value: Boolean); override; @@ -119,6 +121,7 @@ type function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean; override; published property defaultFontSize: Integer read fDefaultFontSize write setDefaultFontSize; + property hintDelay: Integer read fHintDelay write setHintDelay; public constructor Create(aOwner: TComponent); override; destructor destroy; override; @@ -344,9 +347,10 @@ begin // ShowHint :=false; InitHintWins; + fHintDelay := 200; fHintTimer := TIdleTimer.Create(self); fHintTimer.AutoEnabled:=true; - fHintTimer.Interval := 200; + fHintTimer.Interval := fHintDelay; fHintTimer.OnTimer := @HintTimerEvent; // Gutter.LineNumberPart.ShowOnlyLineNumbersMultiplesOf := 5; @@ -574,6 +578,12 @@ begin end; end; +procedure TCESynMemo.setHintDelay(aValue: Integer); +begin + fHintDelay:=aValue; + fHintTimer.Interval:=fHintDelay; +end; + procedure TCESynMemo.HintTimerEvent(sender: TObject); var str: string;