summaryrefslogtreecommitdiffstats
path: root/apps/settings_menu.c
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2007-02-01 13:57:14 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2007-02-01 13:57:14 +0000
commitf0d2861fc58a81ad6dc520279c42710b1d02e20a (patch)
tree0fce27f201cc74d4fff6f19701f21a49c3c39722 /apps/settings_menu.c
parentc47172a48059c473350b78a68c25b0cbf368fac1 (diff)
downloadrockbox-f0d2861fc58a81ad6dc520279c42710b1d02e20a.tar.gz
rockbox-f0d2861fc58a81ad6dc520279c42710b1d02e20a.zip
when saving config.cfg, only save settings which are not the same as
default, hopefully will give a small boost to saving and loading times. Doing a manual save from "manage settings" > "write config" will save every setting. Adds an option to save a cfg file from only the settings needed in a theme .cfg (I may have missed some so let me know). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12172 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/settings_menu.c')
-rw-r--r--apps/settings_menu.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/apps/settings_menu.c b/apps/settings_menu.c
index b1204e2c1a..8e6fbd02d7 100644
--- a/apps/settings_menu.c
+++ b/apps/settings_menu.c
@@ -2161,6 +2161,14 @@ static bool time_settings_menu(void)
return result;
}
#endif
+static bool manage_settings_write_config(void)
+{
+ return settings_save_config(SETTINGS_SAVE_ALL);
+}
+static bool manage_settings_write_theme(void)
+{
+ return settings_save_config(SETTINGS_SAVE_THEME);
+}
bool manage_settings_menu(void)
{
@@ -2170,7 +2178,8 @@ bool manage_settings_menu(void)
static const struct menu_item items[] = {
{ ID2P(LANG_CUSTOM_CFG), custom_cfg_browse },
{ ID2P(LANG_RESET), reset_settings },
- { ID2P(LANG_SAVE_SETTINGS), settings_save_config },
+ { ID2P(LANG_SAVE_SETTINGS), manage_settings_write_config},
+ { ID2P(LANG_SAVE_THEME), manage_settings_write_theme},
};
m=menu_init( items, sizeof(items) / sizeof(*items), NULL,