From ef9c612400c17ff7a61a0c32814c420dd585013b Mon Sep 17 00:00:00 2001 From: vanhofen Date: Thu, 3 Jan 2019 21:55:33 +0100 Subject: [PATCH] lcd4linux: prepare for some more Samsung SPF types Origin commit data ------------------ Branch: ni/coolstream Commit: https://github.com/neutrino-images/ni-neutrino/commit/ef1c0352f5bb57f08ec4ce5d1577bb03e3eef4c1 Author: vanhofen Date: 2019-01-03 (Thu, 03 Jan 2019) Origin message was: ------------------ - lcd4linux: prepare for some more Samsung SPF types ------------------ No further description and justification available within origin commit message! ------------------ This commit was generated by Migit --- src/driver/lcd4l.cpp | 22 +++++++++++++++++----- src/driver/lcd4l.h | 6 ++++-- src/gui/lcd4l_setup.cpp | 6 ++++-- 3 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/driver/lcd4l.cpp b/src/driver/lcd4l.cpp index 923bcbf95..fd62dbfe9 100644 --- a/src/driver/lcd4l.cpp +++ b/src/driver/lcd4l.cpp @@ -197,10 +197,12 @@ int CLCD4l::GetMaxBrightness() switch (g_settings.lcd4l_display_type) { - case SAMSUNG: + case SAMSUNG800x480: + case SAMSUNG800x600: + case SAMSUNG1024x600: max_brightness = 10; break; - case PEARL: + case PEARL320x240: default: max_brightness = 7; break; @@ -736,10 +738,19 @@ void CLCD4l::ParseInfo(uint64_t parseID, bool newID, bool firstRun) switch (g_settings.lcd4l_display_type) { - case SAMSUNG: + case SAMSUNG800x480: + //DisplayType = "Samsung800x480_"; DisplayType = "Samsung_"; break; - case PEARL: + case SAMSUNG800x600: + //DisplayType = "Samsung800x600_"; + DisplayType = "Samsung_"; + break; + case SAMSUNG1024x600: + //DisplayType = "Samsung1024x600_"; + DisplayType = "Samsung_"; + break; + case PEARL320x240: default: DisplayType = "Pearl_"; break; @@ -1006,6 +1017,8 @@ bool CLCD4l::WriteFile(const char *file, std::string content, bool convert) strReplace(content, "Ä", "\xc4\0"); strReplace(content, "Ö", "\xd6\0"); strReplace(content, "Ü", "\xdc\0"); + if (g_settings.lcd4l_display_type == PEARL320x240) + strReplace(content, "ß", "\xe2\0"); strReplace(content, "Ą", "\x41\0"); strReplace(content, "ą", "\x61\0"); @@ -1026,7 +1039,6 @@ bool CLCD4l::WriteFile(const char *file, std::string content, bool convert) strReplace(content, "Ź", "\x5a\0"); strReplace(content, "ż", "\x7a\0"); - if (g_settings.lcd4l_display_type == PEARL) strReplace(content, "ß", "\xe2\0"); strReplace(content, "é", "e"); } diff --git a/src/driver/lcd4l.h b/src/driver/lcd4l.h index 59e91a86c..5d2a91224 100644 --- a/src/driver/lcd4l.h +++ b/src/driver/lcd4l.h @@ -41,8 +41,10 @@ class CLCD4l // Displays enum { - PEARL = 0, - SAMSUNG = 1 + PEARL320x240 = 0, + SAMSUNG800x480 = 1, + SAMSUNG800x600 = 2, + SAMSUNG1024x600 = 3 }; // Functions diff --git a/src/gui/lcd4l_setup.cpp b/src/gui/lcd4l_setup.cpp index 3e20009e0..85f57aa77 100644 --- a/src/gui/lcd4l_setup.cpp +++ b/src/gui/lcd4l_setup.cpp @@ -65,8 +65,10 @@ const CMenuOptionChooser::keyval LCD4L_SUPPORT_OPTIONS[] = const CMenuOptionChooser::keyval_ext LCD4L_DISPLAY_TYPE_OPTIONS[] = { - { CLCD4l::PEARL, NONEXISTANT_LOCALE, "Pearl"}, - { CLCD4l::SAMSUNG, NONEXISTANT_LOCALE, "Samsung"} + { CLCD4l::PEARL320x240, NONEXISTANT_LOCALE, "Pearl"}, + { CLCD4l::SAMSUNG800x480, NONEXISTANT_LOCALE, "800x480 Samsung"}, + { CLCD4l::SAMSUNG800x600, NONEXISTANT_LOCALE, "800x600 Samsung"}, + { CLCD4l::SAMSUNG1024x600, NONEXISTANT_LOCALE, "1024x600 Samsung"} }; #define LCD4L_DISPLAY_TYPE_OPTION_COUNT (sizeof(LCD4L_DISPLAY_TYPE_OPTIONS)/sizeof(CMenuOptionChooser::keyval_ext))