Add "Show SQL completion proposal" action and menu item, to support customizing its shortcut through the preferences dialog. Closes #972

This commit is contained in:
Ansgar Becker
2020-04-05 13:06:34 +02:00
parent 4bbe7b789e
commit 45847ec7b9
2 changed files with 21 additions and 1 deletions

View File

@@ -3123,6 +3123,12 @@ object MainForm: TMainForm
Visible = False
OnExecute = actAttachDatabaseExecute
end
object actSynEditCompletionPropose: TAction
Category = 'SQL'
Caption = 'Show SQL completion proposal'
ShortCut = 16416
OnExecute = actSynEditCompletionProposeExecute
end
end
object menuConnections: TPopupMenu
AutoHotkeys = maManual
@@ -3694,7 +3700,7 @@ object MainForm: TMainForm
Images = VirtualImageListMain
Margin = 1
OnExecute = SynCompletionProposalExecute
ShortCut = 16416
ShortCut = 0
Editor = SynMemoQuery
TimerInterval = 500
OnAfterCodeCompletion = SynCompletionProposalAfterCodeCompletion
@@ -3744,6 +3750,9 @@ object MainForm: TMainForm
object menuclear: TMenuItem
Action = actClearQueryEditor
end
object ShowSQLcompletionproposal1: TMenuItem
Action = actSynEditCompletionPropose
end
object ReformatSQL1: TMenuItem
Action = actReformatSQL
end

View File

@@ -667,6 +667,8 @@ type
actAttachDatabase: TAction;
Detach1: TMenuItem;
Attach1: TMenuItem;
actSynEditCompletionPropose: TAction;
ShowSQLcompletionproposal1: TMenuItem;
procedure actCreateDBObjectExecute(Sender: TObject);
procedure menuConnectionsPopup(Sender: TObject);
procedure actExitApplicationExecute(Sender: TObject);
@@ -1038,6 +1040,7 @@ type
procedure ApplicationEvents1ShortCut(var Msg: TWMKey; var Handled: Boolean);
procedure actDetachDatabaseExecute(Sender: TObject);
procedure actAttachDatabaseExecute(Sender: TObject);
procedure actSynEditCompletionProposeExecute(Sender: TObject);
private
// Executable file details
FAppVerMajor: Integer;
@@ -4504,6 +4507,14 @@ begin
end;
procedure TMainForm.actSynEditCompletionProposeExecute(Sender: TObject);
begin
// Show completion proposal explicitely, without the use of its own ShortCut property,
// to support a customized shortcut, see
SynCompletionProposal.Editor := ActiveSynMemo(False);
SynCompletionProposal.ActivateCompletion;
end;
{***
Show SQL Help window directly using a keyword
@param String SQL-keyword