implemented SelectDirectory(Directory,Options,HelpCtx) for Delphi compatibility

git-svn-id: trunk@7443 -
This commit is contained in:
mattias 2005-07-29 16:14:33 +00:00
parent 104c0d4d6a
commit dbe17f9363
2 changed files with 27 additions and 2 deletions

View File

@ -335,10 +335,16 @@ Function InputQuery(const ACaption, APrompt : String; var Value : String) : Bool
Function InputBox(const ACaption, APrompt, ADefault : String) : String;
Function PasswordBox(const ACaption, APrompt : String) : String;
type
TSelectDirOpt = (sdAllowCreate, sdPerformCreate, sdPrompt);
TSelectDirOpts = set of TSelectDirOpt;
function SelectDirectory(const Caption, InitialDirectory: string;
var Directory: string): boolean;
function SelectDirectory(const Caption, InitialDirectory: string;
var Directory: string; ShowHidden: boolean): boolean;
var Directory: string; ShowHidden: boolean; HelpCtx: Longint = 0): boolean;
function SelectDirectory(var Directory: string;
Options: TSelectDirOpts; HelpCtx: Longint): Boolean;
procedure Register;

View File

@ -225,7 +225,7 @@ begin
end;
function SelectDirectory(const Caption, InitialDirectory: string;
var Directory: string; ShowHidden: boolean): boolean;
var Directory: string; ShowHidden: boolean; HelpCtx: Longint): boolean;
var
SelectDirectoryDialog: TSelectDirectoryDialog;
begin
@ -235,6 +235,7 @@ begin
+[ofForceShowHidden];
SelectDirectoryDialog.InitialDir:=InitialDirectory;
SelectDirectoryDialog.Title:=Caption;
SelectDirectoryDialog.HelpContext:=HelpCtx;
Result:=SelectDirectoryDialog.Execute;
if Result then
Directory:=SelectDirectoryDialog.Filename
@ -242,6 +243,24 @@ begin
Directory:='';
end;
function SelectDirectory(var Directory: string;
Options: TSelectDirOpts; HelpCtx: Longint): Boolean;
var
SelectDirectoryDialog: TSelectDirectoryDialog;
begin
SelectDirectoryDialog:=TSelectDirectoryDialog.Create(nil);
// TODO: sdAllowCreate,
// TODO: sdPrompt
SelectDirectoryDialog.HelpContext:=HelpCtx;
Result:=SelectDirectoryDialog.Execute;
if Result then begin
Directory:=SelectDirectoryDialog.Filename;
if (sdPerformCreate in Options) and (not DirPathExists(Directory)) then
ForceDirectories(Directory);
end else
Directory:='';
end;
Function InputQuery(const ACaption, APrompt : String; MaskInput : Boolean;
var Value : String) : Boolean;
begin