aboutsummaryrefslogtreecommitdiffstats
path: root/unicode/src/menu/UMenu.pas
diff options
context:
space:
mode:
Diffstat (limited to 'unicode/src/menu/UMenu.pas')
-rw-r--r--unicode/src/menu/UMenu.pas22
1 files changed, 21 insertions, 1 deletions
diff --git a/unicode/src/menu/UMenu.pas b/unicode/src/menu/UMenu.pas
index 0c6ebc63..f7e98d32 100644
--- a/unicode/src/menu/UMenu.pas
+++ b/unicode/src/menu/UMenu.pas
@@ -1176,13 +1176,33 @@ begin
AudioPlayback.PlaySound( aSound );
end;
+procedure OnSaveEncodingError(Value: boolean; Data: Pointer);
+begin
+ Display.CheckOK := Value;
+ if (Value) then
+ begin
+ //Hack to Finish Singscreen correct on Exit with Q Shortcut
+ if (Display.NextScreenWithCheck = nil) then
+ begin
+ if (Display.CurrentScreen = @ScreenSing) then
+ ScreenSing.Finish
+ else if (Display.CurrentScreen = @ScreenSingModi) then
+ ScreenSingModi.Finish;
+ end;
+ end
+ else
+ begin
+ Display.NextScreenWithCheck := nil;
+ end;
+end;
+
//popup hack
procedure TMenu.CheckFadeTo(Screen: PMenu; msg: string);
begin
Display.Fade := 0;
Display.NextScreenWithCheck := Screen;
Display.CheckOK := false;
- ScreenPopupCheck.ShowPopup(msg);
+ ScreenPopupCheck.ShowPopup(msg, OnSaveEncodingError, nil, false);
end;
procedure TMenu.AddButtonText(AddX, AddY: real; const AddText: UTF8String);