added help for various dialogs

git-svn-id: trunk@9219 -
This commit is contained in:
mattias 2006-05-01 14:47:17 +00:00
parent 6fe9786d9c
commit 9b834fa88d
6 changed files with 148 additions and 70 deletions

View File

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<CONFIG Name="IDE windows and dialogs" Path="IDE_Window:_" ChildCount="6">
<CONFIG Name="IDE windows and dialogs" Path="IDE_Window:_" ChildCount="23">
<Node1 Name="TObjectInspector" Path="Object_Inspector" HasHelp="True"/>
<Node2 Name="TfrmCompilerOptions" Path="Compiler_Options" HasHelp="True" ChildCount="1">
<Node1 Name="MainNotebook" ChildCount="7">
@ -43,4 +43,27 @@
</Node1>
</Node5>
<Node6 Name="TCodeTemplateDialog" Path="Code_Templates" HasHelp="True"/>
<Node7 Name="TCleanDirectoryDialog" Path="Clean_Directory" HasHelp="True"/>
<Node8 Name="TCondForm" Path="Conditional_Defines" HasHelp="True"/>
<Node9 Name="TSortSelectionDialog" Path="Sort_selection" HasHelp="True"/>
<Node10 Name="TCharacterMapDialog" Path="Character_Map" HasHelp="True"/>
<Node11 Name="TExtractProcDialog" Path="Extract_Procedure" HasHelp="True"/>
<Node12 Name="TLazFindReplaceDialog" Path="Find" HasHelp="True"/>
<Node13 Name="TLazFindInFilesDialog" Path="Find_in_files" HasHelp="True"/>
<Node14 Name="TFindRenameIdentifierDialog" Path="Find_or_Rename_identifier" HasHelp="True"/>
<Node15 Name="TCodeExplorerView" Path="Code_Explorer" HasHelp="True"/>
<Node16 Name="TLazDocForm" Path="LazDoc_Editor" HasHelp="True" ChildCount="1">
<Node1 Name="PageControl" Path="PageControl" ChildCount="1">
<Node1 Name="ShortTabSheet" Path="ShortTabSheet" ChildCount="1">
<Node1 Name="ShortEdit" Path="LazDoc_Editor" HasHelp="True"/>
</Node1>
</Node1>
</Node16>
<Node17 Name="TViewUnitDialog" Path="View_project_forms_units" HasHelp="True"/>
<Node18 Name="TUnitDependenciesView" Path="Unit_dependencies" HasHelp="True"/>
<Node19 Name="TUnitInfoDialog" Path="Unit_info" HasHelp="True"/>
<Node20 Name="TCodeToolsDefinesDialog" Path="Codetools_Directory_Values" HasHelp="True"/>
<Node21 Name="TAnchorDesigner" Path="Anchor_Editor" HasHelp="True"/>
<Node22 Name="TMessagesView" Path="Messages" HasHelp="True"/>
<Node23 Name="TSearchResultsView" Path="Search_Results" HasHelp="True"/>
</CONFIG>

View File

@ -26,28 +26,48 @@ object CleanDirectoryDialog: TCleanDirectoryDialog
Top = 6
Width = 419
object DirCombobox: TComboBox
Align = alTop
Anchors = [akTop, akLeft, akRight]
AutoCompleteText = [cbactSearchAscending]
BorderSpacing.Around = 6
MaxLength = 0
ParentCtl3D = False
TabOrder = 0
Text = 'DirCombobox'
Left = 6
AnchorSideRight.Control = DirBrowseButton
Left = 7
Height = 21
Top = 6
Width = 403
Width = 374
end
object SubDirsCheckbox: TCheckBox
Align = alTop
BorderSpacing.Around = 6
Caption = 'Clean sub directories'
TabOrder = 1
AnchorSideTop.Control = DirCombobox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 24
Top = 33
Width = 403
end
object DirBrowseButton: TButton
Anchors = [akTop, akRight]
BorderSpacing.Right = 5
BorderSpacing.InnerBorder = 2
Caption = '...'
OnClick = DirBrowseButtonClick
TabOrder = 2
AnchorSideLeft.Control = DirCombobox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = DirCombobox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = DirGroupbox
AnchorSideRight.Side = asrBottom
Left = 387
Height = 21
Top = 6
Width = 23
end
end
object RemoveGroupbox: TGroupBox
Align = alTop

View File

@ -10,46 +10,54 @@ LazarusResources.Add('TCleanDirectoryDialog','FORMDATA',[
+'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#9'Directory'#12'Clien'
+'tHeight'#2'?'#11'ClientWidth'#3#159#1#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'L'
+'eft'#2#6#6'Height'#2'P'#3'Top'#2#6#5'Width'#3#163#1#0#9'TComboBox'#11'DirCo'
+'mbobox'#5'Align'#7#5'alTop'#16'AutoCompleteText'#11#20'cbactSearchAscending'
+#0#20'BorderSpacing.Around'#2#6#9'MaxLength'#2#0#11'ParentCtl3D'#8#8'TabOrde'
+'r'#2#0#4'Text'#6#11'DirCombobox'#4'Left'#2#6#6'Height'#2#21#3'Top'#2#6#5'Wi'
+'dth'#3#147#1#0#0#9'TCheckBox'#15'SubDirsCheckbox'#5'Align'#7#5'alTop'#20'Bo'
+'rderSpacing.Around'#2#6#7'Caption'#6#21'Clean sub directories'#8'TabOrder'#2
+#1#4'Left'#2#6#6'Height'#2#24#3'Top'#2'!'#5'Width'#3#147#1#0#0#0#9'TGroupBox'
+#14'RemoveGroupbox'#5'Align'#7#5'alTop'#8'AutoSize'#9#20'BorderSpacing.Aroun'
+'d'#2#6#7'Caption'#6#29'Remove files matching filter:'#12'ClientHeight'#2'?'
+#11'ClientWidth'#3#159#1#11'ParentCtl3D'#8#8'TabOrder'#2#1#4'Left'#2#6#6'Hei'
+'ght'#2'P'#3'Top'#2'\'#5'Width'#3#163#1#0#9'TComboBox'#14'RemoveCombobox'#5
+'Align'#7#5'alTop'#16'AutoCompleteText'#11#20'cbactSearchAscending'#0#20'Bor'
+'derSpacing.Around'#2#6#9'MaxLength'#2#0#11'ParentCtl3D'#8#8'TabOrder'#2#0#4
+'Text'#6#14'RemoveCombobox'#4'Left'#2#6#6'Height'#2#21#3'Top'#2#6#5'Width'#3
+#147#1#0#0#9'TCheckBox'#26'SimpleSyntaxRemoveCheckbox'#5'Align'#7#5'alTop'#20
+'BorderSpacing.Around'#2#6#7'Caption'#6'$Simple syntax (e.g. * instead of .*'
+')'#8'TabOrder'#2#1#4'Left'#2#6#6'Height'#2#24#3'Top'#2'!'#5'Width'#3#147#1#0
+#0#0#9'TGroupBox'#12'KeepGroupbox'#5'Align'#7#5'alTop'#8'AutoSize'#9#20'Bord'
+'erSpacing.Around'#2#6#7'Caption'#6#27'Keep files matching filter:'#12'Clien'
+'tHeight'#2']'#11'ClientWidth'#3#159#1#11'ParentCtl3D'#8#8'TabOrder'#2#2#4'L'
+'eft'#2#6#6'Height'#2'n'#3'Top'#3#178#0#5'Width'#3#163#1#0#9'TComboBox'#12'K'
+'eepCombobox'#5'Align'#7#5'alTop'#16'AutoCompleteText'#11#20'cbactSearchAsce'
+'nding'#0#20'BorderSpacing.Around'#2#6#9'MaxLength'#2#0#11'ParentCtl3D'#8#8
+'TabOrder'#2#0#4'Text'#6#12'KeepCombobox'#4'Left'#2#6#6'Height'#2#21#3'Top'#2
+#6#5'Width'#3#147#1#0#0#9'TCheckBox'#24'SimpleSyntaxKeepCheckbox'#5'Align'#7
+#5'alTop'#20'BorderSpacing.Around'#2#6#7'Caption'#6'$Simple syntax (e.g. * i'
+'nstead of .*)'#8'TabOrder'#2#1#4'Left'#2#6#6'Height'#2#24#3'Top'#2'!'#5'Wid'
+'th'#3#147#1#0#0#9'TCheckBox'#21'KeepTextFilesCheckbox'#5'Align'#7#5'alTop'
+#20'BorderSpacing.Around'#2#6#7'Caption'#6#15'Keep Text Files'#8'TabOrder'#2
+#2#4'Left'#2#6#6'Height'#2#24#3'Top'#2'?'#5'Width'#3#147#1#0#0#0#7'TBitBtn'#8
+'OkButton'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpa'
+'cing.Around'#2#6#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#3'&OK'#7'De'
+'fault'#9#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyphs'#2#0#7'OnClick'#7
+#13'OkButtonClick'#8'TabOrder'#2#3#23'AnchorSideRight.Control'#7#5'Owner'#20
+'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.Control'#7#5'Owner'
+#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3'v'#1#6'Height'#2#28#3'To'
+'p'#3'*'#1#5'Width'#2'3'#0#0#7'TBitBtn'#12'CancelButton'#7'Anchors'#11#7'akR'
+'ight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#25'BorderSpa'
+'cing.InnerBorder'#2#2#6'Cancel'#9#7'Caption'#6#6'Cancel'#4'Kind'#7#8'bkCanc'
+'el'#11'ModalResult'#2#2#9'NumGlyphs'#2#0#8'TabOrder'#2#4#23'AnchorSideRight'
+'.Control'#7#8'OkButton'#24'AnchorSideBottom.Control'#7#5'Owner'#21'AnchorSi'
+'deBottom.Side'#7#9'asrBottom'#4'Left'#3''''#1#6'Height'#2#28#3'Top'#3'*'#1#5
+'Width'#2'I'#0#0#0
+'mbobox'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#16'AutoCompleteText'
+#11#20'cbactSearchAscending'#0#20'BorderSpacing.Around'#2#6#9'MaxLength'#2#0
+#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Text'#6#11'DirCombobox'#23'AnchorSideRi'
+'ght.Control'#7#15'DirBrowseButton'#4'Left'#2#7#6'Height'#2#21#3'Top'#2#6#5
+'Width'#3'v'#1#0#0#9'TCheckBox'#15'SubDirsCheckbox'#20'BorderSpacing.Around'
+#2#6#7'Caption'#6#21'Clean sub directories'#8'TabOrder'#2#1#21'AnchorSideTop'
+'.Control'#7#11'DirCombobox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2
+#6#6'Height'#2#24#3'Top'#2'!'#5'Width'#3#147#1#0#0#7'TButton'#15'DirBrowseBu'
+'tton'#7'Anchors'#11#5'akTop'#7'akRight'#0#19'BorderSpacing.Right'#2#5#25'Bo'
+'rderSpacing.InnerBorder'#2#2#7'Caption'#6#3'...'#7'OnClick'#7#20'DirBrowseB'
+'uttonClick'#8'TabOrder'#2#2#22'AnchorSideLeft.Control'#7#11'DirCombobox'#19
+'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#11'DirCombo'
+'box'#18'AnchorSideTop.Side'#7#9'asrCenter'#23'AnchorSideRight.Control'#7#11
+'DirGroupbox'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#3#131#1#6'Heig'
+'ht'#2#21#3'Top'#2#6#5'Width'#2#23#0#0#0#9'TGroupBox'#14'RemoveGroupbox'#5'A'
+'lign'#7#5'alTop'#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#29
+'Remove files matching filter:'#12'ClientHeight'#2'?'#11'ClientWidth'#3#159#1
+#11'ParentCtl3D'#8#8'TabOrder'#2#1#4'Left'#2#6#6'Height'#2'P'#3'Top'#2'\'#5
+'Width'#3#163#1#0#9'TComboBox'#14'RemoveCombobox'#5'Align'#7#5'alTop'#16'Aut'
+'oCompleteText'#11#20'cbactSearchAscending'#0#20'BorderSpacing.Around'#2#6#9
+'MaxLength'#2#0#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Text'#6#14'RemoveCombobo'
+'x'#4'Left'#2#6#6'Height'#2#21#3'Top'#2#6#5'Width'#3#147#1#0#0#9'TCheckBox'
+#26'SimpleSyntaxRemoveCheckbox'#5'Align'#7#5'alTop'#20'BorderSpacing.Around'
+#2#6#7'Caption'#6'$Simple syntax (e.g. * instead of .*)'#8'TabOrder'#2#1#4'L'
+'eft'#2#6#6'Height'#2#24#3'Top'#2'!'#5'Width'#3#147#1#0#0#0#9'TGroupBox'#12
+'KeepGroupbox'#5'Align'#7#5'alTop'#8'AutoSize'#9#20'BorderSpacing.Around'#2#6
+#7'Caption'#6#27'Keep files matching filter:'#12'ClientHeight'#2']'#11'Clien'
+'tWidth'#3#159#1#11'ParentCtl3D'#8#8'TabOrder'#2#2#4'Left'#2#6#6'Height'#2'n'
+#3'Top'#3#178#0#5'Width'#3#163#1#0#9'TComboBox'#12'KeepCombobox'#5'Align'#7#5
+'alTop'#16'AutoCompleteText'#11#20'cbactSearchAscending'#0#20'BorderSpacing.'
+'Around'#2#6#9'MaxLength'#2#0#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Text'#6#12
+'KeepCombobox'#4'Left'#2#6#6'Height'#2#21#3'Top'#2#6#5'Width'#3#147#1#0#0#9
+'TCheckBox'#24'SimpleSyntaxKeepCheckbox'#5'Align'#7#5'alTop'#20'BorderSpacin'
+'g.Around'#2#6#7'Caption'#6'$Simple syntax (e.g. * instead of .*)'#8'TabOrde'
+'r'#2#1#4'Left'#2#6#6'Height'#2#24#3'Top'#2'!'#5'Width'#3#147#1#0#0#9'TCheck'
+'Box'#21'KeepTextFilesCheckbox'#5'Align'#7#5'alTop'#20'BorderSpacing.Around'
+#2#6#7'Caption'#6#15'Keep Text Files'#8'TabOrder'#2#2#4'Left'#2#6#6'Height'#2
+#24#3'Top'#2'?'#5'Width'#3#147#1#0#0#0#7'TBitBtn'#8'OkButton'#7'Anchors'#11#7
+'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#25'Border'
+'Spacing.InnerBorder'#2#2#7'Caption'#6#3'&OK'#7'Default'#9#4'Kind'#7#4'bkOK'
+#11'ModalResult'#2#1#9'NumGlyphs'#2#0#7'OnClick'#7#13'OkButtonClick'#8'TabOr'
+'der'#2#3#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9
+'asrBottom'#24'AnchorSideBottom.Control'#7#5'Owner'#21'AnchorSideBottom.Side'
+#7#9'asrBottom'#4'Left'#3'v'#1#6'Height'#2#28#3'Top'#3'*'#1#5'Width'#2'3'#0#0
+#7'TBitBtn'#12'CancelButton'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'AutoSi'
+'ze'#9#20'BorderSpacing.Around'#2#6#25'BorderSpacing.InnerBorder'#2#2#6'Canc'
+'el'#9#7'Caption'#6#6'Cancel'#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9'Nu'
+'mGlyphs'#2#0#8'TabOrder'#2#4#23'AnchorSideRight.Control'#7#8'OkButton'#24'A'
+'nchorSideBottom.Control'#7#5'Owner'#21'AnchorSideBottom.Side'#7#9'asrBottom'
+#4'Left'#3''''#1#6'Height'#2#28#3'Top'#3'*'#1#5'Width'#2'I'#0#0#0
]);

View File

@ -31,14 +31,15 @@ interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, Buttons,
StdCtrls, FileUtil, LCLProc, Laz_XMLCfg,
SynRegExpr, LazarusIDEStrConsts, LazConf, IDEProcs, TransferMacros;
StdCtrls, FileUtil, LCLProc, Laz_XMLCfg, SynRegExpr,
LazarusIDEStrConsts, LazConf, IDEProcs, TransferMacros, InputHistory;
type
{ TCleanDirectoryDialog }
TCleanDirectoryDialog = class(TForm)
DirBrowseButton: TButton;
OkButton: TBitBtn;
CancelButton: TBitBtn;
KeepTextFilesCheckbox: TCHECKBOX;
@ -52,6 +53,7 @@ type
DirGroupbox: TGROUPBOX;
RemoveGroupbox: TGROUPBOX;
procedure CleanDirectoryDialogCreate(Sender: TObject);
procedure DirBrowseButtonClick(Sender: TObject);
procedure OkButtonClick(Sender: TObject);
private
FMacros: TTransferMacroList;
@ -136,6 +138,16 @@ begin
CancelButton.Caption:=dlgCancel;
end;
procedure TCleanDirectoryDialog.DirBrowseButtonClick(Sender: TObject);
var
NewDirectory: String;
begin
NewDirectory:=InputHistories.SelectDirectory(lisMenuCleanDirectory, true,
ExtractFilePath(DirCombobox.Text),ExtractFilename(DirCombobox.Text));
if NewDirectory<>'' then
DirCombobox.Text:=NewDirectory;
end;
procedure TCleanDirectoryDialog.LoadSettings;
var
XMLConfig: TXMLConfig;

View File

@ -216,6 +216,10 @@ type
// filedialog
procedure ApplyFileDialogSettings(DestDialog: TFileDialog);
procedure StoreFileDialogSettings(SourceDialog: TFileDialog);
function SelectDirectory(const Title: string;
MustExist: boolean = true;
const InitialDir: string = '';
const Directory: string = ''): string;
public
property Filename: string read FFilename write SetFilename;
@ -276,7 +280,7 @@ const
var
InputHistories: TInputHistories;
implementation
@ -579,6 +583,31 @@ begin
FFileDialogSettings.MaxHistory);
end;
function TInputHistories.SelectDirectory(const Title: string;
MustExist: boolean; const InitialDir: string;
const Directory: string): string;
var
WorkDirectoryDialog: TSelectDirectoryDialog;
begin
Result:='';
WorkDirectoryDialog := TSelectDirectoryDialog.Create(nil);
try
ApplyFileDialogSettings(WorkDirectoryDialog);
if MustExist then
WorkDirectoryDialog.Options:=WorkDirectoryDialog.Options+[ofFileMustExist];
if InitialDir <> '' then
WorkDirectoryDialog.InitialDir := InitialDir;
if Directory<>'' then
WorkDirectoryDialog.Filename := Directory;
if WorkDirectoryDialog.Execute then begin
Result := WorkDirectoryDialog.Filename;
end;
InputHistories.StoreFileDialogSettings(WorkDirectoryDialog);
finally
WorkDirectoryDialog.Free;
end;
end;
{ THistoryList }
procedure THistoryList.SetMaxCount(const AValue: integer);

View File

@ -461,27 +461,13 @@ end;
procedure TRunParamsOptsDlg.WorkingDirectoryBtnClick(Sender: TObject);
var
WorkDirectoryDialog: TSelectDirectoryDialog;
NewDirectory: String;
begin
WorkDirectoryDialog := TSelectDirectoryDialog.Create(Self);
with WorkDirectoryDialog do
begin
InputHistories.ApplyFileDialogSettings(WorkDirectoryDialog);
if WorkingDirectoryEdit.Text <> '' then
WorkDirectoryDialog.InitialDir := ExtractFilePath(WorkingDirectoryEdit.Text);
WorkDirectoryDialog.Filename := HostApplicationEdit.Text;
if WorkDirectoryDialog.Execute then
begin
if (DirPathExists(WorkDirectoryDialog.Filename)) or
(MessageDlg(dlgDirectoryDoesNotExist, dlgTheDirectory +
WorkDirectoryDialog.Filename + dlgDoesNotExist, mtWarning, [mbIgnore, mbCancel], 0) =
mrIgnore) then
begin
WorkingDirectoryEdit.Text := WorkDirectoryDialog.Filename;
end;
end;
InputHistories.StoreFileDialogSettings(WorkDirectoryDialog);
end;
NewDirectory:=InputHistories.SelectDirectory('Working directory',true,
ExtractFilePath(WorkingDirectoryEdit.Text),
ExtractFilename(WorkingDirectoryEdit.Text));
if NewDirectory<>'' then
WorkingDirectoryEdit.Text:=NewDirectory;
end;
procedure TRunParamsOptsDlg.UserOverridesAddButtonClick(Sender: TObject);