diff options
Diffstat (limited to '')
-rw-r--r-- | Game/Code/Screens/UScreenSongMenu.pas | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/Game/Code/Screens/UScreenSongMenu.pas b/Game/Code/Screens/UScreenSongMenu.pas index dbdea42e..b3a77879 100644 --- a/Game/Code/Screens/UScreenSongMenu.pas +++ b/Game/Code/Screens/UScreenSongMenu.pas @@ -166,6 +166,8 @@ begin SDLK_RETURN:
begin
HandleReturn;
+ if (CurMenu = SM_Playlist_Add) then
+ MenuShow(CurMenu);
end;
SDLK_DOWN: InteractNext;
@@ -186,8 +188,16 @@ begin Music.PlayChange;
ScreenSong.SelectNext;
ScreenSong.ChangeMusic;
- ScreenSong.SetScroll4;
end;
+
+ if (CurMenu = SM_Playlist_Add) and (Interaction <> 3) then
+ begin
+ Music.PlayChange;
+ ScreenSong.SelectNext;
+ ScreenSong.ChangeMusic;
+ MenuShow(CurMenu);
+ end else if (CurMenu = SM_Playlist_Add) then
+ MenuShow(CurMenu);
end;
SDLK_LEFT:
begin
@@ -204,8 +214,16 @@ begin Music.PlayChange;
ScreenSong.SelectPrev;
ScreenSong.ChangeMusic;
- ScreenSong.SetScroll4;
end;
+
+ if (CurMenu = SM_Playlist_Add) and (Interaction <> 3) then
+ begin
+ Music.PlayChange;
+ ScreenSong.SelectPrev;
+ ScreenSong.ChangeMusic;
+ MenuShow(CurMenu);
+ end else if (CurMenu = SM_Playlist_Add) then
+ MenuShow(CurMenu);
end;
SDLK_1:
@@ -403,7 +421,7 @@ begin Button[0].Visible := True;
Button[1].Visible := False;
Button[2].Visible := False;
- Button[3].Visible := True;
+ Button[3].Visible := not PlaylistMan.SongExists(ScreenSong.Interaction, SelectValue);
SelectsS[0].Visible := True;
Button[0].Text[0].Text := Language.Translate('SONG_MENU_PLAYLIST_ADD_NEW');
@@ -773,7 +791,7 @@ begin PlaylistMan.AddItem(ScreenSong.Interaction, SelectValue);
ScreenSong.WaitHandler.changed := true;
ScreenSong.WaitHandler.change_time := 0;
- Visible := False;
+ //Visible := False;
end;
end;
end;
|