| 7 |
|
|
| 8 |
|
type |
| 9 |
|
TExtension = class(TTreeElement) |
| 10 |
+ |
protected |
| 11 |
|
function GetChildCount: Integer; override; |
| 12 |
|
function GetChild(ID: Integer): TTreeElement; override; |
| 13 |
|
function GetCaption: String; override; |
| 14 |
+ |
function GetType: String; override; |
| 15 |
|
private |
| 16 |
|
FExt: String; |
| 17 |
|
FFiles: array of Integer; |
| 18 |
|
public |
| 19 |
|
constructor Create(ConnectionID: Integer; Ext: String); virtual; |
| 20 |
|
procedure InitList; |
| 21 |
+ |
property Ext: String read FExt; |
| 22 |
|
end; |
| 23 |
|
|
| 24 |
|
TExtensions = class(TTreeElement) |
| 25 |
|
function GetChildCount: Integer; override; |
| 26 |
|
function GetChild(ID: Integer): TTreeElement; override; |
| 27 |
|
function GetCaption: String; override; |
| 28 |
+ |
function GetType: String; override; |
| 29 |
|
private |
| 30 |
|
FExtensions: array of TExtension; |
| 31 |
|
public |
| 51 |
|
|
| 52 |
|
function TExtension.GetCaption: String; |
| 53 |
|
begin |
| 54 |
< |
Result := FExt; |
| 54 |
> |
Result := FExt + '[' + IntToStr(GetChildCount) + ']'; |
| 55 |
|
end; |
| 56 |
|
|
| 57 |
|
function TExtension.GetChild(ID: Integer): TTreeElement; |
| 68 |
|
Result := Length(FFiles); |
| 69 |
|
end; |
| 70 |
|
|
| 71 |
+ |
function TExtension.GetType: String; |
| 72 |
+ |
begin |
| 73 |
+ |
Result := ''; |
| 74 |
+ |
end; |
| 75 |
+ |
|
| 76 |
|
procedure TExtension.InitList; |
| 77 |
|
var |
| 78 |
|
files: TStrings; |
| 103 |
|
|
| 104 |
|
function TExtensions.GetCaption: String; |
| 105 |
|
begin |
| 106 |
< |
Result := ''; |
| 106 |
> |
Result := 'Extensions'; |
| 107 |
|
end; |
| 108 |
|
|
| 109 |
|
function TExtensions.GetChild(ID: Integer): TTreeElement; |
| 110 |
|
begin |
| 111 |
+ |
FExtensions[ID].InitList; |
| 112 |
|
Result := FExtensions[ID]; |
| 113 |
|
end; |
| 114 |
|
|
| 150 |
|
Result := nil; |
| 151 |
|
if Length(FExtensions) > 0 then |
| 152 |
|
for i := 0 to High(FExtensions) do |
| 153 |
< |
if FExtensions[i].GetCaption = Ext then |
| 153 |
> |
if FExtensions[i].Ext = Ext then |
| 154 |
|
begin |
| 155 |
|
Result := FExtensions[i]; |
| 156 |
|
Break; |
| 157 |
|
end; |
| 158 |
|
end; |
| 159 |
|
|
| 160 |
+ |
function TExtensions.GetType: String; |
| 161 |
+ |
begin |
| 162 |
+ |
Result := ''; |
| 163 |
+ |
end; |
| 164 |
+ |
|
| 165 |
|
procedure TExtensions.AddExt(Ext: String); |
| 166 |
|
var |
| 167 |
|
i: Integer; |