Code: Select all
TOlesioField = class(TdecWDXStringField)
public
constructor Create(AOwner : TdecWDXRoot); override;
destructor Destroy; override;
protected
function IsEmpty(AData : TObject; AUnitIndex : Integer; AFlags : Integer) : Boolean; override;
function DoGetValue2(const AFileName : string; AData : TObject; AUnitIndex : Integer;
AFieldValue : Pointer; AMaxLen, AFlags : Integer; AIsUnicode : Boolean) : string; override;
function GetName : string; override;
function GetSubstitute : Integer; override;
end;
Code: Select all
constructor TOlesioField.Create(AOwner : TdecWDXRoot);
begin
inherited Create(AOwner);
end;
destructor TOlesioField.Destroy;
begin
inherited Destroy;
end;
function TOlesioField.GetSubstitute : integer;
begin
Result := CONTFLAGS_FIELDEDIT;
end;
function TOlesioField.IsEmpty(AData : TObject; AUnitIndex, AFlags : Integer) : Boolean;
begin
Result := AData = nil;
end;
function TOlesioField.GetName : string;
begin
Result := 'File name in directory';
end;
function TOlesioField.DoGetValue2(const AFileName : string; AData : TObject; AUnitIndex : Integer;
AFieldValue : Pointer; AMaxLen, AFlags : Integer; AIsUnicode : Boolean) : string;
var
H : THandle;
WFD : TWIN32FindData;
begin
with TdecTestWDXGetValueObject(AData) do
begin
Result := AFileName;
if Data.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY = FILE_ATTRIBUTE_DIRECTORY then
begin
if AFileName <> '' then
begin
H := FindFirstFile(PChar(AFileName + '\pft.res'), WFD);
if H <> INVALID_HANDLE_VALUE then
begin
Result := AFileName;
MessageBox(0, PChar(AFileName), PChar(string(PAnsiChar(AFieldValue))), 0);
end;
end;
end;
end;
end;
1. How to read only string from "Value" edit field in "Plugins" tab from "Find files" window? I need it to compare in my code later. Variable AFieldValue do not return any string - even if I try converted to PChar like ValueToString function from wdxclasses.pas unit.
2. How to get only directory with defualt yellow folder icon on search result list? For Example this Test MessageBox shows me C:\PROGRAM FILES (X86)\DELPHI7\PROJECTS\MY_PREPARED FOR_TEST_DIRECTORY, but in results I only have filename. I analyzed deeply original Source Code by DEC, but He do not shows method which I want to get. Thanks in advice for any help and sorry for my bad English.
[mod]Dupe posts removed. Please, don't click the “Send” button several times if the board doesn't react immediately, just wait for… TIA.
Clo, moderator. [/mod]