diff options
author | Thomas Martitz <kugel@rockbox.org> | 2009-03-01 17:55:59 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2009-03-01 17:55:59 +0000 |
commit | d13f1a485f0e35a6fbbd0a664f14acc3798d52a0 (patch) | |
tree | 22cacb27b6ab481c0bfc250120dde404320811f2 /apps/settings.h | |
parent | e6c023cb64dea599bb711b2b4ddb197efdb1d187 (diff) | |
download | rockbox-d13f1a485f0e35a6fbbd0a664f14acc3798d52a0.tar.gz rockbox-d13f1a485f0e35a6fbbd0a664f14acc3798d52a0.zip |
Commit FS#8314. This adds strnat[case]cmp written by Martin Pool, which respects numbers within strings, and gives a more intuitive
sorting. This also adds a setting, so that the sorting can be used in the file browser. The implementation is very generic, and can possibly
be used in other places.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20155 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/settings.h')
-rw-r--r-- | apps/settings.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/settings.h b/apps/settings.h index 7f5f025a8f..669000ea42 100644 --- a/apps/settings.h +++ b/apps/settings.h | |||
@@ -147,6 +147,7 @@ enum { SHOW_ALL, SHOW_SUPPORTED, SHOW_MUSIC, SHOW_PLAYLIST, SHOW_ID3DB, | |||
147 | /* file and dir sort options */ | 147 | /* file and dir sort options */ |
148 | enum { SORT_ALPHA, SORT_DATE, SORT_DATE_REVERSED, SORT_TYPE, /* available as settings */ | 148 | enum { SORT_ALPHA, SORT_DATE, SORT_DATE_REVERSED, SORT_TYPE, /* available as settings */ |
149 | SORT_ALPHA_REVERSED, SORT_TYPE_REVERSED }; /* internal use only */ | 149 | SORT_ALPHA_REVERSED, SORT_TYPE_REVERSED }; /* internal use only */ |
150 | enum { SORT_INTERPRET_AS_DIGIT, SORT_INTERPRET_AS_NUMBER }; | ||
150 | 151 | ||
151 | /* recursive dir insert options */ | 152 | /* recursive dir insert options */ |
152 | enum { RECURSE_OFF, RECURSE_ON, RECURSE_ASK }; | 153 | enum { RECURSE_OFF, RECURSE_ON, RECURSE_ASK }; |
@@ -612,8 +613,9 @@ struct user_settings | |||
612 | 613 | ||
613 | /* file browser sorting */ | 614 | /* file browser sorting */ |
614 | bool sort_case; /* dir sort order: 0=case insensitive, 1=sensitive */ | 615 | bool sort_case; /* dir sort order: 0=case insensitive, 1=sensitive */ |
615 | int sort_file; /* 0=alpha, 1=date, 2=date (new first), 3=type */ | ||
616 | int sort_dir; /* 0=alpha, 1=date (old first), 2=date (new first) */ | 616 | int sort_dir; /* 0=alpha, 1=date (old first), 2=date (new first) */ |
617 | int sort_file; /* 0=alpha, 1=date, 2=date (new first), 3=type */ | ||
618 | int interpret_numbers; /* true=strnatcmp, false=strcmp */ | ||
617 | 619 | ||
618 | /* power settings */ | 620 | /* power settings */ |
619 | int poweroff; /* idle power off timer */ | 621 | int poweroff; /* idle power off timer */ |