summaryrefslogtreecommitdiff
path: root/apps/gui/bitmap/list.c
diff options
context:
space:
mode:
authorWilliam Wilgus <me.theuser@yahoo.com>2019-11-02 06:15:01 -0500
committerWilliam Wilgus <me.theuser@yahoo.com>2020-11-14 00:01:39 +0000
commit43f90746d5610a36eaf7dc98b9fa3ca17ee6010e (patch)
treece47b270bfbfe184bf1f94b7097ac30a7478563e /apps/gui/bitmap/list.c
parent610ad6f6e34282333114cc83d4c65300da71a40c (diff)
downloadrockbox-43f90746d5610a36eaf7dc98b9fa3ca17ee6010e.tar.gz
rockbox-43f90746d5610a36eaf7dc98b9fa3ca17ee6010e.zip
synclist add method for setting selection color
Change-Id: I8c8761d92f4fc99f65d45098ee6e97800d3fe002
Diffstat (limited to 'apps/gui/bitmap/list.c')
-rw-r--r--apps/gui/bitmap/list.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/apps/gui/bitmap/list.c b/apps/gui/bitmap/list.c
index 27121eac56..1d2df73e09 100644
--- a/apps/gui/bitmap/list.c
+++ b/apps/gui/bitmap/list.c
@@ -228,8 +228,6 @@ void list_draw(struct screen *display, struct gui_synclist *list)
228 int line_indent = 0; 228 int line_indent = 0;
229 int style = STYLE_DEFAULT; 229 int style = STYLE_DEFAULT;
230 bool is_selected = false; 230 bool is_selected = false;
231 icon = list->callback_get_item_icon ?
232 list->callback_get_item_icon(i, list->data) : Icon_NOICON;
233 s = list->callback_get_item_name(i, list->data, entry_buffer, 231 s = list->callback_get_item_name(i, list->data, entry_buffer,
234 sizeof(entry_buffer)); 232 sizeof(entry_buffer));
235 entry_name = P2STR(s); 233 entry_name = P2STR(s);
@@ -265,6 +263,17 @@ void list_draw(struct screen *display, struct gui_synclist *list)
265 && i < list->selected_item + list->selected_size 263 && i < list->selected_item + list->selected_size
266 && list->show_selection_marker) 264 && list->show_selection_marker)
267 {/* The selected item must be displayed scrolling */ 265 {/* The selected item must be displayed scrolling */
266#ifdef HAVE_LCD_COLOR
267 if (list->selection_color)
268 {
269 /* Display gradient line selector */
270 style = STYLE_GRADIENT;
271 linedes.text_color = list->selection_color->text_color;
272 linedes.line_color = list->selection_color->line_color;
273 linedes.line_end_color = list->selection_color->line_end_color;
274 }
275 else
276#endif
268 if (global_settings.cursor_style == 1 277 if (global_settings.cursor_style == 1
269#ifdef HAVE_REMOTE_LCD 278#ifdef HAVE_REMOTE_LCD
270 /* the global_settings.cursor_style check is here to make 279 /* the global_settings.cursor_style check is here to make
@@ -313,7 +322,8 @@ void list_draw(struct screen *display, struct gui_synclist *list)
313 linedes.style = style; 322 linedes.style = style;
314 linedes.scroll = is_selected ? true : list->scroll_all; 323 linedes.scroll = is_selected ? true : list->scroll_all;
315 linedes.line = i % list->selected_size; 324 linedes.line = i % list->selected_size;
316 325 icon = list->callback_get_item_icon ?
326 list->callback_get_item_icon(i, list->data) : Icon_NOICON;
317 /* the list can have both, one of or neither of cursor and item icons, 327 /* the list can have both, one of or neither of cursor and item icons,
318 * if both don't apply icon padding twice between the icons */ 328 * if both don't apply icon padding twice between the icons */
319 if (show_cursor && have_icons) 329 if (show_cursor && have_icons)