diff --git a/src/editor/f_main.pas b/src/editor/f_main.pas
index f4de797d1463084772634b6f02394228cc453c7d..ef9e19d2ee9c59c7ffd0bdeae5e12aedfa9221cc 100644 (file)
--- a/src/editor/f_main.pas
+++ b/src/editor/f_main.pas
else
begin // Внешний WAD
FileName := EditorDir+'wads/'+aWAD;
- ResourceName := aWAD+':'+SectionName+'\'+aTex;
+ ResourceName := utf2win(aWAD)+':'+SectionName+'\'+aTex;
end;
ok := True;
lbTextureList.Sorted := True;
lbTextureList.Sorted := False;
- UpdateCaption(gMapInfo.Name, ExtractFileName(FileName), MapName);
+ UpdateCaption(win2utf(gMapInfo.Name), ExtractFileName(FileName), MapName);
end;
end;
var
n, pw: Integer;
s, fn: String;
+ b: Boolean;
begin
s := LowerCase((Sender as TMenuItem).Caption);
Delete(s, Pos('&', s), 1);
s := RecentFiles[n];
pw := Pos('.wad:\', LowerCase(s));
+ b := False;
if pw > 0 then
begin // Map name included
fn := Copy(s, 1, pw + 3);
Delete(s, 1, pw + 5);
if (FileExists(fn)) then
+ begin
OpenMap(fn, s);
+ b := True;
+ end;
end
else // Only wad name
if (FileExists(s)) then
+ begin
OpenMap(s, '');
+ b := True;
+ end;
+
+ if (not b) and (MessageBox(0, PChar(_lc[I_MSG_DEL_RECENT_PROMT]),
+ PChar(_lc[I_MSG_DEL_RECENT]), MB_ICONQUESTION or MB_YESNO) = idYes) then
+ begin
+ RecentFiles.Delete(n);
+ RefreshRecentMenu();
+ end;
end;
procedure TMainForm.aEditorOptionsExecute(Sender: TObject);
while (Pos(':\', ResName) > 0) do
Delete(ResName, 1, Pos(':\', ResName) + 1);
- UpdateCaption(gMapInfo.Name, ExtractFileName(OpenedWAD), ResName);
+ UpdateCaption(win2utf(gMapInfo.Name), ExtractFileName(OpenedWAD), ResName);
end;
procedure TMainForm.aAboutExecute(Sender: TObject);
gMapInfo.FileName := SaveDialog.FileName;
gMapInfo.MapName := SaveMapForm.eMapName.Text;
- UpdateCaption(gMapInfo.Name, ExtractFileName(gMapInfo.FileName), gMapInfo.MapName);
+ UpdateCaption(win2utf(gMapInfo.Name), ExtractFileName(gMapInfo.FileName), gMapInfo.MapName);
end;
procedure TMainForm.aSelectAllExecute(Sender: TObject);