|
OpenTTD Source
1.10.0-RC1
|
Data Structures | |
| struct | PlaylistEntry |
Public Types | |
| enum | PlaylistChoices { PLCH_ALLMUSIC, PLCH_OLDSTYLE, PLCH_NEWSTYLE, PLCH_EZYSTREET, PLCH_CUSTOM1, PLCH_CUSTOM2, PLCH_THEMEONLY, PLCH_MAX } |
| typedef std::vector< PlaylistEntry > | Playlist |
Public Member Functions | |
| void | BuildPlaylists () |
| Rebuild all playlists for the current music set. | |
| void | ChangePlaylist (PlaylistChoices pl) |
| Switch to another playlist, or reload the current one. More... | |
| void | ChangeMusicSet (const char *set_name) |
| Change to named music set, and reset playback. More... | |
| void | Shuffle () |
| Enable shuffle mode and restart playback. | |
| void | Unshuffle () |
| Disable shuffle and restart playback. | |
| void | Play () |
| Start/restart playback at current song. | |
| void | Stop () |
| Stop playback and set flag that we don't intend to play music. | |
| void | Next () |
| Skip to next track. | |
| void | Prev () |
| Skip to previous track. | |
| void | CheckStatus () |
| Check that music is playing if it should, and that appropriate playlist is active for game/main menu. | |
| bool | IsPlaying () const |
| Is the player getting music right now? | |
| bool | IsShuffle () const |
| Is shuffle mode enabled? | |
| PlaylistEntry | GetCurrentSong () const |
| Return the current song, or a dummy if none. | |
| bool | IsCustomPlaylist () const |
| Is one of the custom playlists selected? | |
| void | PlaylistAdd (size_t song_index) |
| Append a song to a custom playlist. More... | |
| void | PlaylistRemove (size_t song_index) |
| Remove a song from a custom playlist. More... | |
| void | PlaylistClear () |
| Remove all songs from the current custom playlist. More... | |
Data Fields | |
| Playlist | active_playlist |
| current play order of songs, including any shuffle | |
| Playlist | displayed_playlist |
| current playlist as displayed in GUI, never in shuffled order | |
| Playlist | music_set |
| all songs in current music set, in set order | |
| PlaylistChoices | selected_playlist |
Private Member Functions | |
| void | ChangePlaylistPosition (int ofs) |
| Change playlist position pointer by the given offset, making sure to keep it within valid range. More... | |
| void | SaveCustomPlaylist (PlaylistChoices pl) |
| Save a custom playlist to settings after modification. More... | |
Private Attributes | |
| int | playlist_position |
| Playlist | standard_playlists [PLCH_MAX] |
Definition at line 38 of file music_gui.cpp.
| void MusicSystem::ChangeMusicSet | ( | const char * | set_name | ) |
Change to named music set, and reset playback.
| set_name | Name of music set to select |
Definition at line 170 of file music_gui.cpp.
References BuildPlaylists(), ChangePlaylist(), free(), BaseMedia< MusicSet >::ini_set, InvalidateWindowData(), BaseMedia< MusicSet >::SetSet(), stredup(), WC_GAME_OPTIONS, and WN_GAME_OPTIONS_GAME_OPTIONS.
Referenced by ChangeMusicSet(), and MusicTrackSelectionWindow::OnDropdownSelect().
| void MusicSystem::ChangePlaylist | ( | PlaylistChoices | pl | ) |
Switch to another playlist, or reload the current one.
| pl | Playlist to select |
Definition at line 144 of file music_gui.cpp.
Referenced by ChangeMusicSet(), and PlaylistClear().
|
private |
Change playlist position pointer by the given offset, making sure to keep it within valid range.
If the playlist is empty, position is always set to 0.
| ofs | Amount to move playlist position by. |
Definition at line 384 of file music_gui.cpp.
References active_playlist.
| void MusicSystem::PlaylistAdd | ( | size_t | song_index | ) |
Append a song to a custom playlist.
Always adds to the currently active playlist.
| song_index | Index of song in the current music set to add |
Definition at line 298 of file music_gui.cpp.
References active_playlist, displayed_playlist, IsCustomPlaylist(), IsPlaying(), IsShuffle(), music_set, NUM_SONGS_PLAYLIST, and Play().
| void MusicSystem::PlaylistClear | ( | ) |
Remove all songs from the current custom playlist.
Effectively stops playback too.
Definition at line 369 of file music_gui.cpp.
References ChangePlaylist(), IsCustomPlaylist(), and SaveCustomPlaylist().
| void MusicSystem::PlaylistRemove | ( | size_t | song_index | ) |
Remove a song from a custom playlist.
| song_index | Index in the custom playlist to remove. |
Definition at line 337 of file music_gui.cpp.
References active_playlist, MusicSongInfo::cat_index, displayed_playlist, MusicSongInfo::filename, InvalidateWindowData(), IsCustomPlaylist(), IsPlaying(), Play(), SaveCustomPlaylist(), and WC_MUSIC_TRACK_SELECTION.
|
private |
Save a custom playlist to settings after modification.
| pl | Playlist to store back |
Definition at line 399 of file music_gui.cpp.
References _settings_client, MusicSettings::custom_1, MusicSettings::custom_2, MemSetT(), ClientSettings::music, and NUM_SONGS_PLAYLIST.
Referenced by PlaylistClear(), and PlaylistRemove().