diff options
Diffstat (limited to 'apps/tree.c')
-rw-r--r-- | apps/tree.c | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/apps/tree.c b/apps/tree.c index fcab64f49d..bd2f8c2a2b 100644 --- a/apps/tree.c +++ b/apps/tree.c | |||
@@ -1114,8 +1114,6 @@ bool dirbrowse(char *root) | |||
1114 | 1114 | ||
1115 | /* wps config file */ | 1115 | /* wps config file */ |
1116 | case TREE_ATTR_WPS: | 1116 | case TREE_ATTR_WPS: |
1117 | snprintf(buf, sizeof buf, "%s/%s", | ||
1118 | currdir, file->name); | ||
1119 | wps_load(buf,true); | 1117 | wps_load(buf,true); |
1120 | storefile(file->name, global_settings.wps_file, | 1118 | storefile(file->name, global_settings.wps_file, |
1121 | MAX_FILENAME); | 1119 | MAX_FILENAME); |
@@ -1123,22 +1121,34 @@ bool dirbrowse(char *root) | |||
1123 | break; | 1121 | break; |
1124 | 1122 | ||
1125 | case TREE_ATTR_CFG: | 1123 | case TREE_ATTR_CFG: |
1126 | snprintf(buf, sizeof buf, "%s/%s", | 1124 | if (!settings_load_config(buf)) |
1127 | currdir, file->name); | 1125 | break; |
1128 | settings_load_config(buf); | 1126 | lcd_clear_display(); |
1127 | lcd_puts(0,0,str(LANG_SETTINGS_LOADED1)); | ||
1128 | lcd_puts(0,1,str(LANG_SETTINGS_LOADED2)); | ||
1129 | #ifdef HAVE_LCD_BITMAP | ||
1130 | lcd_update(); | ||
1131 | |||
1132 | /* maybe we have a new font */ | ||
1133 | lcd_getstringsize("A", &fw, &fh); | ||
1134 | tree_max_on_screen = (LCD_HEIGHT - MARGIN_Y) / fh; | ||
1135 | /* make sure cursor is on screen */ | ||
1136 | while ( dircursor > tree_max_on_screen ) | ||
1137 | { | ||
1138 | dircursor--; | ||
1139 | dirstart++; | ||
1140 | } | ||
1141 | #endif | ||
1142 | sleep(HZ/2); | ||
1129 | restore = true; | 1143 | restore = true; |
1130 | break; | 1144 | break; |
1131 | 1145 | ||
1132 | case TREE_ATTR_TXT: | 1146 | case TREE_ATTR_TXT: |
1133 | snprintf(buf, sizeof buf, "%s/%s", | ||
1134 | currdir, file->name); | ||
1135 | viewer_run(buf); | 1147 | viewer_run(buf); |
1136 | restore = true; | 1148 | restore = true; |
1137 | break; | 1149 | break; |
1138 | 1150 | ||
1139 | case TREE_ATTR_LNG: | 1151 | case TREE_ATTR_LNG: |
1140 | snprintf(buf, sizeof buf, "%s/%s", | ||
1141 | currdir, file->name); | ||
1142 | if(!lang_load(buf)) { | 1152 | if(!lang_load(buf)) { |
1143 | storefile(file->name, | 1153 | storefile(file->name, |
1144 | global_settings.lang_file, | 1154 | global_settings.lang_file, |
@@ -1166,8 +1176,6 @@ bool dirbrowse(char *root) | |||
1166 | 1176 | ||
1167 | #ifdef HAVE_LCD_BITMAP | 1177 | #ifdef HAVE_LCD_BITMAP |
1168 | case TREE_ATTR_FONT: | 1178 | case TREE_ATTR_FONT: |
1169 | snprintf(buf, sizeof buf, "%s/%s", | ||
1170 | currdir, file->name); | ||
1171 | font_load(buf); | 1179 | font_load(buf); |
1172 | storefile(file->name, global_settings.font_file, | 1180 | storefile(file->name, global_settings.font_file, |
1173 | MAX_FILENAME); | 1181 | MAX_FILENAME); |
@@ -1186,8 +1194,6 @@ bool dirbrowse(char *root) | |||
1186 | #ifndef SIMULATOR | 1194 | #ifndef SIMULATOR |
1187 | /* firmware file */ | 1195 | /* firmware file */ |
1188 | case TREE_ATTR_MOD: | 1196 | case TREE_ATTR_MOD: |
1189 | snprintf(buf, sizeof buf, "%s/%s", | ||
1190 | currdir, file->name); | ||
1191 | rolo_load(buf); | 1197 | rolo_load(buf); |
1192 | break; | 1198 | break; |
1193 | #endif | 1199 | #endif |