diff options
Diffstat (limited to 'src/screens0/UScreenPopup.pas')
-rw-r--r-- | src/screens0/UScreenPopup.pas | 252 |
1 files changed, 0 insertions, 252 deletions
diff --git a/src/screens0/UScreenPopup.pas b/src/screens0/UScreenPopup.pas deleted file mode 100644 index b51fac98..00000000 --- a/src/screens0/UScreenPopup.pas +++ /dev/null @@ -1,252 +0,0 @@ -unit UScreenPopup; - -interface - -{$I switches.inc} - -uses - UMenu, SDL, UMusic, UFiles, SysUtils, UThemes; - -type - TScreenPopupCheck = class(TMenu) - public - Visible: Boolean; //Whether the Menu should be Drawn - - constructor Create; override; - function ParseInput(PressedKey: Cardinal; CharCode: WideChar; PressedDown: Boolean): Boolean; override; - procedure onShow; override; - procedure ShowPopup(msg: String); - function Draw: boolean; override; - end; - -type - TScreenPopupError = class(TMenu) -{ private - CurMenu: Byte; //Num of the cur. Shown Menu} - public - Visible: Boolean; //Whether the Menu should be Drawn - - constructor Create; override; - function ParseInput(PressedKey: Cardinal; CharCode: WideChar; PressedDown: Boolean): Boolean; override; - procedure onShow; override; - procedure onHide; override; - procedure ShowPopup(msg: String); - function Draw: boolean; override; - end; - -var -// ISelections: Array of String; - SelectValue: Integer; - - -implementation - -uses UGraphic, UMain, UIni, UTexture, ULanguage, UParty, UPlaylist, UDisplay; - -function TScreenPopupCheck.ParseInput(PressedKey: Cardinal; CharCode: WideChar; PressedDown: Boolean): Boolean; -begin - Result := true; - If (PressedDown) Then - begin // Key Down - // check normal keys - case WideCharUpperCase(CharCode)[1] of - 'Q': - begin - Result := false; - Exit; - end; - end; - - // check special keys - case PressedKey of - SDLK_ESCAPE, - SDLK_BACKSPACE : - begin - Display.CheckOK:=False; - Display.NextScreenWithCheck:=NIL; - Visible:=False; - Result := false; - end; - - SDLK_RETURN: - begin - case Interaction of - 0: 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; - - Display.CheckOK:=True; - end; - 1: begin - Display.CheckOK:=False; - Display.NextScreenWithCheck:=NIL; - end; - end; - Visible:=False; - Result := false; - end; - - SDLK_DOWN: InteractNext; - SDLK_UP: InteractPrev; - - SDLK_RIGHT: InteractNext; - SDLK_LEFT: InteractPrev; - end; - end; -end; - -constructor TScreenPopupCheck.Create; -var - I: integer; -begin - inherited Create; - - AddBackground(Theme.CheckPopup.Background.Tex); - - AddButton(Theme.CheckPopup.Button1); - if (Length(Button[0].Text) = 0) then - AddButtonText(14, 20, 'Button 1'); - - AddButton(Theme.CheckPopup.Button2); - if (Length(Button[1].Text) = 0) then - AddButtonText(14, 20, 'Button 2'); - - AddText(Theme.CheckPopup.TextCheck); - - for I := 0 to High(Theme.CheckPopup.Static) do - AddStatic(Theme.CheckPopup.Static[I]); - - for I := 0 to High(Theme.CheckPopup.Text) do - AddText(Theme.CheckPopup.Text[I]); - - Interaction := 0; -end; - -function TScreenPopupCheck.Draw: boolean; -begin - Draw:=inherited Draw; -end; - -procedure TScreenPopupCheck.onShow; -begin - inherited; -end; - -procedure TScreenPopupCheck.ShowPopup(msg: String); -begin - Interaction := 0; //Reset Interaction - Visible := True; //Set Visible - - Text[0].Text := Language.Translate(msg); - - Button[0].Visible := True; - Button[1].Visible := True; - - Button[0].Text[0].Text := Language.Translate('SONG_MENU_YES'); - Button[1].Text[0].Text := Language.Translate('SONG_MENU_NO'); -end; - -// error popup - -function TScreenPopupError.ParseInput(PressedKey: Cardinal; CharCode: WideChar; PressedDown: Boolean): Boolean; -begin - Result := true; - If (PressedDown) Then - begin // Key Down - - case PressedKey of - SDLK_Q: - begin - Result := false; - end; - - SDLK_ESCAPE, - SDLK_BACKSPACE : - begin - Visible:=False; - Result := false; - end; - - SDLK_RETURN: - begin - Visible:=False; - Result := false; - end; - - SDLK_DOWN: InteractNext; - SDLK_UP: InteractPrev; - - SDLK_RIGHT: InteractNext; - SDLK_LEFT: InteractPrev; - end; - end; -end; - -constructor TScreenPopupError.Create; -var - I: integer; -begin - inherited Create; - - AddBackground(Theme.CheckPopup.Background.Tex); - - AddButton(Theme.ErrorPopup.Button1); - if (Length(Button[0].Text) = 0) then - AddButtonText(14, 20, 'Button 1'); - - AddText(Theme.ErrorPopup.TextError); - - for I := 0 to High(Theme.ErrorPopup.Static) do - AddStatic(Theme.ErrorPopup.Static[I]); - - for I := 0 to High(Theme.ErrorPopup.Text) do - AddText(Theme.ErrorPopup.Text[I]); - - Interaction := 0; -end; - -function TScreenPopupError.Draw: boolean; -begin - Draw:=inherited Draw; -end; - -procedure TScreenPopupError.onShow; -begin - inherited; - -end; - -procedure TScreenPopupError.onHide; -begin -end; - -procedure TScreenPopupError.ShowPopup(msg: String); -begin - Interaction := 0; //Reset Interaction - Visible := True; //Set Visible - -{ //dirty hack... Text[0] is invisible for some strange reason - for i:=1 to high(Text) do - if i-1 <= high(msg) then - begin - Text[i].Visible:=True; - Text[i].Text := msg[i-1]; - end - else - begin - Text[i].Visible:=False; - end;} - Text[0].Text:=msg; - - Button[0].Visible := True; - - Button[0].Text[0].Text := 'OK'; -end; - -end. |