mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-02 11:01:20 +02:00
IDE: Jump to code declarations from Code Explorer with shortcut keys. Reuse event handlers. Issue #20048.
git-svn-id: trunk@62821 -
This commit is contained in:
parent
0bdef3f301
commit
d84fe6746d
@ -7,6 +7,7 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
ClientHeight = 517
|
ClientHeight = 517
|
||||||
ClientWidth = 220
|
ClientWidth = 220
|
||||||
KeyPreview = True
|
KeyPreview = True
|
||||||
|
OnActivate = FormActivate
|
||||||
OnCreate = CodeExplorerViewCREATE
|
OnCreate = CodeExplorerViewCREATE
|
||||||
OnDestroy = CodeExplorerViewDestroy
|
OnDestroy = CodeExplorerViewDestroy
|
||||||
LCLVersion = '2.1.0.0'
|
LCLVersion = '2.1.0.0'
|
||||||
@ -22,13 +23,13 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
OnChange = MainNotebookPageChanged
|
OnChange = MainNotebookPageChanged
|
||||||
object CodePage: TTabSheet
|
object CodePage: TTabSheet
|
||||||
Caption = 'CodePage'
|
Caption = 'CodePage'
|
||||||
ClientHeight = 489
|
ClientHeight = 490
|
||||||
ClientWidth = 212
|
ClientWidth = 218
|
||||||
object CodeTreeview: TTreeView
|
object CodeTreeview: TTreeView
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 465
|
Height = 465
|
||||||
Top = 24
|
Top = 25
|
||||||
Width = 212
|
Width = 218
|
||||||
Align = alClient
|
Align = alClient
|
||||||
BorderSpacing.Top = 1
|
BorderSpacing.Top = 1
|
||||||
HideSelection = False
|
HideSelection = False
|
||||||
@ -37,34 +38,34 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
RightClickSelect = True
|
RightClickSelect = True
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
OnDblClick = CodeTreeviewDblClick
|
OnDblClick = TreeviewDblClick
|
||||||
OnDeletion = CodeTreeviewDeletion
|
OnDeletion = TreeviewDeletion
|
||||||
OnKeyUp = CodeTreeviewKeyUp
|
OnKeyDown = TreeviewKeyDown
|
||||||
OnMouseDown = CodeTreeviewMouseDown
|
OnMouseDown = CodeTreeviewMouseDown
|
||||||
Options = [tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoReadOnly, tvoRightClickSelect, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoNoDoubleClickExpand, tvoThemedDraw]
|
Options = [tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoReadOnly, tvoRightClickSelect, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoNoDoubleClickExpand, tvoThemedDraw]
|
||||||
end
|
end
|
||||||
object CodeTreeviewButtonPanel: TPanel
|
object CodeTreeviewButtonPanel: TPanel
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 23
|
Height = 24
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 212
|
Width = 218
|
||||||
Align = alTop
|
Align = alTop
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BevelOuter = bvNone
|
BevelOuter = bvNone
|
||||||
ClientHeight = 23
|
ClientHeight = 24
|
||||||
ClientWidth = 212
|
ClientWidth = 218
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object CodeFilterEdit: TEdit
|
object CodeFilterEdit: TEdit
|
||||||
AnchorSideLeft.Control = CodeTreeviewButtonPanel
|
AnchorSideLeft.Control = CodeTreeviewButtonPanel
|
||||||
AnchorSideTop.Control = CodeTreeviewButtonPanel
|
AnchorSideTop.Control = CodeTreeviewButtonPanel
|
||||||
AnchorSideRight.Control = CodeRefreshSpeedButton
|
AnchorSideRight.Control = CodeRefreshSpeedButton
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 23
|
Height = 24
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 143
|
Width = 149
|
||||||
Anchors = [akTop, akLeft, akRight]
|
Anchors = [akTop, akLeft, akRight]
|
||||||
OnChange = CodeFilterEditChange
|
OnChange = CodeFilterEditChange
|
||||||
OnEnter = CodeFilterEditEnter
|
OnEnter = FilterEditEnter
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = 'CodeFilterEdit'
|
Text = 'CodeFilterEdit'
|
||||||
end
|
end
|
||||||
@ -72,8 +73,8 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
AnchorSideRight.Control = CodeModeSpeedButton
|
AnchorSideRight.Control = CodeModeSpeedButton
|
||||||
AnchorSideBottom.Control = CodeFilterEdit
|
AnchorSideBottom.Control = CodeFilterEdit
|
||||||
AnchorSideBottom.Side = asrBottom
|
AnchorSideBottom.Side = asrBottom
|
||||||
Left = 143
|
Left = 149
|
||||||
Height = 22
|
Height = 23
|
||||||
Hint = 'Refresh CodeExplorer'
|
Hint = 'Refresh CodeExplorer'
|
||||||
Top = 1
|
Top = 1
|
||||||
Width = 23
|
Width = 23
|
||||||
@ -87,8 +88,8 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
AnchorSideRight.Control = CodeOptionsSpeedButton
|
AnchorSideRight.Control = CodeOptionsSpeedButton
|
||||||
AnchorSideBottom.Control = CodeRefreshSpeedButton
|
AnchorSideBottom.Control = CodeRefreshSpeedButton
|
||||||
AnchorSideBottom.Side = asrBottom
|
AnchorSideBottom.Side = asrBottom
|
||||||
Left = 166
|
Left = 172
|
||||||
Height = 22
|
Height = 23
|
||||||
Top = 1
|
Top = 1
|
||||||
Width = 23
|
Width = 23
|
||||||
Anchors = [akTop, akRight, akBottom]
|
Anchors = [akTop, akRight, akBottom]
|
||||||
@ -102,14 +103,14 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
AnchorSideRight.Side = asrBottom
|
AnchorSideRight.Side = asrBottom
|
||||||
AnchorSideBottom.Control = CodeRefreshSpeedButton
|
AnchorSideBottom.Control = CodeRefreshSpeedButton
|
||||||
AnchorSideBottom.Side = asrBottom
|
AnchorSideBottom.Side = asrBottom
|
||||||
Left = 189
|
Left = 195
|
||||||
Height = 22
|
Height = 23
|
||||||
Hint = 'Options for CodeExplorer'
|
Hint = 'Options for CodeExplorer'
|
||||||
Top = 1
|
Top = 1
|
||||||
Width = 23
|
Width = 23
|
||||||
Anchors = [akTop, akRight, akBottom]
|
Anchors = [akTop, akRight, akBottom]
|
||||||
Flat = True
|
Flat = True
|
||||||
OnClick = CodeOptionsSpeedButtonClick
|
OnClick = OptionsSpeedButtonClick
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
ParentShowHint = False
|
ParentShowHint = False
|
||||||
end
|
end
|
||||||
@ -117,28 +118,28 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
end
|
end
|
||||||
object DirectivesPage: TTabSheet
|
object DirectivesPage: TTabSheet
|
||||||
Caption = 'DirectivesPage'
|
Caption = 'DirectivesPage'
|
||||||
ClientHeight = 489
|
ClientHeight = 490
|
||||||
ClientWidth = 212
|
ClientWidth = 218
|
||||||
object DirTreeviewButtonPanel: TPanel
|
object DirTreeviewButtonPanel: TPanel
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 23
|
Height = 24
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 212
|
Width = 218
|
||||||
Align = alTop
|
Align = alTop
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BevelOuter = bvNone
|
BevelOuter = bvNone
|
||||||
ClientHeight = 23
|
ClientHeight = 24
|
||||||
ClientWidth = 212
|
ClientWidth = 218
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object DirectivesFilterEdit: TEdit
|
object DirectivesFilterEdit: TEdit
|
||||||
AnchorSideRight.Control = DirRefreshSpeedButton
|
AnchorSideRight.Control = DirRefreshSpeedButton
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 23
|
Height = 24
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 166
|
Width = 172
|
||||||
Anchors = [akTop, akLeft, akRight]
|
Anchors = [akTop, akLeft, akRight]
|
||||||
OnChange = DirectivesFilterEditChange
|
OnChange = DirectivesFilterEditChange
|
||||||
OnEnter = DirectivesFilterEditEnter
|
OnEnter = FilterEditEnter
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = 'DirectivesFilterEdit'
|
Text = 'DirectivesFilterEdit'
|
||||||
end
|
end
|
||||||
@ -146,8 +147,8 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
AnchorSideRight.Control = DirOptionsSpeedButton
|
AnchorSideRight.Control = DirOptionsSpeedButton
|
||||||
AnchorSideBottom.Control = DirectivesFilterEdit
|
AnchorSideBottom.Control = DirectivesFilterEdit
|
||||||
AnchorSideBottom.Side = asrBottom
|
AnchorSideBottom.Side = asrBottom
|
||||||
Left = 166
|
Left = 172
|
||||||
Height = 22
|
Height = 23
|
||||||
Hint = 'Refresh CodeExplorer'
|
Hint = 'Refresh CodeExplorer'
|
||||||
Top = 1
|
Top = 1
|
||||||
Width = 23
|
Width = 23
|
||||||
@ -162,14 +163,14 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
AnchorSideRight.Side = asrBottom
|
AnchorSideRight.Side = asrBottom
|
||||||
AnchorSideBottom.Control = DirRefreshSpeedButton
|
AnchorSideBottom.Control = DirRefreshSpeedButton
|
||||||
AnchorSideBottom.Side = asrBottom
|
AnchorSideBottom.Side = asrBottom
|
||||||
Left = 189
|
Left = 195
|
||||||
Height = 22
|
Height = 23
|
||||||
Hint = 'Options for CodeExplorer'
|
Hint = 'Options for CodeExplorer'
|
||||||
Top = 1
|
Top = 1
|
||||||
Width = 23
|
Width = 23
|
||||||
Anchors = [akTop, akRight, akBottom]
|
Anchors = [akTop, akRight, akBottom]
|
||||||
Flat = True
|
Flat = True
|
||||||
OnClick = CodeOptionsSpeedButtonClick
|
OnClick = OptionsSpeedButtonClick
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
ParentShowHint = False
|
ParentShowHint = False
|
||||||
end
|
end
|
||||||
@ -179,17 +180,17 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
AnchorSideTop.Side = asrBottom
|
AnchorSideTop.Side = asrBottom
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 465
|
Height = 465
|
||||||
Top = 24
|
Top = 25
|
||||||
Width = 212
|
Width = 218
|
||||||
Align = alBottom
|
Align = alBottom
|
||||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||||
BorderSpacing.Top = 1
|
BorderSpacing.Top = 1
|
||||||
PopupMenu = TreePopupmenu
|
PopupMenu = TreePopupmenu
|
||||||
ReadOnly = True
|
ReadOnly = True
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
OnDblClick = DirectivesTreeViewDblClick
|
OnDblClick = TreeviewDblClick
|
||||||
OnDeletion = DirectivesTreeViewDeletion
|
OnDeletion = TreeviewDeletion
|
||||||
OnKeyUp = DirectivesTreeViewKeyUp
|
OnKeyUp = TreeviewKeyDown
|
||||||
Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw]
|
Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -197,13 +198,13 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
object Imagelist1: TImageList
|
object Imagelist1: TImageList
|
||||||
Height = 18
|
Height = 18
|
||||||
Width = 18
|
Width = 18
|
||||||
Left = 64
|
left = 64
|
||||||
Top = 64
|
top = 64
|
||||||
end
|
end
|
||||||
object TreePopupmenu: TPopupMenu
|
object TreePopupmenu: TPopupMenu
|
||||||
OnPopup = TreePopupmenuPopup
|
OnPopup = TreePopupmenuPopup
|
||||||
Left = 64
|
left = 64
|
||||||
Top = 128
|
top = 128
|
||||||
object MenuItem1: TMenuItem
|
object MenuItem1: TMenuItem
|
||||||
Caption = 'New Item1'
|
Caption = 'New Item1'
|
||||||
Visible = False
|
Visible = False
|
||||||
@ -213,7 +214,7 @@ object CodeExplorerView: TCodeExplorerView
|
|||||||
AutoEnabled = True
|
AutoEnabled = True
|
||||||
Interval = 500
|
Interval = 500
|
||||||
OnTimer = IdleTimer1Timer
|
OnTimer = IdleTimer1Timer
|
||||||
Left = 64
|
left = 64
|
||||||
Top = 192
|
top = 192
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -132,37 +132,33 @@ type
|
|||||||
TreePopupmenu: TPopupMenu;
|
TreePopupmenu: TPopupMenu;
|
||||||
procedure CodeExplorerViewCreate(Sender: TObject);
|
procedure CodeExplorerViewCreate(Sender: TObject);
|
||||||
procedure CodeExplorerViewDestroy(Sender: TObject);
|
procedure CodeExplorerViewDestroy(Sender: TObject);
|
||||||
procedure CodeFilterEditEnter(Sender: TObject);
|
|
||||||
procedure CodeTreeviewDblClick(Sender: TObject);
|
|
||||||
procedure CodeTreeviewDeletion(Sender: TObject; Node: TTreeNode);
|
|
||||||
procedure CodeTreeviewKeyUp(Sender: TObject; var Key: Word;
|
|
||||||
Shift: TShiftState);
|
|
||||||
procedure CodeFilterEditChange(Sender: TObject);
|
procedure CodeFilterEditChange(Sender: TObject);
|
||||||
procedure CodeTreeviewMouseDown(Sender: TObject; Button: TMouseButton;
|
procedure CodeTreeviewMouseDown(Sender: TObject; Button: TMouseButton;
|
||||||
Shift: TShiftState; X, Y: Integer);
|
Shift: TShiftState; X, Y: Integer);
|
||||||
procedure DirectivesFilterEditChange(Sender: TObject);
|
procedure DirectivesFilterEditChange(Sender: TObject);
|
||||||
procedure DirectivesFilterEditEnter(Sender: TObject);
|
|
||||||
procedure DirectivesTreeViewDblClick(Sender: TObject);
|
|
||||||
procedure DirectivesTreeViewDeletion(Sender: TObject; Node: TTreeNode);
|
|
||||||
procedure DirectivesTreeViewKeyUp(Sender: TObject; var Key: Word;
|
|
||||||
Shift: TShiftState);
|
|
||||||
procedure DirRefreshSpeedButtonClick(Sender: TObject);
|
procedure DirRefreshSpeedButtonClick(Sender: TObject);
|
||||||
|
procedure FilterEditEnter(Sender: TObject);
|
||||||
|
procedure FormActivate(Sender: TObject);
|
||||||
procedure IdleTimer1Timer(Sender: TObject);
|
procedure IdleTimer1Timer(Sender: TObject);
|
||||||
procedure JumpToMenuItemClick(Sender: TObject);
|
procedure JumpToMenuItemClick(Sender: TObject);
|
||||||
procedure JumpToImplementationMenuItemClick(Sender: TObject);
|
procedure JumpToImplementationMenuItemClick(Sender: TObject);
|
||||||
procedure OnCloseIDE(Sender: TObject);
|
procedure CloseIDEHandler(Sender: TObject);
|
||||||
procedure ShowSrcEditPosMenuItemClick(Sender: TObject);
|
procedure ShowSrcEditPosMenuItemClick(Sender: TObject);
|
||||||
procedure MainNotebookPageChanged(Sender: TObject);
|
procedure MainNotebookPageChanged(Sender: TObject);
|
||||||
procedure CodeModeSpeedButtonClick(Sender: TObject);
|
procedure CodeModeSpeedButtonClick(Sender: TObject);
|
||||||
procedure CodeOptionsSpeedButtonClick(Sender: TObject);
|
|
||||||
procedure RefreshMenuItemClick(Sender: TObject);
|
|
||||||
procedure CodeRefreshSpeedButtonClick(Sender: TObject);
|
procedure CodeRefreshSpeedButtonClick(Sender: TObject);
|
||||||
|
procedure OptionsSpeedButtonClick(Sender: TObject);
|
||||||
|
procedure RefreshMenuItemClick(Sender: TObject);
|
||||||
procedure RenameMenuItemClick(Sender: TObject);
|
procedure RenameMenuItemClick(Sender: TObject);
|
||||||
procedure TreePopupmenuPopup(Sender: TObject);
|
procedure TreePopupmenuPopup(Sender: TObject);
|
||||||
procedure OnUserInput(Sender: TObject; {%H-}Msg: Cardinal);
|
procedure TreeviewDblClick(Sender: TObject);
|
||||||
|
procedure TreeviewDeletion(Sender: TObject; Node: TTreeNode);
|
||||||
|
procedure TreeviewKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
|
||||||
|
procedure UserInputHandler(Sender: TObject; {%H-}Msg: Cardinal);
|
||||||
private
|
private
|
||||||
fCategoryNodes: array[TCodeExplorerCategory] of TTreeNode;
|
fCategoryNodes: array[TCodeExplorerCategory] of TTreeNode;
|
||||||
FCodeFilename: string;
|
FCodeFilename: string;
|
||||||
|
FCodeCmd1, FCodeCmd2, FCodeCmd3: TIDECommand;
|
||||||
FDirectivesFilename: string;
|
FDirectivesFilename: string;
|
||||||
FFlags: TCodeExplorerViewFlags;
|
FFlags: TCodeExplorerViewFlags;
|
||||||
FLastCodeChangeStep: integer;
|
FLastCodeChangeStep: integer;
|
||||||
@ -505,8 +501,8 @@ begin
|
|||||||
|
|
||||||
fNodesWithPath:=TAvlTree.Create(@CompareViewNodePathsAndParams);
|
fNodesWithPath:=TAvlTree.Create(@CompareViewNodePathsAndParams);
|
||||||
|
|
||||||
Application.AddOnUserInputHandler(@OnUserInput);
|
Application.AddOnUserInputHandler(@UserInputHandler);
|
||||||
LazarusIDE.AddHandlerOnIDEClose(@OnCloseIDE);
|
LazarusIDE.AddHandlerOnIDEClose(@CloseIDEHandler);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeExplorerViewDestroy(Sender: TObject);
|
procedure TCodeExplorerView.CodeExplorerViewDestroy(Sender: TObject);
|
||||||
@ -519,29 +515,6 @@ begin
|
|||||||
CodeExplorerView:=nil;
|
CodeExplorerView:=nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeFilterEditEnter(Sender: TObject);
|
|
||||||
begin
|
|
||||||
CodeFilterEdit.SelectAll;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeTreeviewDblClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
JumpToSelection;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeTreeviewDeletion(Sender: TObject; Node: TTreeNode);
|
|
||||||
begin
|
|
||||||
if Node.Data<>nil then
|
|
||||||
TViewNodeData(Node.Data).Free;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeTreeviewKeyUp(Sender: TObject; var Key: Word;
|
|
||||||
Shift: TShiftState);
|
|
||||||
begin
|
|
||||||
if (Key=VK_RETURN) and (Shift=[]) then
|
|
||||||
JumpToSelection;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeFilterEditChange(Sender: TObject);
|
procedure TCodeExplorerView.CodeFilterEditChange(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
CodeFilterChanged;
|
CodeFilterChanged;
|
||||||
@ -564,36 +537,25 @@ begin
|
|||||||
DirectivesFilterChanged;
|
DirectivesFilterChanged;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.DirectivesFilterEditEnter(Sender: TObject);
|
|
||||||
begin
|
|
||||||
DirectivesFilterEdit.SelectAll;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.DirectivesTreeViewDblClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
JumpToSelection;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.DirectivesTreeViewDeletion(Sender: TObject;
|
|
||||||
Node: TTreeNode);
|
|
||||||
begin
|
|
||||||
if Node.Data<>nil then
|
|
||||||
TObject(Node.Data).Free;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.DirectivesTreeViewKeyUp(Sender: TObject;
|
|
||||||
var Key: Word; Shift: TShiftState);
|
|
||||||
begin
|
|
||||||
if (Key=VK_RETURN) and (Shift=[]) then
|
|
||||||
JumpToSelection;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.DirRefreshSpeedButtonClick(Sender: TObject);
|
procedure TCodeExplorerView.DirRefreshSpeedButtonClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
FLastDirectivesChangeStep:=CTInvalidChangeStamp;
|
FLastDirectivesChangeStep:=CTInvalidChangeStamp;
|
||||||
RefreshDirectives(true);
|
RefreshDirectives(true);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TCodeExplorerView.FilterEditEnter(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TEdit).SelectAll;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCodeExplorerView.FormActivate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
DebugLn(['TCodeExplorerView.FormActivate!']);
|
||||||
|
FCodeCmd1:=IDECommandList.FindIDECommand(ecFindDeclaration);
|
||||||
|
FCodeCmd2:=IDECommandList.FindIDECommand(ecFindProcedureDefinition);
|
||||||
|
FCodeCmd3:=IDECommandList.FindIDECommand(ecFindProcedureMethod);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.IdleTimer1Timer(Sender: TObject);
|
procedure TCodeExplorerView.IdleTimer1Timer(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if not (cevCheckOnIdle in FFlags) then exit;
|
if not (cevCheckOnIdle in FFlags) then exit;
|
||||||
@ -632,7 +594,7 @@ begin
|
|||||||
JumpToSelection(true);
|
JumpToSelection(true);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.OnCloseIDE(Sender: TObject);
|
procedure TCodeExplorerView.CloseIDEHandler(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
CodeExplorerOptions.Save;
|
CodeExplorerOptions.Save;
|
||||||
end;
|
end;
|
||||||
@ -660,7 +622,13 @@ begin
|
|||||||
SetMode(cemCategory);
|
SetMode(cemCategory);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeOptionsSpeedButtonClick(Sender: TObject);
|
procedure TCodeExplorerView.CodeRefreshSpeedButtonClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
FLastCodeChangeStep:=CTInvalidChangeStamp;
|
||||||
|
RefreshCode(true);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCodeExplorerView.OptionsSpeedButtonClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if Assigned(FOnShowOptions) then
|
if Assigned(FOnShowOptions) then
|
||||||
begin
|
begin
|
||||||
@ -676,12 +644,6 @@ begin
|
|||||||
Refresh(true);
|
Refresh(true);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.CodeRefreshSpeedButtonClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
FLastCodeChangeStep:=CTInvalidChangeStamp;
|
|
||||||
RefreshCode(true);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCodeExplorerView.RenameMenuItemClick(Sender: TObject);
|
procedure TCodeExplorerView.RenameMenuItemClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if not JumpToSelection then begin
|
if not JumpToSelection then begin
|
||||||
@ -730,7 +692,34 @@ begin
|
|||||||
//DebugLn(['TCodeExplorerView.TreePopupmenuPopup ',CERenameIDEMenuCommand.Visible]);
|
//DebugLn(['TCodeExplorerView.TreePopupmenuPopup ',CERenameIDEMenuCommand.Visible]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCodeExplorerView.OnUserInput(Sender: TObject; Msg: Cardinal);
|
procedure TCodeExplorerView.TreeviewDblClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
JumpToSelection;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCodeExplorerView.TreeviewDeletion(Sender: TObject; Node: TTreeNode);
|
||||||
|
begin
|
||||||
|
if Node.Data<>nil then
|
||||||
|
TObject(Node.Data).Free;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCodeExplorerView.TreeviewKeyDown(Sender: TObject; var Key: Word;
|
||||||
|
Shift: TShiftState);
|
||||||
|
begin
|
||||||
|
if (Key=VK_RETURN) and (Shift=[])
|
||||||
|
or ((Key=FCodeCmd1.ShortcutA.Key1) and (Shift=FCodeCmd1.ShortcutA.Shift1))
|
||||||
|
or ((Key=FCodeCmd1.ShortcutB.Key1) and (Shift=FCodeCmd1.ShortcutB.Shift1))
|
||||||
|
or ((Key=FCodeCmd2.ShortcutA.Key1) and (Shift=FCodeCmd2.ShortcutA.Shift1))
|
||||||
|
or ((Key=FCodeCmd2.ShortcutB.Key1) and (Shift=FCodeCmd2.ShortcutB.Shift1))
|
||||||
|
or ((Key=FCodeCmd3.ShortcutA.Key1) and (Shift=FCodeCmd3.ShortcutA.Shift1))
|
||||||
|
or ((Key=FCodeCmd3.ShortcutB.Key1) and (Shift=FCodeCmd3.ShortcutB.Shift1))
|
||||||
|
then begin
|
||||||
|
JumpToSelection;
|
||||||
|
Key:=0;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCodeExplorerView.UserInputHandler(Sender: TObject; Msg: Cardinal);
|
||||||
begin
|
begin
|
||||||
if CodeExplorerOptions.Refresh=cerOnIdle then
|
if CodeExplorerOptions.Refresh=cerOnIdle then
|
||||||
CheckOnIdle;
|
CheckOnIdle;
|
||||||
@ -2047,7 +2036,7 @@ begin
|
|||||||
//DebugLn(['TCodeExplorerView.ApplyDirectivesFilter ====================="',TheFilter,'"']);
|
//DebugLn(['TCodeExplorerView.ApplyDirectivesFilter ====================="',TheFilter,'"']);
|
||||||
FLastDirectivesFilter:=TheFilter;
|
FLastDirectivesFilter:=TheFilter;
|
||||||
DirectivesTreeView.BeginUpdate;
|
DirectivesTreeView.BeginUpdate;
|
||||||
DirectivesTreeView.Options:=DirectivesTreeView.Options+[tvoAllowMultiselect];
|
//DirectivesTreeView.Options:=DirectivesTreeView.Options+[tvoAllowMultiselect];
|
||||||
ANode:=DirectivesTreeView.Items.GetFirstNode;
|
ANode:=DirectivesTreeView.Items.GetFirstNode;
|
||||||
while ANode<>nil do begin
|
while ANode<>nil do begin
|
||||||
NextNode:=ANode.GetNextSibling;
|
NextNode:=ANode.GetNextSibling;
|
||||||
|
Loading…
Reference in New Issue
Block a user