summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2005-11-22 11:31:28 +0000
committerJens Arnold <amiconn@rockbox.org>2005-11-22 11:31:28 +0000
commitfd02642ee0238ae2b32b7a5ea7005abf0e72489d (patch)
tree9e1b3eb683698210e439fb3867b0709d6f1bb03a /apps
parentbe15957c247acf928ebb07f2bc327fffa6a34baa (diff)
downloadrockbox-fd02642ee0238ae2b32b7a5ea7005abf0e72489d.tar.gz
rockbox-fd02642ee0238ae2b32b7a5ea7005abf0e72489d.zip
Fixed truncated option strings for numeric settings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8043 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/gui/option_select.c7
-rw-r--r--apps/gui/option_select.h4
-rw-r--r--apps/gui/quickscreen.c6
-rw-r--r--apps/gui/select.c3
4 files changed, 12 insertions, 8 deletions
diff --git a/apps/gui/option_select.c b/apps/gui/option_select.c
index 0e169617c4..68103c77c3 100644
--- a/apps/gui/option_select.c
+++ b/apps/gui/option_select.c
@@ -90,13 +90,14 @@ void option_select_prev(struct option_select * opt)
90 opt->option-=opt->step; 90 opt->option-=opt->step;
91} 91}
92 92
93const char * option_select_get_text(struct option_select * opt, char * buffer) 93const char * option_select_get_text(struct option_select * opt, char * buffer,
94 int buffersize)
94{ 95{
95 if(opt->items) 96 if(opt->items)
96 return(P2STR(opt->items[opt->option].string)); 97 return(P2STR(opt->items[opt->option].string));
97 if(!opt->formatter) 98 if(!opt->formatter)
98 snprintf(buffer, sizeof buffer,"%d %s", opt->option, opt->extra_string); 99 snprintf(buffer, buffersize,"%d %s", opt->option, opt->extra_string);
99 else 100 else
100 opt->formatter(buffer, sizeof buffer, opt->option, opt->extra_string); 101 opt->formatter(buffer, buffersize, opt->option, opt->extra_string);
101 return(buffer); 102 return(buffer);
102} 103}
diff --git a/apps/gui/option_select.h b/apps/gui/option_select.h
index c6a5e196f0..f667993781 100644
--- a/apps/gui/option_select.h
+++ b/apps/gui/option_select.h
@@ -77,7 +77,9 @@ extern void option_select_init_items(struct option_select * opt,
77 * - buffer : a buffer to eventually format the option 77 * - buffer : a buffer to eventually format the option
78 * Returns the selected option 78 * Returns the selected option
79 */ 79 */
80extern const char * option_select_get_text(struct option_select * opt, char * buffer); 80extern const char * option_select_get_text(struct option_select * opt,
81 char * buffer,
82 int buffersize);
81 83
82/* 84/*
83 * Selects the next value 85 * Selects the next value
diff --git a/apps/gui/quickscreen.c b/apps/gui/quickscreen.c
index 760c1bdb00..a11107cb51 100644
--- a/apps/gui/quickscreen.c
+++ b/apps/gui/quickscreen.c
@@ -66,14 +66,14 @@ void gui_quickscreen_draw(struct gui_quickscreen * qs, struct screen * display)
66 66
67 /* Displays the left's text */ 67 /* Displays the left's text */
68 title=option_select_get_title(qs->left_option); 68 title=option_select_get_title(qs->left_option);
69 option=option_select_get_text(qs->left_option, buffer); 69 option=option_select_get_text(qs->left_option, buffer, sizeof buffer);
70 display->putsxy(0, display->height/2 - h*2, title); 70 display->putsxy(0, display->height/2 - h*2, title);
71 display->putsxy(0, display->height/2 - h, qs->left_right_title); 71 display->putsxy(0, display->height/2 - h, qs->left_right_title);
72 display->putsxy(0, display->height/2, option); 72 display->putsxy(0, display->height/2, option);
73 73
74 /* Displays the bottom's text */ 74 /* Displays the bottom's text */
75 title=option_select_get_title(qs->bottom_option); 75 title=option_select_get_title(qs->bottom_option);
76 option=option_select_get_text(qs->bottom_option, buffer); 76 option=option_select_get_text(qs->bottom_option, buffer, sizeof buffer);
77 display->getstringsize(title, &w, &h); 77 display->getstringsize(title, &w, &h);
78 display->putsxy((display->width-w)/2, display->height - h*2, title); 78 display->putsxy((display->width-w)/2, display->height - h*2, title);
79 display->getstringsize(option, &w, &h); 79 display->getstringsize(option, &w, &h);
@@ -81,7 +81,7 @@ void gui_quickscreen_draw(struct gui_quickscreen * qs, struct screen * display)
81 81
82 /* Displays the right's text */ 82 /* Displays the right's text */
83 title=option_select_get_title(qs->right_option); 83 title=option_select_get_title(qs->right_option);
84 option=option_select_get_text(qs->right_option, buffer); 84 option=option_select_get_text(qs->right_option, buffer, sizeof buffer);
85 display->getstringsize(title,&w,&h); 85 display->getstringsize(title,&w,&h);
86 display->putsxy(display->width - w, display->height/2 - h*2, title); 86 display->putsxy(display->width - w, display->height/2 - h*2, title);
87 display->getstringsize(qs->left_right_title,&w,&h); 87 display->getstringsize(qs->left_right_title,&w,&h);
diff --git a/apps/gui/select.c b/apps/gui/select.c
index b632177fd7..2f3bddec68 100644
--- a/apps/gui/select.c
+++ b/apps/gui/select.c
@@ -54,7 +54,8 @@ void gui_select_init_items(struct gui_select * select,
54void gui_select_draw(struct gui_select * select, struct screen * display) 54void gui_select_draw(struct gui_select * select, struct screen * display)
55{ 55{
56 char buffer[30]; 56 char buffer[30];
57 const char * selected=option_select_get_text(&(select->options), buffer); 57 const char * selected=option_select_get_text(&(select->options), buffer,
58 sizeof buffer);
58#ifdef HAVE_LCD_BITMAP 59#ifdef HAVE_LCD_BITMAP
59 screen_set_xmargin(display, 0); 60 screen_set_xmargin(display, 0);
60#endif 61#endif