options, added hintDelay (ddoc) to editor category

This commit is contained in:
Basile Burg 2015-05-21 20:41:16 +02:00
parent ed6b1c4256
commit 006d375ec3
2 changed files with 25 additions and 2 deletions

View File

@ -37,6 +37,7 @@ type
fBracketMatchColor: TSynSelectedColor; fBracketMatchColor: TSynSelectedColor;
fFont: TFont; fFont: TFont;
// //
fHintDelay: Integer;
fTabWidth: Integer; fTabWidth: Integer;
fBlockIdent: Integer; fBlockIdent: Integer;
fLineSpacing: Integer; fLineSpacing: Integer;
@ -55,8 +56,10 @@ type
procedure setBracketMatchColor(aValue: TSynSelectedColor); procedure setBracketMatchColor(aValue: TSynSelectedColor);
procedure setD2Syn(aValue: TPersistent); procedure setD2Syn(aValue: TPersistent);
procedure setTxtSyn(aValue: TPersistent); procedure setTxtSyn(aValue: TPersistent);
procedure setShortcuts(Avalue: TCollection); procedure setShortcuts(aValue: TCollection);
procedure setHintDelay(aValue: Integer);
published published
property hintDelay: Integer read fHintDelay write setHintDelay;
property bracketMatchColor: TSynSelectedColor read fBracketMatchColor write setBracketMatchColor; property bracketMatchColor: TSynSelectedColor read fBracketMatchColor write setBracketMatchColor;
property mouseLinkColor: TSynSelectedColor read fMouseLinkColor write setMouseLinkColor; property mouseLinkColor: TSynSelectedColor read fMouseLinkColor write setMouseLinkColor;
property selectedColor: TSynSelectedColor read fSelCol write setSelCol; property selectedColor: TSynSelectedColor read fSelCol write setSelCol;
@ -142,6 +145,7 @@ begin
fTxtSyn := TSynTxtSyn.Create(self); fTxtSyn := TSynTxtSyn.Create(self);
fTxtSyn.Assign(TxtSyn); fTxtSyn.Assign(TxtSyn);
// //
fHintDelay:=200;
fSelCol := TSynSelectedColor.Create; fSelCol := TSynSelectedColor.Create;
fFoldedColor := TSynSelectedColor.Create; fFoldedColor := TSynSelectedColor.Create;
fMouseLinkColor := TSynSelectedColor.Create; fMouseLinkColor := TSynSelectedColor.Create;
@ -210,6 +214,7 @@ begin
begin begin
srcopt := TCEEditorOptionsBase(src); srcopt := TCEEditorOptionsBase(src);
// //
fHintDelay:=srcopt.fHintDelay;
fFont.Assign(srcopt.fFont); fFont.Assign(srcopt.fFont);
fSelCol.Assign(srcopt.fSelCol); fSelCol.Assign(srcopt.fSelCol);
fFoldedColor.Assign(srcopt.fFoldedColor); fFoldedColor.Assign(srcopt.fFoldedColor);
@ -233,6 +238,13 @@ begin
inherited; inherited;
end; 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); procedure TCEEditorOptionsBase.setShortcuts(aValue: TCollection);
begin begin
fShortCuts.Assign(aValue); fShortCuts.Assign(aValue);
@ -431,6 +443,7 @@ var
shc: TCEPersistentShortcut; shc: TCEPersistentShortcut;
kst: TSynEditKeyStroke; kst: TSynEditKeyStroke;
begin begin
anEditor.hintDelay:=fHintDelay;
anEditor.defaultFontSize := font.Size; anEditor.defaultFontSize := font.Size;
anEditor.Font.Assign(font); anEditor.Font.Assign(font);
anEditor.SelectedColor.Assign(fSelCol); anEditor.SelectedColor.Assign(fSelCol);

View File

@ -91,6 +91,7 @@ type
fMousePos: TPoint; fMousePos: TPoint;
fCallTipWin: TCEEditorHintWindow; fCallTipWin: TCEEditorHintWindow;
fDDocWin: TCEEditorHintWindow; fDDocWin: TCEEditorHintWindow;
fHintDelay: Integer;
fHintTimer: TIdleTimer; fHintTimer: TIdleTimer;
fCanShowHint: boolean; fCanShowHint: boolean;
fOldMousePos: TPoint; fOldMousePos: TPoint;
@ -106,6 +107,7 @@ type
procedure HintTimerEvent(sender: TObject); procedure HintTimerEvent(sender: TObject);
procedure InitHintWins; procedure InitHintWins;
function getIfTemp: boolean; function getIfTemp: boolean;
procedure setHintDelay(aValue: Integer);
protected protected
procedure MouseLeave; override; procedure MouseLeave; override;
procedure SetVisible(Value: Boolean); override; procedure SetVisible(Value: Boolean); override;
@ -119,6 +121,7 @@ type
function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean; override; function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean; override;
published published
property defaultFontSize: Integer read fDefaultFontSize write setDefaultFontSize; property defaultFontSize: Integer read fDefaultFontSize write setDefaultFontSize;
property hintDelay: Integer read fHintDelay write setHintDelay;
public public
constructor Create(aOwner: TComponent); override; constructor Create(aOwner: TComponent); override;
destructor destroy; override; destructor destroy; override;
@ -344,9 +347,10 @@ begin
// //
ShowHint :=false; ShowHint :=false;
InitHintWins; InitHintWins;
fHintDelay := 200;
fHintTimer := TIdleTimer.Create(self); fHintTimer := TIdleTimer.Create(self);
fHintTimer.AutoEnabled:=true; fHintTimer.AutoEnabled:=true;
fHintTimer.Interval := 200; fHintTimer.Interval := fHintDelay;
fHintTimer.OnTimer := @HintTimerEvent; fHintTimer.OnTimer := @HintTimerEvent;
// //
Gutter.LineNumberPart.ShowOnlyLineNumbersMultiplesOf := 5; Gutter.LineNumberPart.ShowOnlyLineNumbersMultiplesOf := 5;
@ -574,6 +578,12 @@ begin
end; end;
end; end;
procedure TCESynMemo.setHintDelay(aValue: Integer);
begin
fHintDelay:=aValue;
fHintTimer.Interval:=fHintDelay;
end;
procedure TCESynMemo.HintTimerEvent(sender: TObject); procedure TCESynMemo.HintTimerEvent(sender: TObject);
var var
str: string; str: string;