mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-22 11:19:26 +02:00
IDE: new unit dependencies
git-svn-id: trunk@41782 -
This commit is contained in:
parent
f4fb26c786
commit
24737576de
@ -19,7 +19,7 @@
|
||||
<Description Value="IDE extensions using Codetools."/>
|
||||
<License Value="GPL2"/>
|
||||
<Version Major="1" Minor="1"/>
|
||||
<Files Count="17">
|
||||
<Files Count="16">
|
||||
<Item1>
|
||||
<Filename Value="ppulistdlg.pas"/>
|
||||
<UnitName Value="PPUListDlg"/>
|
||||
@ -85,10 +85,6 @@
|
||||
<Filename Value="newidewnddlg.pas"/>
|
||||
<UnitName Value="newidewnddlg"/>
|
||||
</Item16>
|
||||
<Item17>
|
||||
<Filename Value="codyunitdepwnd.pas"/>
|
||||
<UnitName Value="codyunitdepwnd"/>
|
||||
</Item17>
|
||||
</Files>
|
||||
<LazDoc Paths="doc"/>
|
||||
<i18n>
|
||||
|
@ -10,8 +10,7 @@ uses
|
||||
PPUListDlg, CodyStrConsts, AddAssignMethodDlg, CodyCtrls, CodyFrm,
|
||||
CodyRegistration, DeclareVarDlg, CodyUtils, CodyNodeInfoDlg,
|
||||
CodyCopyDeclaration, AddWithBlockDlg, CodyIdentifiersDlg, CodyMiscOptsFrame,
|
||||
CodyOpts, TemplateIDEDockableWindow, NewIDEWndDlg, CodyUnitDepWnd,
|
||||
LazarusPackageIntf;
|
||||
CodyOpts, TemplateIDEDockableWindow, NewIDEWndDlg, LazarusPackageIntf;
|
||||
|
||||
implementation
|
||||
|
||||
|
@ -35,7 +35,7 @@ uses
|
||||
IDECommands, NewIDEWndDlg,
|
||||
CodeToolManager,
|
||||
CodyStrConsts, CodyUtils, CodyCtrls, CodyOpts,
|
||||
PPUListDlg, CodyUnitDepWnd, AddAssignMethodDlg, AddWithBlockDlg,
|
||||
PPUListDlg, AddAssignMethodDlg, AddWithBlockDlg,
|
||||
CodyNodeInfoDlg, CodyFrm, DeclareVarDlg, CodyCopyDeclaration,
|
||||
CodyIdentifiersDlg, CodyMiscOptsFrame;
|
||||
|
||||
@ -89,7 +89,6 @@ var
|
||||
CmdCatView: TIDECommandCategory;
|
||||
ViewCodyWindowCommand: TIDECommand;
|
||||
{$IFDEF EnableCodyExperiments}
|
||||
ViewCodyUnitDependenciesWindowCommand: TIDECommand;
|
||||
{$ENDIF}
|
||||
begin
|
||||
CodyOptions:=TCodyMiscOptions.Create;
|
||||
@ -182,14 +181,6 @@ begin
|
||||
.Visible:=false
|
||||
{$ENDIF};
|
||||
|
||||
// Unit dependencies
|
||||
{$IFDEF EnableCodyExperiments}
|
||||
ViewCodyUnitDependenciesWindowCommand:=RegisterIDECommand(CmdCatView, 'UnitDependencies',
|
||||
'Cody Unit Dependencies', CleanIDEShortCut, CleanIDEShortCut, nil, @ShowUnitDependenciesClicked);
|
||||
RegisterIDEMenuCommand(itmViewMainWindows, 'UnitDependencies',
|
||||
'Cody Unit Dependencies', nil, nil, ViewCodyUnitDependenciesWindowCommand);
|
||||
{$ENDIF}
|
||||
|
||||
// Components - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
TVIconRes:=LazarusResources.Find('TTreeView');
|
||||
LazarusResources.Add(TCodyTreeView.ClassName,TVIconRes.ValueType,TVIconRes.Value);
|
||||
|
@ -221,10 +221,6 @@ type
|
||||
FFindInFilesMaskHistory: TStringList;
|
||||
FMaxFindHistory: Integer;
|
||||
|
||||
// Unit dependencies
|
||||
FUnitDependenciesHistory: TStringList; // root files
|
||||
FMaxUnitDependenciesHistory: integer;
|
||||
|
||||
// FPC config cache
|
||||
FFPCConfigCache: TFPCConfigCache;
|
||||
|
||||
@ -250,9 +246,8 @@ type
|
||||
function AddToReplaceHistory(const AReplaceStr: String): boolean;
|
||||
function AddToFindInFilesPathHistory(const APathStr: String): boolean;
|
||||
function AddToFindInFilesMaskHistory(const AMaskStr: String): boolean;
|
||||
// Unit dependencies
|
||||
function AddToUnitDependenciesHistory(const ARootFilename: String): boolean;
|
||||
|
||||
// fpc units
|
||||
function LastFPCUnitLinksValid: boolean;
|
||||
function LastFPCUnitLinksNeedsUpdate(const Options, SearchPath,
|
||||
FPCSrcDir: string): boolean;
|
||||
@ -284,11 +279,6 @@ type
|
||||
property FindAutoComplete: boolean read FFindAutoComplete
|
||||
write FFindAutoComplete;
|
||||
|
||||
// Unit dependencies
|
||||
property UnitDependenciesHistory: TStringList read FUnitDependenciesHistory;
|
||||
property MaxUnitDependenciesHistory: integer
|
||||
read FMaxUnitDependenciesHistory write FMaxUnitDependenciesHistory;
|
||||
|
||||
// FPC config cache
|
||||
property FPCConfigCache: TFPCConfigCache read FFPCConfigCache;
|
||||
|
||||
@ -428,10 +418,6 @@ begin
|
||||
FFindInFilesSearchOptions:=LazFindInFileSearchOptionsDefault;
|
||||
FFindOptions:=LazFindSearchOptionsDefault;
|
||||
|
||||
// unit dependencies
|
||||
FUnitDependenciesHistory:=TStringList.Create;
|
||||
FMaxUnitDependenciesHistory:=20;
|
||||
|
||||
// file dialog
|
||||
FFileDialogSettings.HistoryList:=TStringList.Create;
|
||||
FFileDialogSettings.MaxHistory:=20;
|
||||
@ -455,7 +441,6 @@ begin
|
||||
FreeAndNil(FIgnores);
|
||||
FreeAndNil(FHistoryLists);
|
||||
FreeAndNil(FFileDialogSettings.HistoryList);
|
||||
FreeAndNil(FUnitDependenciesHistory);
|
||||
FreeAndNil(FFindHistory);
|
||||
FreeAndNil(FReplaceHistory);
|
||||
FreeAndNil(FFindInFilesPathHistory);
|
||||
@ -527,8 +512,6 @@ begin
|
||||
Include(FFindOptions,FindOption);
|
||||
end;
|
||||
|
||||
// unit dependencies
|
||||
LoadRecentList(XMLConfig,FUnitDependenciesHistory,Path+'UnitDependencies/History/',rltFile);
|
||||
// fpc config cache
|
||||
FFPCConfigCache.LoadFromXMLConfig(XMLConfig,'FPCConfigCache/');
|
||||
// file dialog
|
||||
@ -605,8 +588,6 @@ begin
|
||||
FindOption in LazFindSearchOptionsDefault);
|
||||
end;
|
||||
|
||||
// unit dependencies
|
||||
SaveRecentList(XMLConfig,FUnitDependenciesHistory,Path+'UnitDependencies/History/');
|
||||
// fpc config cache
|
||||
FFPCConfigCache.SaveToXMLConfig(XMLConfig,'FPCConfigCache/');
|
||||
// file dialog
|
||||
@ -719,12 +700,6 @@ begin
|
||||
Result:= AddToRecentList(AMaskStr,FFindInFilesMaskHistory,FMaxFindHistory,rltFile);
|
||||
end;
|
||||
|
||||
function TInputHistories.AddToUnitDependenciesHistory(const ARootFilename: String): boolean;
|
||||
begin
|
||||
Result:=AddToRecentList(ARootFilename,FUnitDependenciesHistory,
|
||||
FMaxUnitDependenciesHistory,rltFile);
|
||||
end;
|
||||
|
||||
function TInputHistories.LastFPCUnitLinksValid: boolean;
|
||||
begin
|
||||
Result:=FFPCConfigCache.Valid(false);
|
||||
|
47
ide/main.pp
47
ide/main.pp
@ -574,11 +574,6 @@ type
|
||||
procedure CheckDirIsInIncludeSearchPath(UnitInfo: TUnitInfo;
|
||||
AllowAddingDependencies: boolean; out DependencyAdded: boolean);
|
||||
|
||||
// unit dependencies events
|
||||
procedure UnitDependenciesViewAccessingSources(Sender: TObject);
|
||||
function UnitDependenciesViewGetProjectMainFilename(Sender: TObject): string;
|
||||
procedure UnitDependenciesViewOpenFile(Sender: TObject; const Filename: string);
|
||||
|
||||
// code explorer events
|
||||
procedure OnCodeExplorerGetDirectivesTree(Sender: TObject;
|
||||
var ADirectivesTool: TDirectivesTool);
|
||||
@ -5908,27 +5903,7 @@ end;
|
||||
|
||||
procedure TMainIDE.DoViewUnitDependencies(Show: boolean);
|
||||
begin
|
||||
if UnitDependenciesView=nil then begin
|
||||
UnitDependenciesView:=TUnitDependenciesView.Create(OwningComponent);
|
||||
UnitDependenciesView.OnAccessingSources:=
|
||||
@UnitDependenciesViewAccessingSources;
|
||||
UnitDependenciesView.OnGetProjectMainFilename:=
|
||||
@UnitDependenciesViewGetProjectMainFilename;
|
||||
UnitDependenciesView.OnOpenFile:=@UnitDependenciesViewOpenFile;
|
||||
end;
|
||||
|
||||
if (Project1 <> nil) and (not UnitDependenciesView.RootValid) then begin
|
||||
if Project1.MainUnitID>=0 then begin
|
||||
UnitDependenciesView.BeginUpdate;
|
||||
UnitDependenciesView.RootFilename:=Project1.MainUnitInfo.Filename;
|
||||
UnitDependenciesView.RootShortFilename:=
|
||||
ExtractFilename(Project1.MainUnitInfo.Filename);
|
||||
UnitDependenciesView.EndUpdate;
|
||||
end;
|
||||
end;
|
||||
|
||||
if Show then
|
||||
IDEWindowCreators.ShowForm(UnitDependenciesView,true);
|
||||
ShowUnitDependencies(true,Show);
|
||||
end;
|
||||
|
||||
procedure TMainIDE.DoViewJumpHistory(Show: boolean);
|
||||
@ -6101,7 +6076,7 @@ begin
|
||||
else if ItIs(NonModalIDEWindowNames[nmiwUnitDependenciesName]) then
|
||||
begin
|
||||
DoViewUnitDependencies(false);
|
||||
AForm:=UnitDependenciesView;
|
||||
AForm:=UnitDependenciesWindow;
|
||||
end
|
||||
else if ItIs(NonModalIDEWindowNames[nmiwCodeExplorerName]) then
|
||||
begin
|
||||
@ -9660,24 +9635,6 @@ end;
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
procedure TMainIDE.UnitDependenciesViewAccessingSources(Sender: TObject);
|
||||
begin
|
||||
SaveSourceEditorChangesToCodeCache(nil);
|
||||
end;
|
||||
|
||||
function TMainIDE.UnitDependenciesViewGetProjectMainFilename(Sender: TObject): string;
|
||||
begin
|
||||
if (Project1<>nil) and (Project1.MainUnitID>=0) then
|
||||
Result:=Project1.MainUnitInfo.Filename
|
||||
else
|
||||
Result:='';
|
||||
end;
|
||||
|
||||
procedure TMainIDE.UnitDependenciesViewOpenFile(Sender: TObject; const Filename: string);
|
||||
begin
|
||||
DoOpenEditorFile(Filename,-1,-1,[]);
|
||||
end;
|
||||
|
||||
procedure TMainIDE.OnCodeExplorerGetDirectivesTree(Sender: TObject;
|
||||
var ADirectivesTool: TDirectivesTool);
|
||||
var
|
||||
|
@ -678,6 +678,7 @@ begin
|
||||
CreateMenuItem(ParentMI,itmViewCodeExplorer,'itmViewCodeExplorer',lisMenuViewCodeExplorer, 'menu_view_code_explorer');
|
||||
CreateMenuItem(ParentMI,itmViewFPDocEditor,'itmViewFPDocEditor',lisFPDocEditor);
|
||||
CreateMenuItem(ParentMI,itmViewCodeBrowser,'itmViewCodeBrowser',lisMenuViewCodeBrowser, 'menu_view_code_browser');
|
||||
CreateMenuItem(ParentMI,itmSourceUnitDependencies,'itmSourceUnitDependencies',lisMenuViewUnitDependencies);
|
||||
CreateMenuItem(ParentMI,itmViewRestrictionBrowser,'itmViewRestrictionBrowser',lisMenuViewRestrictionBrowser, 'menu_view_rectriction_browser');
|
||||
CreateMenuItem(ParentMI,itmViewComponents,'itmViewComponents',lisMenuViewComponents);
|
||||
CreateMenuItem(ParentMI,itmJumpHistory,'itmJumpHistory',lisMenuViewJumpHistory);
|
||||
@ -798,7 +799,6 @@ begin
|
||||
CreateMenuSeparatorSection(mnuSource,itmSourceTools,'itmSourceTools');
|
||||
ParentMI:=itmSourceTools;
|
||||
CreateMenuItem(ParentMI,itmSourceUnitInfo,'itmViewUnitInfo',lisMenuViewUnitInfo, 'menu_view_unit_info');
|
||||
CreateMenuItem(ParentMI,itmSourceUnitDependencies,'itmSourceUnitDependencies',lisMenuViewUnitDependencies);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
@ -1,92 +1,412 @@
|
||||
object UnitDependenciesView: TUnitDependenciesView
|
||||
Left = 560
|
||||
Height = 300
|
||||
Top = 359
|
||||
Width = 400
|
||||
ActiveControl = UnitHistoryList
|
||||
Caption = 'UnitDependenciesView'
|
||||
ClientHeight = 300
|
||||
ClientWidth = 400
|
||||
KeyPreview = True
|
||||
object UnitDependenciesWindow: TUnitDependenciesWindow
|
||||
Left = 497
|
||||
Height = 440
|
||||
Top = 150
|
||||
Width = 620
|
||||
Caption = 'UnitDependenciesWindow'
|
||||
ClientHeight = 440
|
||||
ClientWidth = 620
|
||||
OnCreate = FormCreate
|
||||
OnDestroy = FormDestroy
|
||||
Position = poScreenCenter
|
||||
LCLVersion = '0.9.29'
|
||||
object ToolBar: TToolBar
|
||||
LCLVersion = '1.1'
|
||||
object MainPageControl: TPageControl
|
||||
Left = 0
|
||||
Height = 48
|
||||
Height = 414
|
||||
Top = 0
|
||||
Width = 400
|
||||
ButtonHeight = 46
|
||||
ButtonWidth = 47
|
||||
Caption = 'ToolBar'
|
||||
ParentShowHint = False
|
||||
ShowCaptions = True
|
||||
ShowHint = True
|
||||
Width = 620
|
||||
ActivePage = UnitsTabSheet
|
||||
Align = alClient
|
||||
TabIndex = 0
|
||||
TabOrder = 0
|
||||
object ShowProjectButton: TToolButton
|
||||
Left = 219
|
||||
Top = 2
|
||||
Caption = 'ShowProjectButton'
|
||||
OnClick = ShowProjectButtonClick
|
||||
object UnitsTabSheet: TTabSheet
|
||||
Caption = 'UnitsTabSheet'
|
||||
ClientHeight = 375
|
||||
ClientWidth = 614
|
||||
object ScopePanel: TPanel
|
||||
Left = 0
|
||||
Height = 47
|
||||
Top = 0
|
||||
Width = 614
|
||||
Align = alTop
|
||||
AutoSize = True
|
||||
ClientHeight = 47
|
||||
ClientWidth = 614
|
||||
TabOrder = 0
|
||||
object SearchCustomFilesCheckBox: TCheckBox
|
||||
AnchorSideLeft.Control = ScopePanel
|
||||
AnchorSideTop.Control = SearchCustomFilesComboBox
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 3
|
||||
Height = 18
|
||||
Top = 4
|
||||
Width = 201
|
||||
BorderSpacing.Around = 2
|
||||
Caption = 'SearchCustomFilesCheckBox'
|
||||
OnChange = SearchCustomFilesCheckBoxChange
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
TabOrder = 0
|
||||
end
|
||||
object SearchCustomFilesBrowseButton: TButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = SearchCustomFilesComboBox
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = ScopePanel
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 543
|
||||
Height = 20
|
||||
Top = 3
|
||||
Width = 70
|
||||
Anchors = [akTop, akRight]
|
||||
AutoSize = True
|
||||
Caption = 'Browse'
|
||||
OnClick = SearchCustomFilesBrowseButtonClick
|
||||
TabOrder = 1
|
||||
end
|
||||
object SearchCustomFilesComboBox: TComboBox
|
||||
AnchorSideLeft.Control = SearchCustomFilesCheckBox
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = ScopePanel
|
||||
AnchorSideRight.Control = SearchCustomFilesBrowseButton
|
||||
Left = 206
|
||||
Height = 21
|
||||
Top = 3
|
||||
Width = 335
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 2
|
||||
ItemHeight = 0
|
||||
OnChange = SearchCustomFilesComboBoxChange
|
||||
TabOrder = 2
|
||||
Text = 'SearchCustomFilesComboBox'
|
||||
end
|
||||
object SearchPkgsCheckBox: TCheckBox
|
||||
AnchorSideLeft.Control = ScopePanel
|
||||
AnchorSideTop.Control = SearchCustomFilesComboBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 3
|
||||
Height = 18
|
||||
Top = 26
|
||||
Width = 153
|
||||
BorderSpacing.Around = 2
|
||||
Caption = 'SearchPkgsCheckBox'
|
||||
OnChange = SearchPkgsCheckBoxChange
|
||||
TabOrder = 3
|
||||
end
|
||||
object SearchSrcEditCheckBox: TCheckBox
|
||||
AnchorSideLeft.Control = SearchPkgsCheckBox
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = SearchPkgsCheckBox
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 173
|
||||
Height = 18
|
||||
Top = 26
|
||||
Width = 167
|
||||
BorderSpacing.Left = 15
|
||||
BorderSpacing.Around = 2
|
||||
Caption = 'SearchSrcEditCheckBox'
|
||||
Checked = True
|
||||
OnChange = SearchSrcEditCheckBoxChange
|
||||
State = cbChecked
|
||||
TabOrder = 4
|
||||
end
|
||||
end
|
||||
object AllUnitsGroupBox: TGroupBox
|
||||
Left = 0
|
||||
Height = 328
|
||||
Top = 47
|
||||
Width = 248
|
||||
Align = alLeft
|
||||
Caption = 'AllUnitsGroupBox'
|
||||
ClientHeight = 306
|
||||
ClientWidth = 240
|
||||
TabOrder = 1
|
||||
object AllUnitsShowGroupNodesSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = AllUnitsFilterEdit
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = AllUnitsShowDirsSpeedButton
|
||||
Left = 194
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
AllowAllUp = True
|
||||
Anchors = [akTop, akRight]
|
||||
GroupIndex = 12
|
||||
OnClick = AllUnitsShowGroupNodesSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object AllUnitsShowDirsSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = AllUnitsFilterEdit
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = AllUnitsGroupBox
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 217
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
AllowAllUp = True
|
||||
Anchors = [akTop, akRight]
|
||||
GroupIndex = 13
|
||||
OnClick = AllUnitsShowDirsSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object AllUnitsFilterEdit: TEdit
|
||||
AnchorSideLeft.Control = AllUnitsGroupBox
|
||||
AnchorSideTop.Control = AllUnitsGroupBox
|
||||
AnchorSideRight.Control = AllUnitsShowGroupNodesSpeedButton
|
||||
Left = 0
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 194
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
OnChange = AllUnitsFilterEditChange
|
||||
OnEnter = AllUnitsFilterEditEnter
|
||||
OnExit = AllUnitsFilterEditExit
|
||||
TabOrder = 0
|
||||
Text = 'AllUnitsFilterEdit'
|
||||
end
|
||||
object AllUnitsSearchNextSpeedButton: TSpeedButton
|
||||
AnchorSideTop.Control = AllUnitsSearchEdit
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = AllUnitsSearchPrevSpeedButton
|
||||
Left = 194
|
||||
Height = 22
|
||||
Top = 284
|
||||
Width = 23
|
||||
Anchors = [akTop, akRight]
|
||||
OnClick = AllUnitsSearchNextSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object AllUnitsSearchPrevSpeedButton: TSpeedButton
|
||||
AnchorSideTop.Control = AllUnitsSearchEdit
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = AllUnitsGroupBox
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 217
|
||||
Height = 22
|
||||
Top = 284
|
||||
Width = 23
|
||||
Anchors = [akTop, akRight]
|
||||
OnClick = AllUnitsSearchPrevSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object AllUnitsTreeView: TTreeView
|
||||
AnchorSideLeft.Control = AllUnitsGroupBox
|
||||
AnchorSideTop.Control = AllUnitsFilterEdit
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideRight.Control = AllUnitsGroupBox
|
||||
AnchorSideRight.Side = asrBottom
|
||||
AnchorSideBottom.Control = AllUnitsSearchEdit
|
||||
Left = 0
|
||||
Height = 262
|
||||
Top = 22
|
||||
Width = 240
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
DefaultItemHeight = 18
|
||||
HotTrack = True
|
||||
MultiSelect = True
|
||||
ParentShowHint = False
|
||||
PopupMenu = UnitsTVPopupMenu
|
||||
ReadOnly = True
|
||||
RightClickSelect = True
|
||||
ShowHint = True
|
||||
ShowRoot = False
|
||||
TabOrder = 1
|
||||
OnAdvancedCustomDrawItem = AllUnitsTreeViewAdvancedCustomDrawItem
|
||||
OnMouseDown = UnitsTreeViewMouseDown
|
||||
OnSelectionChanged = AllUnitsTreeViewSelectionChanged
|
||||
OnShowHint = UnitsTreeViewShowHint
|
||||
Options = [tvoAllowMultiselect, tvoAutoItemHeight, tvoHideSelection, tvoHotTrack, tvoKeepCollapsedNodes, tvoReadOnly, tvoRightClickSelect, tvoShowButtons, tvoShowLines, tvoToolTips, tvoThemedDraw]
|
||||
end
|
||||
object AllUnitsSearchEdit: TEdit
|
||||
AnchorSideLeft.Control = AllUnitsGroupBox
|
||||
AnchorSideRight.Control = AllUnitsSearchNextSpeedButton
|
||||
AnchorSideBottom.Control = AllUnitsGroupBox
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 22
|
||||
Top = 284
|
||||
Width = 194
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
OnChange = AllUnitsSearchEditChange
|
||||
OnEnter = AllUnitsSearchEditEnter
|
||||
OnExit = AllUnitsSearchEditExit
|
||||
TabOrder = 2
|
||||
Text = 'AllUnitsSearchEdit'
|
||||
end
|
||||
end
|
||||
object UnitsSplitter: TSplitter
|
||||
Left = 248
|
||||
Height = 328
|
||||
Top = 47
|
||||
Width = 5
|
||||
end
|
||||
object SelectedUnitsGroupBox: TGroupBox
|
||||
Left = 253
|
||||
Height = 328
|
||||
Top = 47
|
||||
Width = 361
|
||||
Align = alClient
|
||||
Caption = 'SelectedUnitsGroupBox'
|
||||
ClientHeight = 306
|
||||
ClientWidth = 353
|
||||
TabOrder = 3
|
||||
object SelUnitsSearchNextSpeedButton: TSpeedButton
|
||||
AnchorSideTop.Control = SelUnitsSearchEdit
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = SelUnitsSearchPrevSpeedButton
|
||||
Left = 307
|
||||
Height = 22
|
||||
Top = 284
|
||||
Width = 23
|
||||
Anchors = [akTop, akRight]
|
||||
OnClick = SelUnitsSearchNextSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object SelUnitsSearchPrevSpeedButton: TSpeedButton
|
||||
AnchorSideTop.Control = SelUnitsSearchEdit
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = SelectedUnitsGroupBox
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 330
|
||||
Height = 22
|
||||
Top = 284
|
||||
Width = 23
|
||||
Anchors = [akTop, akRight]
|
||||
OnClick = SelUnitsSearchPrevSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object SelUnitsSearchEdit: TEdit
|
||||
AnchorSideLeft.Control = SelectedUnitsGroupBox
|
||||
AnchorSideRight.Control = SelUnitsSearchNextSpeedButton
|
||||
AnchorSideBottom.Control = SelectedUnitsGroupBox
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 22
|
||||
Top = 284
|
||||
Width = 307
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
OnChange = SelUnitsSearchEditChange
|
||||
OnEnter = SelUnitsSearchEditEnter
|
||||
OnExit = SelUnitsSearchEditExit
|
||||
TabOrder = 0
|
||||
Text = 'SelUnitsSearchEdit'
|
||||
end
|
||||
object SelUnitsTreeView: TTreeView
|
||||
AnchorSideLeft.Control = SelectedUnitsGroupBox
|
||||
AnchorSideTop.Control = SelectedUnitsGroupBox
|
||||
AnchorSideRight.Control = SelectedUnitsGroupBox
|
||||
AnchorSideRight.Side = asrBottom
|
||||
AnchorSideBottom.Control = SelUnitsSearchEdit
|
||||
Left = 0
|
||||
Height = 284
|
||||
Top = 0
|
||||
Width = 353
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
DefaultItemHeight = 18
|
||||
HotTrack = True
|
||||
ParentShowHint = False
|
||||
PopupMenu = UnitsTVPopupMenu
|
||||
ReadOnly = True
|
||||
RightClickSelect = True
|
||||
ShowHint = True
|
||||
ShowRoot = False
|
||||
TabOrder = 1
|
||||
OnExpanding = SelUnitsTreeViewExpanding
|
||||
OnMouseDown = UnitsTreeViewMouseDown
|
||||
OnShowHint = UnitsTreeViewShowHint
|
||||
Options = [tvoAutoItemHeight, tvoHideSelection, tvoHotTrack, tvoKeepCollapsedNodes, tvoReadOnly, tvoRightClickSelect, tvoShowButtons, tvoShowLines, tvoToolTips, tvoThemedDraw]
|
||||
end
|
||||
end
|
||||
end
|
||||
object SelectUnitButton: TToolButton
|
||||
Left = 1
|
||||
Top = 2
|
||||
Caption = 'SelectUnitButton'
|
||||
OnClick = SelectUnitButtonClick
|
||||
object GroupsTabSheet: TTabSheet
|
||||
Caption = 'GroupsTabSheet'
|
||||
ClientHeight = 378
|
||||
ClientWidth = 616
|
||||
object GroupsSplitter: TSplitter
|
||||
Cursor = crVSplit
|
||||
Left = 0
|
||||
Height = 5
|
||||
Top = 0
|
||||
Width = 665
|
||||
Align = alTop
|
||||
ResizeAnchor = akTop
|
||||
end
|
||||
end
|
||||
object RefreshButton: TToolButton
|
||||
Left = 119
|
||||
Top = 2
|
||||
end
|
||||
object StatusPanel: TPanel
|
||||
Left = 0
|
||||
Height = 26
|
||||
Top = 414
|
||||
Width = 620
|
||||
Align = alBottom
|
||||
AutoSize = True
|
||||
ClientHeight = 26
|
||||
ClientWidth = 620
|
||||
TabOrder = 1
|
||||
object ProgressBar1: TProgressBar
|
||||
AnchorSideLeft.Control = StatsLabel
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = RefreshButton
|
||||
AnchorSideTop.Side = asrCenter
|
||||
AnchorSideRight.Control = RefreshButton
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 77
|
||||
Height = 20
|
||||
Top = 3
|
||||
Width = 425
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
TabOrder = 0
|
||||
end
|
||||
object RefreshButton: TButton
|
||||
Left = 504
|
||||
Height = 20
|
||||
Top = 3
|
||||
Width = 113
|
||||
Align = alRight
|
||||
AutoSize = True
|
||||
BorderSpacing.Around = 2
|
||||
Caption = 'RefreshButton'
|
||||
OnClick = RefreshButtonClick
|
||||
TabOrder = 1
|
||||
end
|
||||
object StatsLabel: TLabel
|
||||
AnchorSideLeft.Control = StatusPanel
|
||||
AnchorSideTop.Control = RefreshButton
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 7
|
||||
Height = 16
|
||||
Top = 5
|
||||
Width = 64
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'StatsLabel'
|
||||
ParentColor = False
|
||||
end
|
||||
end
|
||||
object UnitHistoryList: TComboBox
|
||||
Left = 6
|
||||
Height = 27
|
||||
Top = 54
|
||||
Width = 388
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 0
|
||||
OnEditingDone = UnitHistoryListEditingDone
|
||||
TabOrder = 1
|
||||
Text = 'UnitHistoryList'
|
||||
end
|
||||
object CloseButton: TBitBtn
|
||||
AnchorSideRight.Control = Owner
|
||||
AnchorSideRight.Side = asrBottom
|
||||
AnchorSideBottom.Control = Owner
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 309
|
||||
Height = 30
|
||||
Top = 264
|
||||
Width = 85
|
||||
Anchors = [akRight, akBottom]
|
||||
AutoSize = True
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Close'
|
||||
Constraints.MinWidth = 75
|
||||
Kind = bkClose
|
||||
NumGlyphs = 0
|
||||
TabOrder = 2
|
||||
end
|
||||
object UnitTreeView: TTreeView
|
||||
AnchorSideBottom.Control = CloseButton
|
||||
Left = 6
|
||||
Height = 171
|
||||
Top = 87
|
||||
Width = 388
|
||||
Align = alTop
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
DefaultItemHeight = 19
|
||||
ReadOnly = True
|
||||
TabOrder = 3
|
||||
OnAdvancedCustomDrawItem = UnitTreeViewAdvancedCustomDrawItem
|
||||
OnCollapsing = UnitTreeViewCollapsing
|
||||
OnExpanding = UnitTreeViewExpanding
|
||||
OnMouseDown = UnitTreeViewMouseDown
|
||||
Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw]
|
||||
object UnitsTVPopupMenu: TPopupMenu
|
||||
OnPopup = UnitsTVPopupMenuPopup
|
||||
left = 120
|
||||
top = 193
|
||||
object UnitsTVCopyFilenameMenuItem: TMenuItem
|
||||
Caption = 'UnitsTVCopyFilenameMenuItem'
|
||||
OnClick = UnitsTVCopyFilenameMenuItemClick
|
||||
end
|
||||
object UnitsTVExpandAllMenuItem: TMenuItem
|
||||
Caption = 'UnitsTVExpandAllMenuItem'
|
||||
OnClick = UnitsTVExpandAllMenuItemClick
|
||||
end
|
||||
object UnitsTVCollapseAllMenuItem: TMenuItem
|
||||
Caption = 'UnitsTVCollapseAllMenuItem'
|
||||
OnClick = UnitsTVCollapseAllMenuItemClick
|
||||
end
|
||||
end
|
||||
end
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user