aboutsummaryrefslogtreecommitdiffstats
path: root/src/screens/UScreenJukebox.pas
diff options
context:
space:
mode:
authorbasisbit <basisbit@b956fd51-792f-4845-bead-9b4dfca2ff2c>2015-09-07 00:11:32 +0000
committerbasisbit <basisbit@b956fd51-792f-4845-bead-9b4dfca2ff2c>2015-09-07 00:11:32 +0000
commit3eb83d6110761ac8c8efae4baaa231be3bfa64e4 (patch)
treef221afe626f5b5d399e9fc5449c6021350b35e4d /src/screens/UScreenJukebox.pas
parenta1cc9838fa20ec350c06534ce34b493fdc9fbb6d (diff)
downloadusdx-3eb83d6110761ac8c8efae4baaa231be3bfa64e4.tar.gz
usdx-3eb83d6110761ac8c8efae4baaa231be3bfa64e4.tar.xz
usdx-3eb83d6110761ac8c8efae4baaa231be3bfa64e4.zip
* show CallStack on unhandled application error
* do not show Top 5 Screen when there are no scores to show * first UThemes changes for duett and fixes for jukebox * first step of standardizing the function-keys in JukeBox: press r to randomize/mix the playlist or press j and start typing for song search git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@3131 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'src/screens/UScreenJukebox.pas')
-rw-r--r--src/screens/UScreenJukebox.pas123
1 files changed, 59 insertions, 64 deletions
diff --git a/src/screens/UScreenJukebox.pas b/src/screens/UScreenJukebox.pas
index 8e4b7712..d282d979 100644
--- a/src/screens/UScreenJukebox.pas
+++ b/src/screens/UScreenJukebox.pas
@@ -116,7 +116,7 @@ type
JukeboxTextTimeText: integer;
JukeboxTextTimeDesc: integer;
- //JukeboxTextSongText: integer;
+ JukeboxTextSongText: integer; //Button of Songtitle
SongFinish: boolean;
@@ -489,14 +489,14 @@ begin
OrderMode := false;
Button[JukeboxSongListOrder].SetSelect(false);
try
- //Button[JukeboxSongListOrder].Text[0].Text := Language.Translate('OPTION_VALUE_ARTIST'); /hackyhack
+ Button[JukeboxSongListOrder].Text[0].Text := Language.Translate('OPTION_VALUE_ARTIST');
finally
end;
end;
end;
- //Button[JukeboxFindSong].Text[0].Text := ''; /hackyhack
+ Button[JukeboxFindSong].Text[0].Text := '';
Button[JukeboxLyric].SetSelect(true);
Button[JukeboxRandomSongList].SetSelect(false);
@@ -610,6 +610,57 @@ begin
Inc(fTimebarMode);
Exit;
end;
+
+ // allow search for songs
+ Ord('J'):
+ begin
+ LastTick := SDL_GetTicks();
+ FindSongList := not FindSongList;
+ if (Filter = '') then
+ begin
+ if (FindSongList) then
+ Button[JukeboxFindSong].Text[0].Text := '';
+ end;
+ Button[JukeboxFindSong].SetSelect(FindSongList);
+ if FindSongList then
+ FilterSongList(Filter)
+ else
+ FilterSongList('');
+ Exit;
+ end;
+
+ //Randomixe Playlist
+ Ord('R'):
+ begin
+ if (SongListVisible) then
+ begin
+ LastTick := SDL_GetTicks();
+
+ Button[JukeboxRandomSongList].SetSelect(true);
+ Button[JukeboxSongListOrder].SetSelect(false);
+
+ RandomMode := true;
+ OrderMode := false;
+
+ for I := 0 to High(JukeboxVisibleSongs) * 2 do
+ begin
+ RValueI := RandomRange(0, High(JukeboxVisibleSongs) + 1);
+ RValueE := RandomRange(0, High(JukeboxVisibleSongs) + 1);
+
+ tmp := JukeboxVisibleSongs[RValueI];
+ JukeboxVisibleSongs[RValueI] := JukeboxVisibleSongs[RValueE];
+ JukeboxVisibleSongs[RValueE] := tmp;
+
+ if (RValueI = CurrentSongList) then
+ CurrentSongList := RValueE
+ else
+ begin
+ if (RValueE = CurrentSongList) then
+ CurrentSongList := RValueI;
+ end;
+ end;
+ end;
+ end;
end;
end;
@@ -704,65 +755,6 @@ begin
end;
end;
- SDLK_F:
- begin
-
- if (SongListVisible) and (SDL_ModState = KMOD_LCTRL) then
- begin
- LastTick := SDL_GetTicks();
-
- FindSongList := not FindSongList;
-
- if (Filter = '') then
- begin
- if (FindSongList) then
- Button[JukeboxFindSong].Text[0].Text := ''
- end;
-
- Button[JukeboxFindSong].SetSelect(FindSongList);
-
- if not (FindSongList) then
- FilterSongList('')
- else
- FilterSongList(Filter);
-
- Exit;
- end;
- end;
-
- SDLK_R:
- begin
-
- if (SongListVisible) and (SDL_ModState = KMOD_LCTRL) then
- begin
- LastTick := SDL_GetTicks();
-
- Button[JukeboxRandomSongList].SetSelect(true);
- Button[JukeboxSongListOrder].SetSelect(false);
-
- RandomMode := true;
- OrderMode := false;
-
- for I := 0 to High(JukeboxVisibleSongs) * 2 do
- begin
- RValueI := RandomRange(0, High(JukeboxVisibleSongs) + 1);
- RValueE := RandomRange(0, High(JukeboxVisibleSongs) + 1);
-
- tmp := JukeboxVisibleSongs[RValueI];
- JukeboxVisibleSongs[RValueI] := JukeboxVisibleSongs[RValueE];
- JukeboxVisibleSongs[RValueE] := tmp;
-
- if (RValueI = CurrentSongList) then
- CurrentSongList := RValueE
- else
- begin
- if (RValueE = CurrentSongList) then
- CurrentSongList := RValueI;
- end;
- end;
- end;
- end;
-
SDLK_ESCAPE:
begin
if (SongListVisible) then
@@ -1097,7 +1089,7 @@ begin
JukeboxTextTimeText := AddText(Theme.Jukebox.TextTimeText);
JukeboxTextTimeDesc := AddText(Theme.Jukebox.TextTimeDesc);
-// JukeboxTextSongText := AddText(Theme.Jukebox.TextSongText);
+ JukeboxTextSongText := AddText(Theme.Jukebox.TextSongText);
PosY := Theme.Jukebox.SongDescription.Y;
for I := 0 to 9 do
@@ -1531,7 +1523,7 @@ begin
Text[JukeboxTextTimeText].Draw;
Text[JukeboxTextTimeDesc].Draw;
- // Text[JukeboxTextSongText].Draw;
+ Text[JukeboxTextSongText].Draw;
// options desc
Text[JukeboxTextOptionsSongPosition].Draw;
@@ -1713,6 +1705,9 @@ begin
Lyrics.AddLine(@Lines[0].Line[Lyrics.LineCounter]);
end;
+ Text[JukeboxTextSongText].Visible := true;
+ Text[JukeboxTextSongText].Text := CurrentSong.Artist + ' - ' + CurrentSong.Title;
+
Max := 9;
if (High(JukeboxVisibleSongs) < 9) then