summaryrefslogtreecommitdiff
path: root/apps/settings.h
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2009-03-01 17:55:59 +0000
committerThomas Martitz <kugel@rockbox.org>2009-03-01 17:55:59 +0000
commitd13f1a485f0e35a6fbbd0a664f14acc3798d52a0 (patch)
tree22cacb27b6ab481c0bfc250120dde404320811f2 /apps/settings.h
parente6c023cb64dea599bb711b2b4ddb197efdb1d187 (diff)
downloadrockbox-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.h4
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 */
148enum { SORT_ALPHA, SORT_DATE, SORT_DATE_REVERSED, SORT_TYPE, /* available as settings */ 148enum { 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 */
150enum { SORT_INTERPRET_AS_DIGIT, SORT_INTERPRET_AS_NUMBER };
150 151
151/* recursive dir insert options */ 152/* recursive dir insert options */
152enum { RECURSE_OFF, RECURSE_ON, RECURSE_ASK }; 153enum { 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 */