diff --git a/data/locale/deutsch.locale b/data/locale/deutsch.locale
index af7298c67..ffbb4dbee 100644
--- a/data/locale/deutsch.locale
+++ b/data/locale/deutsch.locale
@@ -271,8 +271,10 @@ channellist.edit Bearbeiten
channellist.enablesdt_off aus
channellist.enablesdt_on ein
channellist.enablesdt_on_extended ein (mit PMT)
-channellist.epgtext_align_left links
-channellist.epgtext_align_right rechts
+channellist.epgtext_align_left_bottom links unten
+channellist.epgtext_align_left_middle links zentriert
+channellist.epgtext_align_right_bottom rechts unten
+channellist.epgtext_align_right_middle rechts zentiert
channellist.extended Sendungsfortschritt anzeigen
channellist.favs Favoriten
channellist.foot Kanalinformationen
@@ -1817,7 +1819,7 @@ messagebox.ok OK
messagebox.yes Ja
miscsettings.channellist Kanalliste
miscsettings.channellist_enablesdt Transponder Hintergrundaktualisierung
-miscsettings.channellist_epgtext_align Event-Text ausrichten
+miscsettings.channellist_epgtext_alignment Event-Text ausrichten
miscsettings.channellogos Senderlogos
miscsettings.colored_events Sendung hervorheben
miscsettings.colored_events_0 keine
@@ -2631,8 +2633,10 @@ settings.noconffile Die Einstellungen wurden nicht\ngefunden. Es werden Standard
settings.pos_bottom_center unten zentriert
settings.pos_bottom_left unten links
settings.pos_bottom_right unten rechts
-settings.pos_default_center zentriert
+settings.pos_center zentriert
settings.pos_higher_center höher zentriert
+settings.pos_left links
+settings.pos_right rechts
settings.pos_top_center oben zentriert
settings.pos_top_left oben links
settings.pos_top_right oben rechts
diff --git a/data/locale/english.locale b/data/locale/english.locale
index 6a3cb4e1c..a6e45ae9c 100644
--- a/data/locale/english.locale
+++ b/data/locale/english.locale
@@ -271,8 +271,10 @@ channellist.edit Edit
channellist.enablesdt_off off
channellist.enablesdt_on on
channellist.enablesdt_on_extended on (with PMT)
-channellist.epgtext_align_left left
-channellist.epgtext_align_right right
+channellist.epgtext_align_left_bottom left bottom
+channellist.epgtext_align_left_middle left middle
+channellist.epgtext_align_right_bottom right bottom
+channellist.epgtext_align_right_middle right middle
channellist.extended Show event progress
channellist.favs Favorites
channellist.foot Channel Information
@@ -1817,7 +1819,7 @@ messagebox.ok Ok
messagebox.yes Yes
miscsettings.channellist Channellist
miscsettings.channellist_enablesdt Transponder background update
-miscsettings.channellist_epgtext_align Programtext Align
+miscsettings.channellist_epgtext_alignment Programtext alignment
miscsettings.channellogos Channel logos
miscsettings.colored_events Program colored
miscsettings.colored_events_0 none
@@ -2631,8 +2633,10 @@ settings.noconffile No settings found.\nUsing defaults.
settings.pos_bottom_center bottom center
settings.pos_bottom_left bottom left
settings.pos_bottom_right bottom right
-settings.pos_default_center center
+settings.pos_center center
settings.pos_higher_center higher center
+settings.pos_left left
+settings.pos_right richt
settings.pos_top_center top center
settings.pos_top_left top left
settings.pos_top_right top right
diff --git a/data/y-web/Y_neutrino_Blocks.txt b/data/y-web/Y_neutrino_Blocks.txt
index 6fbead163..3f0309fd9 100644
--- a/data/y-web/Y_neutrino_Blocks.txt
+++ b/data/y-web/Y_neutrino_Blocks.txt
@@ -616,8 +616,9 @@ start-block~neutrino_form-data_diverse
Ausrichtung Programmtext |
- links
- rechts
+
+ links
+ rechts
|
@@ -729,7 +730,7 @@ function form_init()
document.f.infobar_show.selectedIndex = val;
obj_set_radio_value('radiotext', "{=ini-get:%(CONFIGDIR)/neutrino.conf;radiotext_enable;false~cache=}");
- obj_set_radio_value('epgtext_align_right', "{=ini-get:%(CONFIGDIR)/neutrino.conf;channellist_epgtext_align_right;false~cache=}");
+ obj_set_radio_value('channellist_epgtext_alignment', "{=ini-get:%(CONFIGDIR)/neutrino.conf;channellist_epgtext_alignment;false~cache=}");
obj_set_radio_value('channellist_extended', "{=ini-get:%(CONFIGDIR)/neutrino.conf;channellist_extended;false~cache=}");
val = "{=ini-get:%(CONFIGDIR)/neutrino.conf;standby_off_with;0=}";
@@ -761,7 +762,7 @@ end-block~neutrino_form-data_diverse
# ------- yWeb save Settings
start-block~neutrino_diverse_save_settings
-{=ini-set:%(CONFIGDIR)/neutrino.conf;channellist_epgtext_align_right;{=epgtext_align_right=}~open=}
+{=ini-set:%(CONFIGDIR)/neutrino.conf;channellist_epgtext_alignment;{=channellist_epgtext_alignment=}~open=}
{=ini-set:%(CONFIGDIR)/neutrino.conf;channellist_extended;{=channellist_extended=}~cache=}
{=ini-set:%(CONFIGDIR)/neutrino.conf;filebrowser_showrights;{=filebrowser_showrights=}~cache=}
{=ini-set:%(CONFIGDIR)/neutrino.conf;filebrowser_denydirectoryleave;{=filebrowser_denydirectoryleave=}~cache=}
diff --git a/src/gui/channellist.cpp b/src/gui/channellist.cpp
index 011edf1f0..c54da25d8 100644
--- a/src/gui/channellist.cpp
+++ b/src/gui/channellist.cpp
@@ -2181,10 +2181,10 @@ void CChannelList::paintItem(int pos, const bool firstpaint)
if (!p_event->description.empty())
{
- if (g_settings.channellist_epgtext_align_right)
- snprintf(chan_desc, sizeof(chan_desc), "%s", p_event->description.c_str());
- else
+ if ((g_settings.channellist_epgtext_alignment == EPGTEXT_ALIGN_LEFT_MIDDLE) || (g_settings.channellist_epgtext_alignment == EPGTEXT_ALIGN_LEFT_BOTTOM))
snprintf(chan_desc, sizeof(chan_desc), " - %s", p_event->description.c_str());
+ else
+ snprintf(chan_desc, sizeof(chan_desc), "%s", p_event->description.c_str());
unsigned int chan_desc_len = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getRenderWidth(chan_desc);
@@ -2219,17 +2219,20 @@ void CChannelList::paintItem(int pos, const bool firstpaint)
}
g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->RenderString(x + OFFSET_INNER_MID + numwidth + OFFSET_INNER_MID + prg_offset + OFFSET_INNER_MID, ypos + fheight, chan_name_len, chan_name, color);
- int descr_offset = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->getDescender() - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getDescender();
- if (g_settings.channellist_epgtext_align_right)
- {
- // align right
- g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x + width - SCROLLBAR_WIDTH - offset_right - chan_desc_len, ypos + fheight - descr_offset, chan_desc_len, chan_desc, dcolor);
- }
+
+ int chan_desc_x;
+ if ((g_settings.channellist_epgtext_alignment == EPGTEXT_ALIGN_LEFT_MIDDLE) || (g_settings.channellist_epgtext_alignment == EPGTEXT_ALIGN_LEFT_BOTTOM))
+ chan_desc_x = x + OFFSET_INNER_MID + numwidth + OFFSET_INNER_MID + prg_offset + OFFSET_INNER_MID + chan_name_len;
else
- {
- // align left
- g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x + OFFSET_INNER_MID + numwidth + OFFSET_INNER_MID + prg_offset + OFFSET_INNER_MID + chan_name_len, ypos + fheight - descr_offset, chan_desc_len, chan_desc, dcolor);
- }
+ chan_desc_x = x + width - SCROLLBAR_WIDTH - offset_right - chan_desc_len;
+
+ int chan_desc_y_off;
+ if ((g_settings.channellist_epgtext_alignment == EPGTEXT_ALIGN_LEFT_MIDDLE) || (g_settings.channellist_epgtext_alignment == EPGTEXT_ALIGN_RIGHT_MIDDLE))
+ chan_desc_y_off = fheight/2 - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight()/2;
+ else
+ chan_desc_y_off = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->getDescender() - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getDescender();
+
+ g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(chan_desc_x, ypos + fheight - chan_desc_y_off, chan_desc_len, chan_desc, dcolor);
}
else
{
diff --git a/src/gui/channellist.h b/src/gui/channellist.h
index 73a036fad..6eb884ee0 100644
--- a/src/gui/channellist.h
+++ b/src/gui/channellist.h
@@ -64,6 +64,13 @@ enum {
DISPLAY_MODE_MAX
};
+enum {
+ EPGTEXT_ALIGN_LEFT_MIDDLE = 0,
+ EPGTEXT_ALIGN_LEFT_BOTTOM,
+ EPGTEXT_ALIGN_RIGHT_MIDDLE,
+ EPGTEXT_ALIGN_RIGHT_BOTTOM
+};
+
enum {
CHANLIST_CANCEL = -1,
CHANLIST_CANCEL_ALL = -2,
diff --git a/src/gui/osd_setup.cpp b/src/gui/osd_setup.cpp
index 26ad8ad37..0976cb47b 100644
--- a/src/gui/osd_setup.cpp
+++ b/src/gui/osd_setup.cpp
@@ -485,7 +485,7 @@ const CMenuOptionChooser::keyval VOLUMEBAR_DISP_POS_OPTIONS[VOLUMEBAR_DISP_POS_O
#define MENU_DISP_POS_OPTIONS_COUNT 5
const CMenuOptionChooser::keyval MENU_DISP_POS_OPTIONS[MENU_DISP_POS_OPTIONS_COUNT]=
{
- { 0, LOCALE_SETTINGS_POS_DEFAULT_CENTER },
+ { 0, LOCALE_SETTINGS_POS_CENTER },
{ 1, LOCALE_SETTINGS_POS_TOP_LEFT },
{ 2, LOCALE_SETTINGS_POS_TOP_RIGHT },
{ 3, LOCALE_SETTINGS_POS_BOTTOM_LEFT },
@@ -516,11 +516,13 @@ const CMenuOptionChooser::keyval CHANNELLIST_FOOT_OPTIONS[CHANNELLIST_FOOT_OPTIO
{ 2, LOCALE_CHANNELLIST_FOOT_OFF }
};
-#define CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT 2
-const CMenuOptionChooser::keyval CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS[CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT]=
+#define CHANNELLIST_EPGTEXT_ALIGNMENT_OPTIONS_COUNT 4
+const CMenuOptionChooser::keyval CHANNELLIST_EPGTEXT_ALIGNMENT_OPTIONS[CHANNELLIST_EPGTEXT_ALIGNMENT_OPTIONS_COUNT]=
{
- { 0, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT },
- { 1, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT }
+ { EPGTEXT_ALIGN_LEFT_MIDDLE, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT_MIDDLE },
+ { EPGTEXT_ALIGN_LEFT_BOTTOM, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT_BOTTOM },
+ { EPGTEXT_ALIGN_RIGHT_MIDDLE, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT_MIDDLE },
+ { EPGTEXT_ALIGN_RIGHT_BOTTOM, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT_BOTTOM }
};
#define OPTIONS_COLORED_EVENTS_OPTION_COUNT 3
@@ -571,10 +573,10 @@ const CMenuOptionChooser::keyval PROGRESSBAR_COLOR_OPTIONS[PROGRESSBAR_COLOR_OPT
#define OPTIONS_CHANNELLOGO_POSITION_COUNT 4
const CMenuOptionChooser::keyval OPTIONS_CHANNELLOGO_POSITION[OPTIONS_CHANNELLOGO_POSITION_COUNT] =
{
- { 0, LOCALE_OPTIONS_OFF }, // off
- { CCHeaderTypes::CC_LOGO_RIGHT, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT }, // right
- { CCHeaderTypes::CC_LOGO_LEFT, LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT }, // left
- { CCHeaderTypes::CC_LOGO_CENTER, LOCALE_SETTINGS_POS_DEFAULT_CENTER } // centered
+ { 0, LOCALE_OPTIONS_OFF }, // off
+ { CCHeaderTypes::CC_LOGO_RIGHT, LOCALE_SETTINGS_POS_RIGHT }, // right
+ { CCHeaderTypes::CC_LOGO_LEFT, LOCALE_SETTINGS_POS_LEFT }, // left
+ { CCHeaderTypes::CC_LOGO_CENTER, LOCALE_SETTINGS_POS_CENTER } // centered
};
// show osd setup
@@ -1389,7 +1391,7 @@ void COsdSetup::showOsdChanlistSetup(CMenuWidget *menu_chanlist)
menu_chanlist->addItem(mc);
// epg align
- mc = new CMenuOptionChooser(LOCALE_MISCSETTINGS_CHANNELLIST_EPGTEXT_ALIGN, &g_settings.channellist_epgtext_align_right, CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS, CHANNELLIST_EPGTEXT_ALIGN_RIGHT_OPTIONS_COUNT, true);
+ mc = new CMenuOptionChooser(LOCALE_MISCSETTINGS_CHANNELLIST_EPGTEXT_ALIGNMENT, &g_settings.channellist_epgtext_alignment, CHANNELLIST_EPGTEXT_ALIGNMENT_OPTIONS, CHANNELLIST_EPGTEXT_ALIGNMENT_OPTIONS_COUNT, true);
mc->setHint("", LOCALE_MENU_HINT_CHANNELLIST_EPG_ALIGN);
menu_chanlist->addItem(mc);
diff --git a/src/neutrino.cpp b/src/neutrino.cpp
index a0d3c2784..dd07894a2 100644
--- a/src/neutrino.cpp
+++ b/src/neutrino.cpp
@@ -1240,9 +1240,9 @@ int CNeutrinoApp::loadSetup(const char *fname)
g_settings.channellist_descmode = false;
g_settings.channellist_displaymode = DISPLAY_MODE_NOW;
- g_settings.channellist_additional = configfile.getInt32("channellist_additional", 1);
- g_settings.channellist_epgtext_align_right = configfile.getBool("channellist_epgtext_align_right", false);
- g_settings.channellist_foot = configfile.getInt32("channellist_foot", 1);
+ g_settings.channellist_additional = configfile.getInt32("channellist_additional", 1); // default no minitv
+ g_settings.channellist_epgtext_alignment = configfile.getInt32("channellist_epgtext_alignment", EPGTEXT_ALIGN_LEFT_MIDDLE);
+ g_settings.channellist_foot = configfile.getInt32("channellist_foot", 1); // default next Event
g_settings.channellist_new_zap_mode = configfile.getInt32("channellist_new_zap_mode", 0);
g_settings.channellist_numeric_adjust = configfile.getInt32("channellist_numeric_adjust", 0);
g_settings.channellist_show_channellogo = configfile.getInt32("channellist_show_channellogo", CCHeaderTypes::CC_LOGO_RIGHT);
@@ -1250,7 +1250,7 @@ int CNeutrinoApp::loadSetup(const char *fname)
g_settings.channellist_show_infobox = configfile.getInt32("channellist_show_infobox", 1);
g_settings.channellist_show_numbers = configfile.getInt32("channellist_show_numbers", 1);
g_settings.channellist_show_res_icon = configfile.getInt32("channellist_show_res_icon", 0);
- g_settings.channellist_sort_mode = configfile.getInt32("channellist_sort_mode", 0);
+ g_settings.channellist_sort_mode = configfile.getInt32("channellist_sort_mode", 0); // sort mode: alpha, freq, sat
// infobar
// g_settings.infobar_analogclock = configfile.getInt32("infobar_analogclock", 0);
@@ -1473,6 +1473,13 @@ void CNeutrinoApp::upgradeSetup(const char * fname)
g_settings.font_file_monospace = FONTDIR "/tuxtxt.ttf";
configfile.deleteKey("ttx_font_file");
}
+ if (g_settings.version_pseudo < "20220506230000")
+ {
+ g_settings.channellist_epgtext_alignment = configfile.getBool("channellist_epgtext_align_right", false);
+ if (g_settings.channellist_epgtext_alignment == 1) // old bool
+ g_settings.channellist_epgtext_alignment = EPGTEXT_ALIGN_RIGHT_MIDDLE;
+ configfile.deleteKey("channellist_epgtext_align_right");
+ }
g_settings.version_pseudo = NEUTRINO_VERSION_PSEUDO;
configfile.setString("version_pseudo", g_settings.version_pseudo);
@@ -2108,7 +2115,7 @@ void CNeutrinoApp::saveSetup(const char *fname)
// channellist
configfile.setInt32("channellist_additional", g_settings.channellist_additional);
- configfile.setBool("channellist_epgtext_align_right", g_settings.channellist_epgtext_align_right);
+ configfile.setInt32("channellist_epgtext_alignment", g_settings.channellist_epgtext_alignment);
configfile.setInt32("channellist_foot", g_settings.channellist_foot);
configfile.setInt32("channellist_new_zap_mode", g_settings.channellist_new_zap_mode);
configfile.setInt32("channellist_numeric_adjust", g_settings.channellist_numeric_adjust);
diff --git a/src/system/locals.h b/src/system/locals.h
index 58f2917c6..c1baee1da 100644
--- a/src/system/locals.h
+++ b/src/system/locals.h
@@ -298,8 +298,10 @@ typedef enum
LOCALE_CHANNELLIST_ENABLESDT_OFF,
LOCALE_CHANNELLIST_ENABLESDT_ON,
LOCALE_CHANNELLIST_ENABLESDT_ON_EXTENDED,
- LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT,
- LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT,
+ LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT_BOTTOM,
+ LOCALE_CHANNELLIST_EPGTEXT_ALIGN_LEFT_MIDDLE,
+ LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT_BOTTOM,
+ LOCALE_CHANNELLIST_EPGTEXT_ALIGN_RIGHT_MIDDLE,
LOCALE_CHANNELLIST_EXTENDED,
LOCALE_CHANNELLIST_FAVS,
LOCALE_CHANNELLIST_FOOT,
@@ -1844,7 +1846,7 @@ typedef enum
LOCALE_MESSAGEBOX_YES,
LOCALE_MISCSETTINGS_CHANNELLIST,
LOCALE_MISCSETTINGS_CHANNELLIST_ENABLESDT,
- LOCALE_MISCSETTINGS_CHANNELLIST_EPGTEXT_ALIGN,
+ LOCALE_MISCSETTINGS_CHANNELLIST_EPGTEXT_ALIGNMENT,
LOCALE_MISCSETTINGS_CHANNELLOGOS,
LOCALE_MISCSETTINGS_COLORED_EVENTS,
LOCALE_MISCSETTINGS_COLORED_EVENTS_0,
@@ -2658,8 +2660,10 @@ typedef enum
LOCALE_SETTINGS_POS_BOTTOM_CENTER,
LOCALE_SETTINGS_POS_BOTTOM_LEFT,
LOCALE_SETTINGS_POS_BOTTOM_RIGHT,
- LOCALE_SETTINGS_POS_DEFAULT_CENTER,
+ LOCALE_SETTINGS_POS_CENTER,
LOCALE_SETTINGS_POS_HIGHER_CENTER,
+ LOCALE_SETTINGS_POS_LEFT,
+ LOCALE_SETTINGS_POS_RIGHT,
LOCALE_SETTINGS_POS_TOP_CENTER,
LOCALE_SETTINGS_POS_TOP_LEFT,
LOCALE_SETTINGS_POS_TOP_RIGHT,
diff --git a/src/system/locals_intern.h b/src/system/locals_intern.h
index c3b77a7d5..578c8de0d 100644
--- a/src/system/locals_intern.h
+++ b/src/system/locals_intern.h
@@ -298,8 +298,10 @@ const char * locale_real_names[] =
"channellist.enablesdt_off",
"channellist.enablesdt_on",
"channellist.enablesdt_on_extended",
- "channellist.epgtext_align_left",
- "channellist.epgtext_align_right",
+ "channellist.epgtext_align_left_bottom",
+ "channellist.epgtext_align_left_middle",
+ "channellist.epgtext_align_right_bottom",
+ "channellist.epgtext_align_right_middle",
"channellist.extended",
"channellist.favs",
"channellist.foot",
@@ -1844,7 +1846,7 @@ const char * locale_real_names[] =
"messagebox.yes",
"miscsettings.channellist",
"miscsettings.channellist_enablesdt",
- "miscsettings.channellist_epgtext_align",
+ "miscsettings.channellist_epgtext_alignment",
"miscsettings.channellogos",
"miscsettings.colored_events",
"miscsettings.colored_events_0",
@@ -2658,8 +2660,10 @@ const char * locale_real_names[] =
"settings.pos_bottom_center",
"settings.pos_bottom_left",
"settings.pos_bottom_right",
- "settings.pos_default_center",
+ "settings.pos_center",
"settings.pos_higher_center",
+ "settings.pos_left",
+ "settings.pos_right",
"settings.pos_top_center",
"settings.pos_top_left",
"settings.pos_top_right",
diff --git a/src/system/settings.h b/src/system/settings.h
index 33154e1e1..e43de036e 100644
--- a/src/system/settings.h
+++ b/src/system/settings.h
@@ -1052,7 +1052,7 @@ struct SNeutrinoSettings
};
int channellist_additional;
- int channellist_epgtext_align_right;
+ int channellist_epgtext_alignment;
int channellist_foot;
int channellist_new_zap_mode;
int channellist_numeric_adjust;
diff --git a/version_pseudo.h b/version_pseudo.h
index 82c617df5..c0cc11586 100644
--- a/version_pseudo.h
+++ b/version_pseudo.h
@@ -1 +1 @@
-#define NEUTRINO_VERSION_PSEUDO "20220130200000"
+#define NEUTRINO_VERSION_PSEUDO "20220506230000"