Skip to content
Snippets Groups Projects
Commit bb1a55aa authored by Felix Paul Kühne's avatar Felix Paul Kühne
Browse files

macosx/playlist controller: expose sorting

parent c829e34b
No related branches found
No related tags found
No related merge requests found
......@@ -142,6 +142,30 @@ extern NSString *VLCPlaylistItemsRemoved;
*/
- (void)clearPlaylist;
/**
* Sort the entire playlist listen based on:
* @param sortKey the key used for sorting
* @param sortOrder sort ascending or descending..
* @return Returns VLC_SUCCESS on success.
*/
- (int)sortByKey:(enum vlc_playlist_sort_key)sortKey andOrder:(enum vlc_playlist_sort_order)sortOrder;
/**
* Initially, the playlist is unsorted until the user decides to do so
* Until then, the unsorted state is retained.
*/
@property (readonly) BOOL unsorted;
/**
* The last key used for sorting
*/
@property (readonly) enum vlc_playlist_sort_key lastSortKey;
/**
* The last order used for sorting
*/
@property (readonly) enum vlc_playlist_sort_order lastSortOrder;
/**
* Start the playlist
* @return Returns VLC_SUCCESS on success.
......
......@@ -210,6 +210,7 @@ static const struct vlc_playlist_callbacks playlist_callbacks = {
/* set initial values, further updates through callbacks */
vlc_playlist_Lock(_p_playlist);
_unsorted = YES;
_playbackOrder = vlc_playlist_GetPlaybackOrder(_p_playlist);
_playbackRepeat = vlc_playlist_GetPlaybackRepeat(_p_playlist);
_playlistListenerID = vlc_playlist_AddListener(_p_playlist,
......@@ -424,6 +425,21 @@ static const struct vlc_playlist_callbacks playlist_callbacks = {
vlc_playlist_Unlock(_p_playlist);
}
- (int)sortByKey:(enum vlc_playlist_sort_key)sortKey andOrder:(enum vlc_playlist_sort_order)sortOrder
{
struct vlc_playlist_sort_criterion sortCriterion = { sortKey, sortOrder };
int returnValue = VLC_SUCCESS;
vlc_playlist_Lock(_p_playlist);
returnValue = vlc_playlist_Sort(_p_playlist, &sortCriterion, 1);
vlc_playlist_Unlock(_p_playlist);
if (returnValue == VLC_SUCCESS) {
_lastSortKey = sortKey;
_lastSortOrder = sortOrder;
_unsorted = NO;
}
return returnValue;
}
- (int)startPlaylist
{
NSInteger selectedIndex = [_playlistDataSource.tableView selectedRow];
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment