lcd4linux: add display type

Origin commit data
------------------
Branch: ni/coolstream
Commit: 43892e34c2
Author: max_10 <max_10@gmx.de>
Date: 2018-09-10 (Mon, 10 Sep 2018)


------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
max_10
2018-09-10 00:15:21 +02:00
committed by vanhofen
parent d6ea2ad570
commit 62ea389882
8 changed files with 53 additions and 16 deletions

View File

@@ -1032,6 +1032,7 @@ languagesetup.osd Menüsprache
languagesetup.select Sprache languagesetup.select Sprache
lcd4l_clock_a Analog-Uhr im Standby-Modus lcd4l_clock_a Analog-Uhr im Standby-Modus
lcd4l_convert Konvertiere Umlaute lcd4l_convert Konvertiere Umlaute
lcd4l_display_type Display-Typ
lcd4l_logodir Senderlogo-Verzeichnis lcd4l_logodir Senderlogo-Verzeichnis
lcd4l_skin Display-Style lcd4l_skin Display-Style
lcd4l_skin_0 Standard lcd4l_skin_0 Standard
@@ -1380,7 +1381,7 @@ menu.hint_lcd4l_convert Konvertiert Umlaute für die eingebaute LCD4Linux-Schrif
menu.hint_lcd4l_logodir Verzeichnis für Senderlogos\nBei ungültigem Eintrag Fallback auf Standard-Logoverzeichnis menu.hint_lcd4l_logodir Verzeichnis für Senderlogos\nBei ungültigem Eintrag Fallback auf Standard-Logoverzeichnis
menu.hint_lcd4l_skin Auswahl der verfügbaren Darstellungsarten\nStandard, Groß, SysInfo, d-box2, Benutzerdefiniert menu.hint_lcd4l_skin Auswahl der verfügbaren Darstellungsarten\nStandard, Groß, SysInfo, d-box2, Benutzerdefiniert
menu.hint_lcd4l_skin_radio Wechselt die Darstellungsart, wenn der Radio-Modus aktiviert wird menu.hint_lcd4l_skin_radio Wechselt die Darstellungsart, wenn der Radio-Modus aktiviert wird
menu.hint_lcd4l_support LCD4Linux aktivieren/deaktivieren\nUnterstützte Displays: Pearl DPF menu.hint_lcd4l_support LCD4Linux aktivieren/deaktivieren\nUnterstützte Displays: Pearl DPF, Samsung DPF
menu.hint_lcd4l_weather Zeigt im Standby-Betrieb die entsprechenden Daten des ersten Favoriteneintrags von tuxwetter auf dem Display an menu.hint_lcd4l_weather Zeigt im Standby-Betrieb die entsprechenden Daten des ersten Favoriteneintrags von tuxwetter auf dem Display an
menu.hint_leds_blink Die Power-LEDs blinken, wenn sich der Receiver im Deep-Standby befindet und ein Timer aktiv ist menu.hint_leds_blink Die Power-LEDs blinken, wenn sich der Receiver im Deep-Standby befindet und ein Timer aktiv ist
menu.hint_leds_deepstandby Definiert den Status der Power-LEDs im Deep-Standby menu.hint_leds_deepstandby Definiert den Status der Power-LEDs im Deep-Standby

View File

@@ -1032,6 +1032,7 @@ languagesetup.osd OSD language
languagesetup.select OSD language languagesetup.select OSD language
lcd4l_clock_a Analog clock in standby mode lcd4l_clock_a Analog clock in standby mode
lcd4l_convert Convert umlauts lcd4l_convert Convert umlauts
lcd4l_display_type Display Type
lcd4l_logodir Channellogo directory lcd4l_logodir Channellogo directory
lcd4l_skin Display style lcd4l_skin Display style
lcd4l_skin_0 Standard lcd4l_skin_0 Standard
@@ -1380,7 +1381,7 @@ menu.hint_lcd4l_convert Convert umlauts for the built-in LCD4Linux font
menu.hint_lcd4l_logodir Logo directory.\nFallback to default on invalid entry. menu.hint_lcd4l_logodir Logo directory.\nFallback to default on invalid entry.
menu.hint_lcd4l_skin Switch between modes\nDefault, Big, SysInfo, d-box2, User Defined menu.hint_lcd4l_skin Switch between modes\nDefault, Big, SysInfo, d-box2, User Defined
menu.hint_lcd4l_skin_radio Switch the mode, when Radio-Mode is activated menu.hint_lcd4l_skin_radio Switch the mode, when Radio-Mode is activated
menu.hint_lcd4l_support Activate/deactivate LCD4Linux\nsupported display: Pearl DPF menu.hint_lcd4l_support Activate/deactivate LCD4Linux\nsupported displays: Pearl DPF, Samsung SPF
menu.hint_lcd4l_weather Shows first tuxwetter favorite on display at standby menu.hint_lcd4l_weather Shows first tuxwetter favorite on display at standby
menu.hint_leds_blink Blinking LEDs in deep-standby menu.hint_leds_blink Blinking LEDs in deep-standby
menu.hint_leds_deepstandby LEDs state in deep-standby mode menu.hint_leds_deepstandby LEDs state in deep-standby mode

View File

@@ -647,32 +647,43 @@ void CLCD4l::ParseInfo(uint64_t parseID, bool newID, bool firstRun)
std::string Layout; std::string Layout;
std::string DISPLAY_Type;
switch (g_settings.lcd4l_display_type) {
case 1:
DISPLAY_Type = "Samsung_";
break;
case 0:
default:
DISPLAY_Type = "Pearl_";
break;
}
if (ModeStandby) if (ModeStandby)
{ {
Layout = "standby"; Layout = DISPLAY_Type + "standby";
} }
else if ((g_settings.lcd4l_skin_radio) && (m_Mode == NeutrinoModes::mode_radio || m_Mode == NeutrinoModes::mode_webradio)) else if ((g_settings.lcd4l_skin_radio) && (m_Mode == NeutrinoModes::mode_radio || m_Mode == NeutrinoModes::mode_webradio))
{ {
Layout = "radio"; Layout = DISPLAY_Type + "radio";
} }
else else
{ {
switch (g_settings.lcd4l_skin) switch (g_settings.lcd4l_skin)
{ {
case 4: case 4:
Layout = "user"; Layout = DISPLAY_Type + "user";
break; break;
case 3: case 3:
Layout = "d-box2"; Layout = DISPLAY_Type + "d-box2";
break; break;
case 2: case 2:
Layout = "small"; Layout = DISPLAY_Type + "small";
break; break;
case 1: case 1:
Layout = "large"; Layout = DISPLAY_Type + "large";
break; break;
default: default:
Layout = "standard"; Layout = DISPLAY_Type + "standard";
} }
} }

View File

@@ -63,6 +63,13 @@ const CMenuOptionChooser::keyval LCD4L_SUPPORT_OPTIONS[] =
}; };
#define LCD4L_SUPPORT_OPTION_COUNT (sizeof(LCD4L_SUPPORT_OPTIONS)/sizeof(CMenuOptionChooser::keyval)) #define LCD4L_SUPPORT_OPTION_COUNT (sizeof(LCD4L_SUPPORT_OPTIONS)/sizeof(CMenuOptionChooser::keyval))
const CMenuOptionChooser::keyval_ext LCD4L_DISPLAY_TYPE_OPTIONS[] =
{
{ 0, NONEXISTANT_LOCALE, "Pearl"},
{ 1, NONEXISTANT_LOCALE, "Samsung"}
};
#define LCD4L_DISPLAY_TYPE_OPTION_COUNT (sizeof(LCD4L_DISPLAY_TYPE_OPTIONS)/sizeof(CMenuOptionChooser::keyval_ext))
const CMenuOptionChooser::keyval LCD4L_SKIN_OPTIONS[] = const CMenuOptionChooser::keyval LCD4L_SKIN_OPTIONS[] =
{ {
{ 0, LOCALE_LCD4L_SKIN_0 }, { 0, LOCALE_LCD4L_SKIN_0 },
@@ -124,7 +131,8 @@ int CLCD4lSetup::show()
{ {
int shortcut = 1; int shortcut = 1;
int temp_lcd4l_skin = g_settings.lcd4l_skin; int temp_lcd4l_display_type = g_settings.lcd4l_display_type;
int temp_lcd4l_skin = g_settings.lcd4l_skin;
// lcd4l setup // lcd4l setup
CMenuWidget* lcd4lSetup = new CMenuWidget(LOCALE_MISCSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_LCD4L_SETUP); CMenuWidget* lcd4lSetup = new CMenuWidget(LOCALE_MISCSETTINGS_HEAD, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_LCD4L_SETUP);
@@ -139,6 +147,10 @@ int CLCD4lSetup::show()
mf->setHint(NEUTRINO_ICON_HINT_LCD4L, LOCALE_MENU_HINT_LCD4L_LOGODIR); mf->setHint(NEUTRINO_ICON_HINT_LCD4L, LOCALE_MENU_HINT_LCD4L_LOGODIR);
lcd4lSetup->addItem(mf); lcd4lSetup->addItem(mf);
mc = new CMenuOptionChooser(LOCALE_LCD4L_DISPLAY_TYPE, &temp_lcd4l_display_type, LCD4L_DISPLAY_TYPE_OPTIONS, LCD4L_DISPLAY_TYPE_OPTION_COUNT, true, NULL, CRCInput::convertDigitToKey(shortcut++));
// mc->setHint("", LOCALE_MENU_HINT_LCD4L_DISPLAY_TYPE);
lcd4lSetup->addItem(mc);
mc = new CMenuOptionChooser(LOCALE_LCD4L_SKIN, &temp_lcd4l_skin, LCD4L_SKIN_OPTIONS, LCD4L_SKIN_OPTION_COUNT, true, NULL, CRCInput::convertDigitToKey(shortcut++)); mc = new CMenuOptionChooser(LOCALE_LCD4L_SKIN, &temp_lcd4l_skin, LCD4L_SKIN_OPTIONS, LCD4L_SKIN_OPTION_COUNT, true, NULL, CRCInput::convertDigitToKey(shortcut++));
mc->setHint(NEUTRINO_ICON_HINT_LCD4L, LOCALE_MENU_HINT_LCD4L_SKIN); mc->setHint(NEUTRINO_ICON_HINT_LCD4L, LOCALE_MENU_HINT_LCD4L_SKIN);
lcd4lSetup->addItem(mc); lcd4lSetup->addItem(mc);
@@ -176,6 +188,12 @@ int CLCD4lSetup::show()
// the things to do on exit // the things to do on exit
if (g_settings.lcd4l_display_type != temp_lcd4l_display_type)
{
g_settings.lcd4l_display_type = temp_lcd4l_display_type;
LCD4l->InitLCD4l();
}
if (g_settings.lcd4l_skin != temp_lcd4l_skin) if (g_settings.lcd4l_skin != temp_lcd4l_skin)
{ {
g_settings.lcd4l_skin = temp_lcd4l_skin; g_settings.lcd4l_skin = temp_lcd4l_skin;

View File

@@ -370,6 +370,7 @@ int CNeutrinoApp::loadSetup(const char * fname)
g_settings.inetradio_autostart = configfile.getInt32("inetradio_autostart" , 0); g_settings.inetradio_autostart = configfile.getInt32("inetradio_autostart" , 0);
g_settings.lcd4l_support = configfile.getInt32("lcd4l_support" , 0); g_settings.lcd4l_support = configfile.getInt32("lcd4l_support" , 0);
g_settings.lcd4l_logodir = configfile.getString("lcd4l_logodir", LOGODIR); g_settings.lcd4l_logodir = configfile.getString("lcd4l_logodir", LOGODIR);
g_settings.lcd4l_display_type = configfile.getInt32("lcd4l_display_type", 0);
g_settings.lcd4l_skin = configfile.getInt32("lcd4l_skin" , 0); g_settings.lcd4l_skin = configfile.getInt32("lcd4l_skin" , 0);
g_settings.lcd4l_skin_radio = configfile.getInt32("lcd4l_skin_radio" , 0); g_settings.lcd4l_skin_radio = configfile.getInt32("lcd4l_skin_radio" , 0);
g_settings.lcd4l_convert = configfile.getInt32("lcd4l_convert", 1); g_settings.lcd4l_convert = configfile.getInt32("lcd4l_convert", 1);
@@ -1298,6 +1299,7 @@ void CNeutrinoApp::saveSetup(const char * fname)
configfile.setInt32("inetradio_autostart" , g_settings.inetradio_autostart); configfile.setInt32("inetradio_autostart" , g_settings.inetradio_autostart);
configfile.setInt32("lcd4l_support" , g_settings.lcd4l_support); configfile.setInt32("lcd4l_support" , g_settings.lcd4l_support);
configfile.setString("lcd4l_logodir" , g_settings.lcd4l_logodir); configfile.setString("lcd4l_logodir" , g_settings.lcd4l_logodir);
configfile.setInt32("lcd4l_display_type" , g_settings.lcd4l_display_type);
configfile.setInt32("lcd4l_skin" , g_settings.lcd4l_skin); configfile.setInt32("lcd4l_skin" , g_settings.lcd4l_skin);
configfile.setInt32("lcd4l_skin_radio" , g_settings.lcd4l_skin_radio); configfile.setInt32("lcd4l_skin_radio" , g_settings.lcd4l_skin_radio);
configfile.setInt32("lcd4l_convert" , g_settings.lcd4l_convert); configfile.setInt32("lcd4l_convert" , g_settings.lcd4l_convert);

View File

@@ -1059,6 +1059,7 @@ typedef enum
LOCALE_LANGUAGESETUP_SELECT, LOCALE_LANGUAGESETUP_SELECT,
LOCALE_LCD4L_CLOCK_A, LOCALE_LCD4L_CLOCK_A,
LOCALE_LCD4L_CONVERT, LOCALE_LCD4L_CONVERT,
LOCALE_LCD4L_DISPLAY_TYPE,
LOCALE_LCD4L_LOGODIR, LOCALE_LCD4L_LOGODIR,
LOCALE_LCD4L_SKIN, LOCALE_LCD4L_SKIN,
LOCALE_LCD4L_SKIN_0, LOCALE_LCD4L_SKIN_0,

View File

@@ -1059,6 +1059,7 @@ const char * locale_real_names[] =
"languagesetup.select", "languagesetup.select",
"lcd4l_clock_a", "lcd4l_clock_a",
"lcd4l_convert", "lcd4l_convert",
"lcd4l_display_type",
"lcd4l_logodir", "lcd4l_logodir",
"lcd4l_skin", "lcd4l_skin",
"lcd4l_skin_0", "lcd4l_skin_0",

View File

@@ -865,12 +865,14 @@ struct SNeutrinoSettings
int font_scaling_x; int font_scaling_x;
int font_scaling_y; int font_scaling_y;
//NI // lcd4linux
int lcd4l_support; int lcd4l_support;
std::string lcd4l_logodir; std::string lcd4l_logodir;
int lcd4l_skin; int lcd4l_display_type;
int lcd4l_skin_radio; int lcd4l_skin;
int lcd4l_convert; int lcd4l_skin_radio;
int lcd4l_convert;
int ca_init; int ca_init;
int show_menu_hints_line; int show_menu_hints_line;
int inetradio_autostart; int inetradio_autostart;