From: Maksym Veremeyenko Date: Wed, 22 Jun 2011 13:30:09 +0000 (+0300) Subject: add sorting for items X-Git-Url: http://research.m1stereo.tv/gitweb?a=commitdiff_plain;h=dd6ffa0e99fe56df3943ce188cad1fc239f4ff3c;hp=6a5426081f08dd9119a2b34d384519b6bff9a5d6;p=omnplay add sorting for items --- diff --git a/src/library.c b/src/library.c index 5836cf7..9c0fe49 100644 --- a/src/library.c +++ b/src/library.c @@ -32,6 +32,27 @@ #include "ui.h" #include "timecode.h" +void omnplay_library_sort(omnplay_instance_t* app) +{ + int i, j, m; + playlist_item_t item; + + for(i = 0; i < app->library.count; i++) + { + /* find max */ + for(j = i + 1, m = i; j < app->library.count; j++) + if(strcasecmp(app->library.item[j].id, app->library.item[m].id) < 0) + m = j; + + if(m != i) + { + item = app->library.item[i]; + app->library.item[i] = app->library.item[m]; + app->library.item[m] = item; + }; + }; +}; + int omnplay_library_load_file(playlist_item_t* items, int *pcount, char* filename) { int i, c = 0, r = 0; @@ -104,6 +125,8 @@ void omnplay_library_load(omnplay_instance_t* app) omnplay_library_load_file(app->library.item, &app->library.count, app->library.filename); }; + omnplay_library_sort(app); + pthread_mutex_unlock(&app->library.lock); omnplay_library_draw(app); @@ -167,6 +190,8 @@ void omnplay_library_refresh(omnplay_instance_t* app) app->library.count = count; + omnplay_library_sort(app); + pthread_mutex_unlock(&app->library.lock); omnplay_library_draw(app);