Index: oup/current/Tools/BinEdit.dfm
===================================================================
--- oup/current/Tools/BinEdit.dfm	(revision 245)
+++ oup/current/Tools/BinEdit.dfm	(revision 248)
@@ -107,5 +107,5 @@
         Colors.EvenColumn = clNavy
         Colors.CurrentOffsetBackground = clBtnShadow
-        Colors.OffsetBackGround = clBtnFace
+        Colors.OffsetBackground = clBtnFace
         Colors.CurrentOffset = clBtnHighlight
         Colors.Grid = clBtnFace
@@ -116,5 +116,5 @@
         AllowInsertMode = False
         DrawGridLines = False
-        Version = 'May 23, 2005; '#169' markus stephany, vcl[at]mirkes[dot]de'
+        Version = 'september 30, 2007; '#169' markus stephany, vcl[at]mirkes[dot]de'
         OnChange = hexChange
         ShowPositionIfNotFocused = True
Index: oup/current/Tools/BinEdit.pas
===================================================================
--- oup/current/Tools/BinEdit.pas	(revision 245)
+++ oup/current/Tools/BinEdit.pas	(revision 248)
@@ -141,11 +141,15 @@
 //      Self.SelectFileID(ConnectionID, fileid);
     Self.ClearStructViewer;
+    ClearValues;
     mem := nil;
-    ConManager.Connection[ConID].LoadDatFile(fileid, TStream(mem));
-    rawlist := ConManager.Connection[ConID].GetRawList(fileid);
-    hex.LoadFromStream(mem);
-    mem.Free;
-    ClearValues;
-    WriteStructureInfos;
+    hex.DataSize := 0;
+    if fileinfo.Size > 0 then
+    begin
+      ConManager.Connection[ConID].LoadDatFile(fileid, TStream(mem));
+      rawlist := ConManager.Connection[ConID].GetRawList(fileid);
+      hex.LoadFromStream(mem);
+      mem.Free;
+      WriteStructureInfos;
+    end;
   end
   else
Index: oup/current/Tools/MetaEditor.dfm
===================================================================
--- oup/current/Tools/MetaEditor.dfm	(revision 245)
+++ oup/current/Tools/MetaEditor.dfm	(revision 248)
@@ -82,7 +82,15 @@
         Caption = 'Meta Edit'
         ImageIndex = 1
+        ExplicitLeft = 0
+        ExplicitTop = 0
+        ExplicitWidth = 0
+        ExplicitHeight = 0
       end
       object tab_hex: TTabSheet
         Caption = 'Binary Edit'
+        ExplicitLeft = 0
+        ExplicitTop = 0
+        ExplicitWidth = 0
+        ExplicitHeight = 0
         object splitter_hex_1: TSplitter
           Left = 0
@@ -162,5 +170,5 @@
           Colors.EvenColumn = clNavy
           Colors.CurrentOffsetBackground = clBtnShadow
-          Colors.OffsetBackGround = clBtnFace
+          Colors.OffsetBackground = clBtnFace
           Colors.CurrentOffset = clBtnHighlight
           Colors.Grid = clBtnFace
@@ -171,5 +179,5 @@
           AllowInsertMode = False
           DrawGridLines = False
-          Version = 'May 23, 2005; '#169' markus stephany, vcl[at]mirkes[dot]de'
+          Version = 'september 30, 2007; '#169' markus stephany, vcl[at]mirkes[dot]de'
           ShowPositionIfNotFocused = True
         end
Index: oup/current/Tools/MetaEditor.pas
===================================================================
--- oup/current/Tools/MetaEditor.pas	(revision 245)
+++ oup/current/Tools/MetaEditor.pas	(revision 248)
@@ -149,5 +149,5 @@
 var
   data: PNodeData;
-  ffile: TFile;
+  ffile: TResource;
 //*******************************************************************
   fs: TFileStream;
@@ -156,9 +156,9 @@
   data := Sender.GetNodeData(Node);
   ffile := nil;
-  if data.Field is TFile then
-    ffile := TFile(data.Field);
+  if data.Field is TResource then
+    ffile := TResource(data.Field);
   if data.Field is _MetaTypes.TDatLink then
     if Assigned(_MetaTypes.TDatLink(data.Field).TargetFile) then
-      ffile := TFile(_MetaTypes.TDatLink(data.Field).TargetFile);
+      ffile := TResource(_MetaTypes.TDatLink(data.Field).TargetFile);
   if Assigned(ffile) then
   begin
@@ -186,8 +186,8 @@
 begin
   data := Sender.GetNodeData(NewNode);
-  if data.Field is TFile then
-  begin
-    if Assigned(TFile(data.Field).Editor) then
-      Allowed := not TFile(data.Field).Opened
+  if data.Field is TResource then
+  begin
+    if Assigned(TResource(data.Field).Editor) then
+      Allowed := not TResource(data.Field).Opened
     else
       Allowed := True;
@@ -196,12 +196,12 @@
   begin
     data := Sender.GetNodeData(OldNode);
-    if data.Field is TFile then
-    begin
-      if TFile(data.Field).Opened then
+    if data.Field is TResource then
+    begin
+      if TResource(data.Field).Opened then
       begin
         if tab_meta.ControlCount > 0 then
           for i := 0 to tab_meta.ControlCount - 1 do
             tab_meta.RemoveControl(tab_meta.Controls[i]);
-        TFile(data.Field).Opened := False;
+        TResource(data.Field).Opened := False;
       end;
     end;
@@ -244,9 +244,9 @@
       0:
         begin
-          if Data.Field is TFile then
+          if Data.Field is TResource then
           begin
-            if Length(TFile(Data.Field).FileInfo.Name) = 0 then
+            if Length(TResource(Data.Field).FileInfo.Name) = 0 then
               TargetCanvas.Font.Color := $C06060;
-            if TFile(Data.Field).FileInfo.Size = 0 then
+            if TResource(Data.Field).FileInfo.Size = 0 then
               TargetCanvas.Font.Color := $2020A0;
           end;
@@ -267,5 +267,5 @@
   i: Integer;
   links: TStrings;
-  ifile: TFile;
+  ifile: TResource;
 begin
   inherited;
@@ -283,7 +283,7 @@
         end;
       end;
-      if data.Field is TFile then
+      if data.Field is TResource then
       begin
-        ifile := TFile(data.Field);
+        ifile := TResource(data.Field);
         case Column of
           0: HintText :=
Index: oup/current/Tools/_TemplateFileList.dfm
===================================================================
--- oup/current/Tools/_TemplateFileList.dfm	(revision 245)
+++ oup/current/Tools/_TemplateFileList.dfm	(revision 248)
@@ -38,4 +38,8 @@
         object tab_files: TTabSheet
           Caption = 'Filelist'
+          ExplicitLeft = 0
+          ExplicitTop = 0
+          ExplicitWidth = 0
+          ExplicitHeight = 0
           object panel_extension: TPanel
             Left = 0
@@ -220,5 +224,5 @@
               Font.Name = 'Courier'
               Font.Style = []
-              ItemHeight = 13
+              ItemHeight = 0
               ParentFont = False
               Sorted = True
@@ -270,4 +274,8 @@
           Caption = 'Tree'
           ImageIndex = 1
+          ExplicitLeft = 0
+          ExplicitTop = 0
+          ExplicitWidth = 0
+          ExplicitHeight = 0
           object filelist_meta: TVirtualStringTree
             Left = 0
Index: oup/current/Tools/_TemplateFileList.pas
===================================================================
--- oup/current/Tools/_TemplateFileList.pas	(revision 245)
+++ oup/current/Tools/_TemplateFileList.pas	(revision 248)
@@ -420,9 +420,9 @@
   inherited;
   data := Sender.GetNodeData(Node);
-  if data.Field is TFile then
+  if data.Field is TResource then
   begin
     if Assigned(FOnNewFileSelected) then
     begin
-      FOnNewFileSelected(TFile(data.Field).FileInfo);
+      FOnNewFileSelected(TResource(data.Field).FileInfo);
     end;
   end;
@@ -437,9 +437,9 @@
   inherited;
   data := Sender.GetNodeData(NewNode);
-  if data.Field is TFile then
+  if data.Field is TResource then
   begin
     if Assigned(FOnNewFileSelecting) then
     begin
-      FOnNewFileSelecting(TFile(data.Field).FileInfo, Allowed);
+      FOnNewFileSelecting(TResource(data.Field).FileInfo, Allowed);
     end;
   end;
@@ -519,9 +519,9 @@
 begin
   Data     := Sender.GetNodeData(Node);
-  if Data.Field is TFile then
-  begin
-    if Length(TFile(Data.Field).FileInfo.Name) = 0 then
+  if Data.Field is TResource then
+  begin
+    if Length(TResource(Data.Field).FileInfo.Name) = 0 then
       TargetCanvas.Font.Color := $C06060;
-    if TFile(Data.Field).FileInfo.Size = 0 then
+    if TResource(Data.Field).FileInfo.Size = 0 then
       TargetCanvas.Font.Color := $2020A0;
   end;
