Index: oup/current/Tools/Template.pas
===================================================================
--- oup/current/Tools/Template.pas	(revision 75)
+++ oup/current/Tools/Template.pas	(revision 83)
@@ -61,4 +61,5 @@
     FAllowedExts: String;
     FAllowMultiSelect: Boolean;
+    FSelectedFile: TFileInfo;
     procedure SetAllowedExts(exts: String);
     procedure SetMultiSelect(allow: Boolean);
@@ -70,4 +71,5 @@
     property AllowedExts: String read FAllowedExts write SetAllowedExts;
     property AllowMultiSelect: Boolean read FAllowMultiSelect write SetMultiSelect;
+    property SelectedFile: TFileInfo read FSelectedFile;
   end;
 
@@ -203,4 +205,7 @@
   inherited;
   RecreateList;
+  FSelectedFile.ID := -1;
+  FSelectedFile.FileName := '';
+  FSelectedFile.FileNameHex := '';
   if Length(ToolList) > 0 then
   begin
@@ -267,6 +272,7 @@
     fileid := OniDataConnection.ExtractFileID(
           filelist.Items.Strings[filelist.ItemIndex]);
+    FSelectedFile := OniDataConnection.GetFileInfo(fileid);
     if Assigned(FOnNewFileSelected) then
-      FOnNewFileSelected(OniDataConnection.GetFileInfo(fileid));
+      FOnNewFileSelected(FSelectedFile);
   end;
 end;
