From fa8e59c1ff72e08e999c882ce28599a9919561cf Mon Sep 17 00:00:00 2001 From: twinaphex Date: Thu, 20 Oct 2016 15:49:00 +0200 Subject: [PATCH] Create menu_entry_get_sublabel --- menu/widgets/menu_entry.c | 23 +++++++++++++++++++++++ menu/widgets/menu_entry.h | 2 ++ 2 files changed, 25 insertions(+) diff --git a/menu/widgets/menu_entry.c b/menu/widgets/menu_entry.c index 76371f1c85..f5a368efc4 100644 --- a/menu/widgets/menu_entry.c +++ b/menu/widgets/menu_entry.c @@ -121,6 +121,29 @@ void menu_entry_get_rich_label(uint32_t i, char *s, size_t len) strlcpy(s, entry.path, len); } +void menu_entry_get_sublabel(uint32_t i, char *s, size_t len) +{ + menu_entry_t entry; + + entry.path[0] = '\0'; + entry.label[0] = '\0'; + entry.sublabel[0] = '\0'; + entry.value[0] = '\0'; + entry.rich_label[0] = '\0'; + entry.enum_idx = MSG_UNKNOWN; + entry.entry_idx = 0; + entry.idx = 0; + entry.type = 0; + entry.spacing = 0; + + menu_entry_get(&entry, 0, i, NULL, true); + + if (!string_is_empty(entry.sublabel)) + strlcpy(s, entry.sublabel, len); + else + strlcpy(s, entry.path, len); +} + void menu_entry_get_label(uint32_t i, char *s, size_t len) { menu_entry_t entry; diff --git a/menu/widgets/menu_entry.h b/menu/widgets/menu_entry.h index 741263ffeb..2c8afa9540 100644 --- a/menu/widgets/menu_entry.h +++ b/menu/widgets/menu_entry.h @@ -95,6 +95,8 @@ void menu_entry_reset(uint32_t i); void menu_entry_get_rich_label(uint32_t i, char *s, size_t len); +void menu_entry_get_sublabel(uint32_t i, char *s, size_t len); + void menu_entry_get_value(uint32_t i, void *data, char *s, size_t len); void menu_entry_set_value(uint32_t i, const char *s);