diff --git a/output/tim2view_linux_i386 b/output/tim2view_linux_i386
index 8bfacc7..a89c9e4 100644
Binary files a/output/tim2view_linux_i386 and b/output/tim2view_linux_i386 differ
diff --git a/output/tim2view_linux_x86_64 b/output/tim2view_linux_x86_64
index 0e2df04..41d1665 100644
Binary files a/output/tim2view_linux_x86_64 and b/output/tim2view_linux_x86_64 differ
diff --git a/output/tim2view_win32_i386.exe b/output/tim2view_win32_i386.exe
index 872e662..e36b2bd 100644
Binary files a/output/tim2view_win32_i386.exe and b/output/tim2view_win32_i386.exe differ
diff --git a/output/tim2view_win64_x86_64.exe b/output/tim2view_win64_x86_64.exe
index d29b7f4..be3f15b 100644
Binary files a/output/tim2view_win64_x86_64.exe and b/output/tim2view_win64_x86_64.exe differ
diff --git a/tim2view.lpi b/tim2view.lpi
index 2a275d8..2451fb9 100644
--- a/tim2view.lpi
+++ b/tim2view.lpi
@@ -27,7 +27,7 @@
-
+
diff --git a/ucdimage.pas b/ucdimage.pas
index bd3597a..f0741f7 100644
--- a/ucdimage.pas
+++ b/ucdimage.pas
@@ -40,7 +40,7 @@ procedure ReplaceTimInFileFromMemory(const FileName: string; TIM: PTIM;
implementation
uses
- ucommon, ecc, edc, classes, FileUtil, sysutils;
+ ucommon, ecc, edc, classes, LazUTF8, LazFileUtils, sysutils;
function bin2bcd(P: Integer): byte;
begin
@@ -72,7 +72,7 @@ var
tmp: TFileStream;
begin
Result := False;
- Sz := FileSize(FileName);
+ Sz := FileSizeUTF8(FileName);
if (Sz > cMaxFileSize) or (Sz = 0) then Exit;
@@ -210,7 +210,7 @@ var
begin
Result := False;
- SIZE := FileSize(TimToInsert);
+ SIZE := FileSizeUTF8(TimToInsert);
P := 0;
TIM := LoadTimFromFile(TimToInsert, P, False, SIZE);
// SaveTimToFile('test.tim', TIM);
diff --git a/uexportimport.pas b/uexportimport.pas
index a369545..7c01ba8 100644
--- a/uexportimport.pas
+++ b/uexportimport.pas
@@ -11,7 +11,7 @@ function LoadImage(const FileName: string): PDrawSurf;
implementation
uses
- FPReadPNG, Classes, BGRABitmap, FileUtil, sysutils, zstream, FPWritePNG;
+ FPReadPNG, Classes, BGRABitmap, LazUTF8, sysutils, zstream, FPWritePNG;
procedure SaveImage(const FileName: string; Surf: PDrawSurf; Indexed: Boolean);
var
diff --git a/umain.lfm b/umain.lfm
index 0eb5fc1..33b9bca 100644
--- a/umain.lfm
+++ b/umain.lfm
@@ -889,15 +889,15 @@ object frmMain: TfrmMain
object mnImportPng: TMenuItem
Action = actPngImport
end
- object N21: TMenuItem
- Caption = '-'
+ end
+ object mnExport: TMenuItem
+ Caption = '&Export'
+ object mnExtractAllPngs3: TMenuItem
+ Action = actExtractPngs
end
object mnExtractAllTims3: TMenuItem
Action = actExtractTims
end
- object mnExtractAllPngs3: TMenuItem
- Action = actExtractPngs
- end
object N22: TMenuItem
Caption = '-'
end
diff --git a/umain.pas b/umain.pas
index 4938756..bf567fd 100644
--- a/umain.pas
+++ b/umain.pas
@@ -5,7 +5,7 @@ unit umain;
interface
uses
- Classes, SysUtils, FileUtil, Forms, Dialogs, ActnList,
+ Classes, SysUtils, LazUTF8, LazFileUtils, Forms, Dialogs, ActnList,
Menus, StdCtrls, ExtCtrls, ComCtrls, Grids, ExtDlgs,
uscanresult, uscanthread, usettings, utim, udrawtim, types, Controls;
@@ -52,12 +52,12 @@ type
dlgOpenFile: TOpenDialog;
dlgSavePNG: TSavePictureDialog;
dlgSaveFile: TSaveDialog;
+ mnExport: TMenuItem;
mnExtractAllTimsAll: TMenuItem;
mnExtractAllPngsAll: TMenuItem;
N22: TMenuItem;
mnExtractAllPngs3: TMenuItem;
mnExtractAllTims3: TMenuItem;
- N21: TMenuItem;
N20: TMenuItem;
mnSaveTIM1: TMenuItem;
grdClut: TDrawGrid;
@@ -429,9 +429,9 @@ begin
Application.ProcessMessages;
end;
Dispose(Image);
- lblStatus.Caption := sStatusBarExtracted;
pbProgress.Position := 0;
end;
+ lblStatus.Caption := sStatusBarExtracted;
end;
procedure TfrmMain.actExtractPngsExecute(Sender: TObject);
@@ -540,9 +540,9 @@ begin
pbProgress.Position := I;
Application.ProcessMessages;
end;
- lblStatus.Caption := sStatusBarExtracted;
pbProgress.Position := 0;
end;
+ lblStatus.Caption := sStatusBarExtracted;
end;
procedure TfrmMain.actExtractTimsExecute(Sender: TObject);
@@ -622,7 +622,7 @@ var
ScanRes: TScanResult;
begin
if not dlgOpenFile.Execute then Exit;
- if FileSize(dlgOpenFile.FileName) > cTIMMaxSize then Exit;
+ if FileSizeUtf8(dlgOpenFile.FileName) > cTIMMaxSize then Exit;
ScanRes := SelectedScanResult;
ReplaceTimInFile(ScanRes.ScanFile, dlgOpenFile.FileName, SelectedTimInfo.Position, ScanRes.IsImage);
@@ -948,7 +948,7 @@ begin
cbbFiles.Enabled := (cbbFiles.Items.Count <> 0);
actExtractTimsAll.Enabled := cbbFiles.Enabled;
-
+ actExtractPngsAll.Enabled := cbbFiles.Enabled;
pnlList.Enabled := cbbFiles.Enabled;
actCloseFile.Enabled := cbbFiles.Enabled;
diff --git a/uscanthread.pas b/uscanthread.pas
index 77ab927..35aaa83 100644
--- a/uscanthread.pas
+++ b/uscanthread.pas
@@ -37,7 +37,7 @@ type
implementation
uses
- umain, ucdimage, sysutils, FileUtil;
+ umain, ucdimage, sysutils, LazUTF8, LazFileUtils;
const
cClearBufferSize = ((cTIMMaxSize div cSectorDataSize) + 1) * cSectorDataSize * 2;
@@ -51,7 +51,7 @@ begin
FreeOnTerminate := True;
pClearBufferPosition := 0;
pFilePos := 0;
- pFileSize := FileSize(FileToScan);
+ pFileSize := FileSizeUTF8(FileToScan);
pStatusText := '';
pStopScan := False;
diff --git a/usettings.pas b/usettings.pas
index 83ef016..0517ba8 100644
--- a/usettings.pas
+++ b/usettings.pas
@@ -51,7 +51,7 @@ type
implementation
-uses FileUtil
+uses LazUTF8
{$IFDEF windows}
,windows, shlobj {for special folders}, ActiveX, ComObj
diff --git a/utim.pas b/utim.pas
index 37153d4..6ea8502 100644
--- a/utim.pas
+++ b/utim.pas
@@ -148,7 +148,7 @@ function ConvertCLUTColor(COLOR: TCLUT_COLOR): word;
implementation
uses
- ucdimage, classes, sysutils, FileUtil;
+ ucdimage, classes, sysutils, LazUTF8;
function ConvertTIMColor(COLOR: word): TCLUT_COLOR;
begin