--- oup/current/FileClasses/_Extensions.pas 2007/06/29 12:38:24 233 +++ oup/current/FileClasses/_Extensions.pas 2007/08/17 21:09:51 244 @@ -7,21 +7,25 @@ uses type TExtension = class(TTreeElement) + protected function GetChildCount: Integer; override; function GetChild(ID: Integer): TTreeElement; override; function GetCaption: String; override; + function GetType: String; override; private FExt: String; FFiles: array of Integer; public constructor Create(ConnectionID: Integer; Ext: String); virtual; procedure InitList; + property Ext: String read FExt; end; TExtensions = class(TTreeElement) function GetChildCount: Integer; override; function GetChild(ID: Integer): TTreeElement; override; function GetCaption: String; override; + function GetType: String; override; private FExtensions: array of TExtension; public @@ -47,7 +51,7 @@ end; function TExtension.GetCaption: String; begin - Result := FExt; + Result := FExt + '[' + IntToStr(GetChildCount) + ']'; end; function TExtension.GetChild(ID: Integer): TTreeElement; @@ -64,6 +68,11 @@ begin Result := Length(FFiles); end; +function TExtension.GetType: String; +begin + Result := ''; +end; + procedure TExtension.InitList; var files: TStrings; @@ -94,11 +103,12 @@ end; function TExtensions.GetCaption: String; begin - Result := ''; + Result := 'Extensions'; end; function TExtensions.GetChild(ID: Integer): TTreeElement; begin + FExtensions[ID].InitList; Result := FExtensions[ID]; end; @@ -140,13 +150,18 @@ begin Result := nil; if Length(FExtensions) > 0 then for i := 0 to High(FExtensions) do - if FExtensions[i].GetCaption = Ext then + if FExtensions[i].Ext = Ext then begin Result := FExtensions[i]; Break; end; end; +function TExtensions.GetType: String; +begin + Result := ''; +end; + procedure TExtensions.AddExt(Ext: String); var i: Integer;