diff --git a/ide/lazarusidestrconsts.pas b/ide/lazarusidestrconsts.pas index e7057908e7..098b9a3744 100644 --- a/ide/lazarusidestrconsts.pas +++ b/ide/lazarusidestrconsts.pas @@ -2612,6 +2612,7 @@ resourcestring srkmecWordCompletion = 'Word completion'; srkmecCompletecode = 'Complete code'; lisMenuCompleteCode = 'Complete Code'; + lisMenuUseUnit = 'Add unit to uses section'; srkmecShowCodeContext = 'Show code context'; srkmecExtractProc = 'Extract procedure'; lisMenuExtractProc = 'Extract procedure ...'; diff --git a/ide/main.pp b/ide/main.pp index b2424ad7b6..09faba1329 100644 --- a/ide/main.pp +++ b/ide/main.pp @@ -267,6 +267,7 @@ type // refactor menu procedure mnuRefactorClicked(Sender: TObject); procedure mnuRefactorCompleteCodeClicked(Sender: TObject); + procedure mnuRefactorUseUnitClicked(Sender: TObject); procedure mnuRefactorRenameIdentifierClicked(Sender: TObject); procedure mnuRefactorExtractProcClicked(Sender: TObject); procedure mnuRefactorInvertAssignmentClicked(Sender: TObject); @@ -2454,6 +2455,7 @@ begin with MainIDEBar do begin mnuRefactor.OnClick:=@mnuRefactorClicked; itmRefactorCompleteCode.OnClick:=@mnuRefactorCompleteCodeClicked; + itmRefactorUseUnit.OnClick:=@mnuRefactorUseUnitClicked; itmRefactorRenameIdentifier.OnClick:=@mnuRefactorRenameIdentifierClicked; itmRefactorExtractProc.OnClick:=@mnuRefactorExtractProcClicked; itmRefactorInvertAssignment.OnClick:=@mnuRefactorInvertAssignmentClicked; @@ -3826,6 +3828,7 @@ begin with MainIDEBar do begin //itmRefactorCodeTools itmRefactorCompleteCode.Enabled:=Editable; + itmRefactorUseUnit.Enabled:=Editable; itmRefactorRenameIdentifier.Enabled:=Editable; itmRefactorExtractProc.Enabled:=SelEditable; itmRefactorInvertAssignment.Enabled:=SelEditable; @@ -17726,6 +17729,11 @@ begin DoCompleteCodeAtCursor; end; +procedure TMainIDE.mnuRefactorUseUnitClicked(Sender: TObject); +begin + DoSourceEditorCommand(ecUseProjectUnit); +end; + procedure TMainIDE.mnuRefactorRenameIdentifierClicked(Sender: TObject); begin DoFindRenameIdentifier(true); diff --git a/ide/mainbar.pas b/ide/mainbar.pas index f1d912d97c..ccab7d19b7 100644 --- a/ide/mainbar.pas +++ b/ide/mainbar.pas @@ -195,6 +195,7 @@ type //mnuRefactor: TIDEMenuSection; //itmRefactorCodeTools: TIDEMenuSection; itmRefactorCompleteCode: TIDEMenuCommand; + itmRefactorUseUnit: TIDEMenuCommand; itmRefactorRenameIdentifier: TIDEMenuCommand; itmRefactorExtractProc: TIDEMenuCommand; itmRefactorInvertAssignment: TIDEMenuCommand; diff --git a/ide/mainbase.pas b/ide/mainbase.pas index d3b8f83fe0..983e3ce05e 100644 --- a/ide/mainbase.pas +++ b/ide/mainbase.pas @@ -555,6 +555,7 @@ begin CreateMenuSeparatorSection(mnuRefactor,itmRefactorCodeTools,'itmRefactorCodeTools'); ParentMI:=itmRefactorCodeTools; CreateMenuItem(ParentMI,itmRefactorCompleteCode,'itmRefactorCompleteCode',lisMenuCompleteCode); + CreateMenuItem(ParentMI,itmRefactorUseUnit,'itmRefactorUseUnit',lisMenuUseUnit); CreateMenuItem(ParentMI,itmRefactorRenameIdentifier,'itmRefactorRenameIdentifier',lisMenuRenameIdentifier); CreateMenuItem(ParentMI,itmRefactorExtractProc,'itmRefactorExtractProc',lisMenuExtractProc); CreateMenuItem(ParentMI,itmRefactorInvertAssignment,'itmInvertAssignment',uemInvertAssignment); @@ -920,6 +921,7 @@ begin // refactor menu itmRefactorCompleteCode.Command:=GetCommand(ecCompleteCode); + itmRefactorUseUnit.Command:=GetCommand(ecUseProjectUnit); itmRefactorRenameIdentifier.Command:=GetCommand(ecRenameIdentifier); itmRefactorExtractProc.Command:=GetCommand(ecExtractProc); itmRefactorInvertAssignment.Command:=GetCommand(ecInvertAssignment);