diff options
author | horchi <vdr@jwendel.de> | 2018-03-03 09:03:00 +0100 |
---|---|---|
committer | horchi <vdr@jwendel.de> | 2018-03-03 09:03:00 +0100 |
commit | 5b03953fd15cce03138c91a4398d30f58645cc93 (patch) | |
tree | 9acce13c95bf1a177783a8c2e551f3885d316aec /coreengine | |
parent | 9647640dc7017c2cdaa34037d5114ecdd212466b (diff) | |
download | vdr-plugin-skindesigner-5b03953fd15cce03138c91a4398d30f58645cc93.tar.gz vdr-plugin-skindesigner-5b03953fd15cce03138c91a4398d30f58645cc93.tar.bz2 |
anged menu numbering handling vor mcMain1.2.7
Diffstat (limited to 'coreengine')
-rw-r--r-- | coreengine/listelements.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/coreengine/listelements.c b/coreengine/listelements.c index 7c8da35..9a2108b 100644 --- a/coreengine/listelements.c +++ b/coreengine/listelements.c @@ -474,6 +474,31 @@ cVeMenuMain::~cVeMenuMain(void) { free(label); } +int countDigits(int arg) +{ + return snprintf(NULL, 0, "%d", arg) - (arg < 0); +} + +void cVeMenuMain::SplitText(void) { + char* string = skipspace(text); + unsigned int num = atoi(string); + int digits = countDigits(num); + + free(number); + free(label); + + if (digits > 0 && digits < 4 && string[digits] == ' ') + { + if (asprintf(&label, "%s", string+digits+1)) ; + if (asprintf(&number, "%d", num)) ; + } + else + { + if (asprintf(&label, "%s", string)) ; + number = strdup(""); + } +} +/* void cVeMenuMain::SplitText(void) { char *start = skipspace(text); bool found = false; @@ -521,6 +546,7 @@ void cVeMenuMain::SplitText(void) { } label = strdup(skipspace(c)); } +*/ /****************************************************************** * cLeMenuMain |