From 10ebb3df8841109563aaa24aa3f1458b4b645072 Mon Sep 17 00:00:00 2001 From: BPanther Date: Mon, 14 Aug 2023 22:59:47 +0200 Subject: [PATCH] nglcd: new option for scroll text on/off added Origin commit data ------------------ Branch: ni/coolstream Commit: https://github.com/neutrino-images/ni-neutrino/commit/179f5fbc984e86c5c7dc2cc43e34dde7212c0760 Author: BPanther Date: 2023-08-14 (Mon, 14 Aug 2023) ------------------ No further description and justification available within origin commit message! ------------------ This commit was generated by Migit --- data/locale/deutsch.locale | 3 +- data/locale/english.locale | 1 + src/driver/glcd/glcd.cpp | 60 +++++++++++++++++++++++++++++++------- src/gui/glcdsetup.cpp | 2 ++ src/neutrino.cpp | 2 ++ src/system/locals.h | 1 + src/system/locals_intern.h | 1 + src/system/settings.h | 15 +++++----- 8 files changed, 67 insertions(+), 18 deletions(-) diff --git a/data/locale/deutsch.locale b/data/locale/deutsch.locale index 925ac0aea..2ea82ee10 100644 --- a/data/locale/deutsch.locale +++ b/data/locale/deutsch.locale @@ -991,7 +991,8 @@ glcd.progressbar_width Fortschrittsbalken Weite glcd.progressbar_x_position Fortschrittsbalken x-Position glcd.progressbar_y_position Fortschrittsbalken y-Position glcd.restart Neu erkennen -glcd.scroll_speed Scroll-Geschwindigkeit +glcd.scroll Laufschrift +glcd.scroll_speed Geschwindigkeit der Laufschrift glcd.standby_clock Zeitanzeige im Standby glcd.standby_clock_analog Analoge Uhr glcd.standby_clock_digital Digitale Uhr diff --git a/data/locale/english.locale b/data/locale/english.locale index 8384380ca..36b410e26 100644 --- a/data/locale/english.locale +++ b/data/locale/english.locale @@ -991,6 +991,7 @@ glcd.progressbar_width Progress bar width glcd.progressbar_x_position Progress bar x-position glcd.progressbar_y_position Progress bar y-position glcd.restart Restart +glcd.scroll Scroll glcd.scroll_speed Scroll speed glcd.standby_clock Time display in standby mode glcd.standby_clock_analog Analog clock diff --git a/src/driver/glcd/glcd.cpp b/src/driver/glcd/glcd.cpp index 4b92a40ee..e287fd32c 100644 --- a/src/driver/glcd/glcd.cpp +++ b/src/driver/glcd/glcd.cpp @@ -1069,9 +1069,17 @@ void cGLCD::Run(void) { Epg = g_Locale->getText(LOCALE_GLCD_VOLUME); EpgWidth = font_epg.Width(Epg); - doScrollEpg = EpgWidth > bitmap->Width(); + if (g_settings.glcd_scroll) + { + doScrollEpg = EpgWidth > bitmap->Width(); + scrollEpgForward = true; + } + else + { + doScrollEpg = false; + scrollEpgForward = false; + } scrollEpgSkip = 0; - scrollEpgForward = true; if (doScrollEpg) { scrollEpgOffset = bitmap->Width() / 4; @@ -1093,8 +1101,16 @@ void cGLCD::Run(void) { Channel = g_Locale->getText(LOCALE_GLCD_VOLUME); ChannelWidth = font_channel.Width(Channel); - doScrollChannel = ChannelWidth > bitmap->Width(); - scrollChannelForward = true; + if (g_settings.glcd_scroll) + { + doScrollChannel = ChannelWidth > bitmap->Width(); + scrollChannelForward = true; + } + else + { + doScrollChannel = false; + scrollChannelForward = false; + } scrollChannelSkip = 0; if (doScrollChannel) { @@ -1118,8 +1134,16 @@ void cGLCD::Run(void) { Epg = stagingEpg; EpgWidth = font_epg.Width(Epg); - doScrollEpg = EpgWidth > bitmap->Width(); - scrollEpgForward = true; + if (g_settings.glcd_scroll) + { + doScrollEpg = EpgWidth > bitmap->Width(); + scrollEpgForward = true; + } + else + { + doScrollEpg = false; + scrollEpgForward = false; + } scrollEpgSkip = 0; if (doScrollEpg) { @@ -1133,8 +1157,16 @@ void cGLCD::Run(void) { Channel = stagingChannel; ChannelWidth = font_channel.Width(Channel); - doScrollChannel = ChannelWidth > bitmap->Width(); - scrollChannelForward = true; + if (g_settings.glcd_scroll) + { + doScrollChannel = ChannelWidth > bitmap->Width(); + scrollChannelForward = true; + } + else + { + doScrollChannel = false; + scrollChannelForward = false; + } scrollChannelSkip = 0; if (doScrollChannel) { @@ -1165,8 +1197,16 @@ void cGLCD::Run(void) EpgWidth = 0; Scale = 0; doScrollEpg = false; - doScrollChannel = ChannelWidth > bitmap->Width(); - scrollChannelForward = true; + if (g_settings.glcd_scroll) + { + doScrollChannel = ChannelWidth > bitmap->Width(); + scrollChannelForward = true; + } + else + { + doScrollChannel = false; + scrollChannelForward = false; + } scrollChannelSkip = 0; if (doScrollChannel) { diff --git a/src/gui/glcdsetup.cpp b/src/gui/glcdsetup.cpp index 92b05e843..c8e663b13 100644 --- a/src/gui/glcdsetup.cpp +++ b/src/gui/glcdsetup.cpp @@ -315,6 +315,8 @@ int GLCD_Menu::GLCD_Menu_Settings() gms->addItem(new CMenuForwarder(LOCALE_GLCD_BRIGHTNESS_SETTINGS, true, NULL, this, "brightness_settings", CRCInput::convertDigitToKey(shortcut++))); + gms->addItem(new CMenuOptionChooser(LOCALE_GLCD_SCROLL, &g_settings.glcd_scroll, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, this, CRCInput::convertDigitToKey(shortcut++))); + gms->addItem(new CMenuOptionNumberChooser(LOCALE_GLCD_SCROLL_SPEED, &g_settings.glcd_scroll_speed, true, 1, 63, this)); gms->addItem(new CMenuOptionChooser(LOCALE_GLCD_MIRROR_OSD, &g_settings.glcd_mirror_osd, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, this, CRCInput::convertDigitToKey(shortcut++))); diff --git a/src/neutrino.cpp b/src/neutrino.cpp index 808760603..f38d7c621 100644 --- a/src/neutrino.cpp +++ b/src/neutrino.cpp @@ -399,6 +399,7 @@ int CNeutrinoApp::loadSetup(const char *fname) g_settings.glcd_brightness_standby = configfile.getInt32("glcd_brightness_standby", GLCD_DEFAULT_BRIGHTNESS_STANDBY); g_settings.glcd_mirror_osd = configfile.getInt32("glcd_mirror_osd", 0); g_settings.glcd_mirror_video = configfile.getInt32("glcd_mirror_video", 0); + g_settings.glcd_scroll = configfile.getInt32("glcd_scroll", 1); #if BOXMODEL_VUUNO4KSE g_settings.glcd_scroll_speed = configfile.getInt32("glcd_scroll_speed", 1); #elif BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUDUO4KSE || BOXMODEL_VUULTIMO4K @@ -1532,6 +1533,7 @@ void CNeutrinoApp::saveSetup(const char *fname) configfile.setInt32("glcd_brightness_standby", g_settings.glcd_brightness_standby); configfile.setInt32("glcd_mirror_osd", g_settings.glcd_mirror_osd); configfile.setInt32("glcd_mirror_video", g_settings.glcd_mirror_video); + configfile.setInt32("glcd_scroll", g_settings.glcd_scroll); configfile.setInt32("glcd_scroll_speed", g_settings.glcd_scroll_speed); configfile.setInt32("glcd_selected_config", g_settings.glcd_selected_config); #endif diff --git a/src/system/locals.h b/src/system/locals.h index 106795e1c..066296147 100644 --- a/src/system/locals.h +++ b/src/system/locals.h @@ -1018,6 +1018,7 @@ typedef enum LOCALE_GLCD_PROGRESSBAR_X_POSITION, LOCALE_GLCD_PROGRESSBAR_Y_POSITION, LOCALE_GLCD_RESTART, + LOCALE_GLCD_SCROLL, LOCALE_GLCD_SCROLL_SPEED, LOCALE_GLCD_STANDBY_CLOCK, LOCALE_GLCD_STANDBY_CLOCK_ANALOG, diff --git a/src/system/locals_intern.h b/src/system/locals_intern.h index a04f727b7..099bc8719 100644 --- a/src/system/locals_intern.h +++ b/src/system/locals_intern.h @@ -1018,6 +1018,7 @@ const char * locale_real_names[] = "glcd.progressbar_x_position", "glcd.progressbar_y_position", "glcd.restart", + "glcd.scroll", "glcd.scroll_speed", "glcd.standby_clock", "glcd.standby_clock_analog", diff --git a/src/system/settings.h b/src/system/settings.h index a9694b737..56c4bc4bb 100644 --- a/src/system/settings.h +++ b/src/system/settings.h @@ -195,13 +195,13 @@ struct SNeutrinoTheme struct timer_remotebox_item { - unsigned int port; - std::string user; - std::string pass; - std::string rbname; - std::string rbaddress; - bool enabled; - bool online; + unsigned int port; + std::string user; + std::string pass; + std::string rbname; + std::string rbaddress; + bool enabled; + bool online; }; #define GLCD_DEFAULT_BRIGHTNESS 10 @@ -326,6 +326,7 @@ struct SNeutrinoSettings int glcd_brightness_standby; int glcd_mirror_osd; int glcd_mirror_video; + int glcd_scroll; int glcd_scroll_speed; int glcd_selected_config; #endif