summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Levin <al.le@rockbox.org>2009-07-01 11:21:59 +0000
committerAlexander Levin <al.le@rockbox.org>2009-07-01 11:21:59 +0000
commit7398c2d20dca04e6240536546e09583159d0cc10 (patch)
treeb47c44232e111a3842b86101b330f155bcec5ad0
parenta85f3695ef71352316c24b2497ddd9f089edd0c3 (diff)
downloadrockbox-7398c2d20dca04e6240536546e09583159d0cc10.tar.gz
rockbox-7398c2d20dca04e6240536546e09583159d0cc10.zip
Provide a context sensitive default file name when saving settings (FS#10399)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21589 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/settings.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/apps/settings.c b/apps/settings.c
index 1d5af5678e..4616a7f49d 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -620,27 +620,35 @@ int settings_save(void)
620bool settings_save_config(int options) 620bool settings_save_config(int options)
621{ 621{
622 char filename[MAX_PATH]; 622 char filename[MAX_PATH];
623 char *folder; 623 char *folder, *namebase;
624 switch (options) 624 switch (options)
625 { 625 {
626 case SETTINGS_SAVE_THEME: 626 case SETTINGS_SAVE_THEME:
627 folder = THEME_DIR; 627 folder = THEME_DIR;
628 namebase = "theme";
628 break; 629 break;
629#ifdef HAVE_RECORDING 630#ifdef HAVE_RECORDING
630 case SETTINGS_SAVE_RECPRESETS: 631 case SETTINGS_SAVE_RECPRESETS:
631 folder = RECPRESETS_DIR; 632 folder = RECPRESETS_DIR;
633 namebase = "recording";
632 break; 634 break;
633#endif 635#endif
634#if CONFIG_CODEC == SWCODEC 636#if CONFIG_CODEC == SWCODEC
635 case SETTINGS_SAVE_EQPRESET: 637 case SETTINGS_SAVE_EQPRESET:
636 folder = EQS_DIR; 638 folder = EQS_DIR;
639 namebase = "eq";
637 break; 640 break;
638#endif 641#endif
639 case SETTINGS_SAVE_SOUND: 642 case SETTINGS_SAVE_SOUND:
643 folder = ROCKBOX_DIR;
644 namebase = "sound";
645 break;
640 default: 646 default:
641 folder = ROCKBOX_DIR; 647 folder = ROCKBOX_DIR;
648 namebase = "config";
649 break;
642 } 650 }
643 create_numbered_filename(filename, folder, "config", ".cfg", 2 651 create_numbered_filename(filename, folder, namebase, ".cfg", 2
644 IF_CNFN_NUM_(, NULL)); 652 IF_CNFN_NUM_(, NULL));
645 653
646 /* allow user to modify filename */ 654 /* allow user to modify filename */