diff --git a/data/locale/deutsch.locale b/data/locale/deutsch.locale index cf5702490..e2bb33dfe 100644 --- a/data/locale/deutsch.locale +++ b/data/locale/deutsch.locale @@ -319,6 +319,8 @@ eventfinder.search_within_epg Suche innerhalb EPG-Daten eventfinder.search_within_list Suche innerhalb Text eventfinder.searching Suche... eventfinder.start_search Suche starten +eventlist.additional Zusatzinformationen +eventlist.name Eventliste eventlistbar.channelswitch Umschalten eventlistbar.eventsort Sortieren eventlistbar.recordevent Aufnehmen @@ -530,6 +532,7 @@ fontsize.epg_info1 EPG Info 1 fontsize.epg_info2 EPG Info 2 fontsize.epg_title EPG Titel fontsize.eventlist_datetime Datum/Zeit +fontsize.eventlist_event Event Info fontsize.eventlist_itemlarge Groß fontsize.eventlist_itemsmall Klein fontsize.eventlist_title Titel @@ -765,7 +768,9 @@ menu.hint_epg_old_events Veraltete EPG-Daten werden nach dieser Zeit (in Stunden menu.hint_epg_save Speichert die EPG-Daten auf einem externen Datenträger und läd es von dort nach einen Neustart menu.hint_epg_save_standby Speichert die EPG-Daten auch im Standby-Modus menu.hint_event_textcolor Ändern Sie die Farbe für farbige Events in der Kanalliste und der Infobar +menu.hint_eventlist_additional Definiert, ob zusätzliche Informationen im Hauptfenster angezeigt werden sollen menu.hint_eventlist_fonts Ändern Sie die Schriftgröße in der Event-Liste +menu.hint_eventlist_setup Wählen Sie die Anzeigeoptionen für die Event-Liste menu.hint_extended Energiespar-, EPG-Speicher- und Lade-Optionen, HDMI-CEC, Startkanal und mehr menu.hint_factory Zurücksetzen der Box auf Werkseinstellungen.\nDie Box wird danach neu gestartet menu.hint_fade Bei aktivierter Funktion werden die Menüfenster 'weich' ein- bzw. ausgeblendet diff --git a/data/locale/english.locale b/data/locale/english.locale index 96a2fe23b..c805924e1 100644 --- a/data/locale/english.locale +++ b/data/locale/english.locale @@ -319,6 +319,8 @@ eventfinder.search_within_epg Search within eventfinder.search_within_list Search within eventfinder.searching Search for keyword in EPG... eventfinder.start_search Start Search +eventlist.additional Additional informations +eventlist.name Eventlist eventlistbar.channelswitch schedule eventlistbar.eventsort sorting eventlistbar.recordevent record @@ -530,6 +532,7 @@ fontsize.epg_info1 EPG Info 1 fontsize.epg_info2 EPG Info 2 fontsize.epg_title EPG Title fontsize.eventlist_datetime Date / Time +fontsize.eventlist_event Event Info fontsize.eventlist_itemlarge Large fontsize.eventlist_itemsmall Small fontsize.eventlist_title Title @@ -748,7 +751,7 @@ menu.hint_channellist_epg_align EPG event align menu.hint_channellist_extended Show current event progress bar menu.hint_channellist_fonts Change channel list font sizes menu.hint_channellist_foot Show additional information\nin bottom box -menu.hint_channellist_setup Configure channe list GUI options +menu.hint_channellist_setup Configure channel list GUI options menu.hint_ci Conditional access menu\nto setup your CI CAM or embeded Conax card menu.hint_colors Configure GUI colors menu.hint_content_back Change GUI window background color @@ -765,7 +768,9 @@ menu.hint_epg_old_events Hours after event end time to consider\nevent old and r menu.hint_epg_save Save cached EPG to harddisk or usb flash\nand load it after boot menu.hint_epg_save_standby Save EPG on soft standby mode menu.hint_event_textcolor Change event color for colored-event options\nin channel list and infobar +menu.hint_eventlist_additional Show additional informations\nin main box menu.hint_eventlist_fonts Change event list font sizes +menu.hint_eventlist_setup Configure event list GUI options menu.hint_extended Power saving, EPG save/load options\nHDMI-CEC, Start channel, zap options menu.hint_factory Reset box to factory state\nBox will reboot after reset menu.hint_fade Fade GUI windows diff --git a/src/gui/audioplayer.cpp b/src/gui/audioplayer.cpp index 6be2621de..8b619e75e 100644 --- a/src/gui/audioplayer.cpp +++ b/src/gui/audioplayer.cpp @@ -1526,8 +1526,8 @@ void CAudioPlayerGui::hide() // printf("hide(){\n"); if (m_visible) { - m_frameBuffer->paintBackgroundBoxRel(m_x - ConnectLineBox_Width-1, m_y + m_title_height - 1, - m_width + ConnectLineBox_Width+2, m_height + 2 - m_title_height); + m_frameBuffer->paintBackgroundBoxRel(m_x - ConnectLineBox_Width, m_y + m_title_height, + m_width + ConnectLineBox_Width, m_height - m_title_height); clearItemID3DetailsLine(); m_frameBuffer->paintBackgroundBoxRel(m_x, m_y, m_width, m_title_height); m_frameBuffer->blit(); @@ -1800,13 +1800,13 @@ void CAudioPlayerGui::paintInfo() if (!m_show_playlist) { // no playlist -> smaller Info-Box - m_frameBuffer->paintBoxFrame(m_x, m_y, m_width, m_title_height - 10 - m_fheight,2, COL_MENUCONTENT_PLUS_6, c_rad_mid); - m_frameBuffer->paintBoxRel(m_x + 2, m_y + 2 , m_width - 4, m_title_height - 14 - m_fheight, COL_MENUCONTENTSELECTED_PLUS_0, c_rad_mid); + m_frameBuffer->paintBoxRel(m_x + 1, m_y + 1 , m_width - 2, m_title_height - 12 - m_fheight, COL_MENUCONTENTSELECTED_PLUS_0, c_rad_mid); + m_frameBuffer->paintBoxFrame(m_x, m_y, m_width, m_title_height - 10 - m_fheight, 2, COL_MENUCONTENT_PLUS_6, c_rad_mid); } else { - m_frameBuffer->paintBoxFrame(m_x, m_y, m_width, m_title_height - 10,2, COL_MENUCONTENT_PLUS_6, c_rad_mid); - m_frameBuffer->paintBoxRel(m_x + 2, m_y + 2 , m_width - 4, m_title_height - 14, COL_MENUCONTENTSELECTED_PLUS_0, c_rad_mid); + m_frameBuffer->paintBoxRel(m_x + 1, m_y + 1 , m_width - 2, m_title_height - 12, COL_MENUCONTENTSELECTED_PLUS_0, c_rad_mid); + m_frameBuffer->paintBoxFrame(m_x, m_y, m_width, m_title_height - 10, 2, COL_MENUCONTENT_PLUS_6, c_rad_mid); } // first line (Track number) diff --git a/src/gui/channellist.cpp b/src/gui/channellist.cpp index e64fdf3a6..0aba3313f 100644 --- a/src/gui/channellist.cpp +++ b/src/gui/channellist.cpp @@ -112,6 +112,8 @@ CChannelList::CChannelList(const char * const pName, bool phistoryMode, bool _vl footerHeight = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight()+6; //initial height value for buttonbar theight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight(); fheight = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->getHeight(); + fdescrheight = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight(); + previous_channellist_additional = -1; eventFont = SNeutrinoSettings::FONT_TYPE_CHANNELLIST_EVENT; dline = NULL; @@ -490,6 +492,8 @@ void CChannelList::calcSize() // recalculate theight, fheight and footerHeight for a possilble change of fontsize factor theight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight(); fheight = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->getHeight(); + fdescrheight = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight(); + if (fheight == 0) fheight = 1; /* avoid div-by-zero crash on invalid font */ footerHeight = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight()+6; @@ -506,7 +510,7 @@ void CChannelList::calcSize() } // calculate height (the infobox below mainbox is handled outside height) - info_height = 2*fheight + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight() + 10; + info_height = 2*fheight + fdescrheight + 10; height = frameBuffer->getScreenHeightRel() - info_height; // calculate x position @@ -1593,12 +1597,12 @@ void CChannelList::paintDetails(int index) } } #endif - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x+ xstart, y+ height+ 5+ 2* fheight, full_width- xstart- 30- noch_len, text2, colored_event_C ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x+ xstart, y+ height+ 5+ fdescrheight+ fheight, full_width- xstart- 30- noch_len, text2, colored_event_C ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); } g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->RenderString(x+ 10, y+ height+ 5+ fheight, full_width - 30 - seit_len, text1, colored_event_C ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x+ full_width- 10- seit_len, y+ height+ 5+ fheight, seit_len, cSeit, colored_event_C ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); // UTF-8 - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x+ full_width- 10- noch_len, y+ height+ 5+ 2* fheight, noch_len, cNoch, colored_event_C ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); // UTF-8 + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x+ full_width- 10- noch_len, y+ height+ 5+ fdescrheight+ fheight, noch_len, cNoch, colored_event_C ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); // UTF-8 } if(g_settings.channellist_foot == 0) { transponder t; @@ -1610,7 +1614,7 @@ void CChannelList::paintDetails(int index) else desc = desc + " (" + CServiceManager::getInstance()->GetSatelliteName(chanlist[index]->getSatellitePosition()) + ")"; - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->RenderString(x+ 10, y+ height+ 5+ 3*fheight, full_width - 30, desc.c_str(), COL_MENUCONTENTDARK, 0, true); + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->RenderString(x+ 10, y+ height+ 5+ 2*fheight +fdescrheight, full_width - 30, desc.c_str(), COL_MENUCONTENTDARK, 0, true); } else if( !displayNext && g_settings.channellist_foot == 1) { // next Event char buf[128] = {0}; @@ -1623,8 +1627,8 @@ void CChannelList::paintDetails(int index) snprintf(buf, sizeof(buf), "%s", CurrentNext.next_name.c_str()); int from_len = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getRenderWidth(cFrom, true); // UTF-8 - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->RenderString(x+ 10, y+ height+ 5+ 3*fheight, full_width - 30 - from_len, buf, colored_event_N ? COL_COLORED_EVENTS_CHANNELLIST :COL_MENUCONTENTDARK, 0, true); - g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x+ full_width- 10- from_len, y+ height+ 5+ 3*fheight, from_len, cFrom, colored_event_N ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); // UTF-8 + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->RenderString(x+ 10, y+ height+ 5+ 2*fheight+ fdescrheight, full_width - 30 - from_len, buf, colored_event_N ? COL_COLORED_EVENTS_CHANNELLIST :COL_MENUCONTENTDARK, 0, true); + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->RenderString(x+ full_width- 10- from_len, y+ height+ 5+ 2*fheight+ fdescrheight, from_len, cFrom, colored_event_N ? COL_COLORED_EVENTS_CHANNELLIST : COL_MENUCONTENTDARK, 0, true); // UTF-8 } } if ((g_settings.channellist_additional) && (p_event != NULL)) diff --git a/src/gui/channellist.h b/src/gui/channellist.h index 1dd633d35..6c0828f5e 100644 --- a/src/gui/channellist.h +++ b/src/gui/channellist.h @@ -68,6 +68,7 @@ private: int new_zap_mode; int fheight; // Fonthoehe Channellist-Inhalt int theight; // Fonthoehe Channellist-Titel + int fdescrheight; int footerHeight; int eventFont; int ffheight; diff --git a/src/gui/components/cc_item_progressbar.h b/src/gui/components/cc_item_progressbar.h index a7c0d5796..36bb4d26c 100644 --- a/src/gui/components/cc_item_progressbar.h +++ b/src/gui/components/cc_item_progressbar.h @@ -111,7 +111,7 @@ class CProgressBar : public CComponentsItem CProgressBar(); CProgressBar( const int x_pos, const int y_pos, const int w = -1, const int h = -1, - fb_pixel_t color_frame = 0, fb_pixel_t color_body = COL_INFOBAR_PLUS_3, fb_pixel_t color_shadow = COL_INFOBAR_PLUS_7, + fb_pixel_t color_frame = 0, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0, const fb_pixel_t active_col = COL_INFOBAR_PLUS_7, const fb_pixel_t passive_col = COL_INFOBAR_PLUS_3, const bool blinkenlights = false, const int r = 40, const int g = 100, const int b =70, diff --git a/src/gui/epgview.cpp b/src/gui/epgview.cpp index 9407b8b31..d3c1a4f53 100644 --- a/src/gui/epgview.cpp +++ b/src/gui/epgview.cpp @@ -224,10 +224,10 @@ void CEpgData::showText( int startPos, int ypos ) int max_mon_w = 0, max_wday_w = 0; int digi = g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth("29.."); for(int i = 0; i < 12;i++){ - max_mon_w = std::max(max_mon_w ,g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(g_Locale->getText(CLocaleManager::getMonth(i)))); + max_mon_w = std::max(max_mon_w ,g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(std::string(g_Locale->getText(CLocaleManager::getMonth(i))) + ".", true)); // UTF-8 if(i > 6) continue; - max_wday_w = std::max(max_wday_w ,g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(g_Locale->getText(CLocaleManager::getWeekday(i)))); + max_wday_w = std::max(max_wday_w ,g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(std::string(g_Locale->getText(CLocaleManager::getWeekday(i))) + ".", true)); // UTF-8 } frameBuffer->paintBoxRel(sx, y, ox- 15, sb, COL_MENUCONTENT_PLUS_0); // background of the text box for (int i = startPos; i < textSize && i < startPos + medlinecount; i++, y += medlineheight) @@ -651,6 +651,7 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start int pbx = sx + 10 + widthl + 10 + ((ox-104-widthr-widthl-10-10-20)>>1); CProgressBar pb(pbx, sy+oy-height, 104, height-6); pb.setBlink(); + pb.setRgb(0, 100, 70); pb.setValues(epg_done, 100); pb.paint(false); } @@ -697,6 +698,7 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start int pbx = sx + 10 + widthl + 10 + ((ox-104-widthr-widthl-10-10-20)>>1); CProgressBar pb(pbx, sy+oy-height, 104, height-6); pb.setBlink(); + pb.setRgb(0, 100, 70); pb.setValues(epg_done, 100); pb.paint(false); } @@ -748,7 +750,7 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start case CRCInput::RC_up: showPos -= scrollCount; if (showPos<0) - showPos = 0; + showPos=0; else showText(showPos, sy + toph); break; @@ -772,7 +774,13 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start strcpy(recDir, b.getSelectedFile()->Name.c_str()); } else doRecord = false; + if (!bigFonts && g_settings.bigFonts) { + g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->setSize((int)(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->getSize() * BIG_FONT_FAKTOR)); + g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize((int)(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * BIG_FONT_FAKTOR)); + } + bigFonts = g_settings.bigFonts; show(channel_id,epgData.eventID,&epgData.epg_times.startzeit,false); + showPos=0; } else if (g_settings.recording_choose_direct_rec_dir == 1) { @@ -782,7 +790,13 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start { hide(); recDirs.exec(NULL,""); + if (!bigFonts && g_settings.bigFonts) { + g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->setSize((int)(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->getSize() * BIG_FONT_FAKTOR)); + g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize((int)(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * BIG_FONT_FAKTOR)); + } + bigFonts = g_settings.bigFonts; show(channel_id,epgData.eventID,&epgData.epg_times.startzeit,false); + showPos=0; timeoutEnd = CRCInput::calcTimeoutEnd(g_settings.timing[SNeutrinoSettings::TIMING_EPG]); } else { @@ -861,9 +875,10 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->setSize((int)(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->getSize() * BIG_FONT_FAKTOR)); g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize((int)(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * BIG_FONT_FAKTOR)); } + bigFonts = g_settings.bigFonts; + show(channel_id,tmp_eID,&tmp_sZeit,false); + showPos=0; } - bigFonts = g_settings.bigFonts; - show(channel_id,tmp_eID,&tmp_sZeit,false); } break; } @@ -885,7 +900,7 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize((int)(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() / BIG_FONT_FAKTOR)); } g_settings.bigFonts = bigFonts; - show(channel_id, id, &startzeit, false); + show(channel_id, id, &startzeit, false, call_fromfollowlist); showPos=0; break; diff --git a/src/gui/eventlist.cpp b/src/gui/eventlist.cpp index 357c70933..9b1baaebe 100644 --- a/src/gui/eventlist.cpp +++ b/src/gui/eventlist.cpp @@ -249,7 +249,10 @@ int CNeutrinoEventList::exec(const t_channel_id channel_id, const std::string& c full_width = frameBuffer->getScreenWidthRel(); x = getScreenStartX(full_width); - width = full_width / 3 * 2; + if (g_settings.eventlist_additional) + width = full_width / 3 * 2; + else + width = full_width; height = frameBuffer->getScreenHeightRel(); iheight = ::paintButtons(0, 0, 0, 1, tmp_button, 0, 0, "", false, COL_INFOBAR_SHADOW, NULL, 0, false); @@ -282,7 +285,8 @@ int CNeutrinoEventList::exec(const t_channel_id channel_id, const std::string& c infozone_width = full_width - width; // init right info_zone - cc_infozone = new CComponentsText(x+width+5, y+theight+10, infozone_width-10, listmaxshow*fheight-20); + if (g_settings.eventlist_additional) + cc_infozone = new CComponentsText(x+width+10, y+theight, infozone_width-20, listmaxshow*fheight); int res = menu_return::RETURN_REPAINT; //printf("CNeutrinoEventList::exec: channel_id %llx\n", channel_id); @@ -675,7 +679,8 @@ int CNeutrinoEventList::exec(const t_channel_id channel_id, const std::string& c frameBuffer->blit(); } - delete cc_infozone; + if (cc_infozone) + delete cc_infozone; cc_infozone = NULL; oldIndex = -1; oldEventID = -1; @@ -720,12 +725,13 @@ void CNeutrinoEventList::paintItem(unsigned int pos, t_channel_id channel_idI) unsigned int curpos = liststart + pos; const char * icontype = 0; + if(RADIUS_LARGE) + frameBuffer->paintBoxRel(x, ypos, width- 15, fheight, COL_MENUCONTENT_PLUS_0, 0); + if (curpos==selected) { color = COL_MENUCONTENTSELECTED; bgcolor = COL_MENUCONTENTSELECTED_PLUS_0; - if(RADIUS_LARGE) - frameBuffer->paintBoxRel(x, ypos, width- 15, fheight, COL_MENUCONTENT_PLUS_0, 0); } else if (curpos == current_event ) { @@ -738,7 +744,7 @@ void CNeutrinoEventList::paintItem(unsigned int pos, t_channel_id channel_idI) bgcolor = COL_MENUCONTENT_PLUS_0; } - frameBuffer->paintBoxRel(x, ypos, width- 15, fheight, bgcolor, color == COL_MENUCONTENTSELECTED ? RADIUS_LARGE : 0); + frameBuffer->paintBoxRel(x, ypos, width- 15, fheight, bgcolor, RADIUS_LARGE); if(curposgetText(LOCALE_EPGLIST_NOEVENTS); - cc_infozone->setText(infozone_text, CTextBox::TOP, g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMLARGE]); + cc_infozone->setText(infozone_text, CTextBox::TOP, g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_EVENT]); cc_infozone->doPaintBg(false); cc_infozone->paint(CC_SAVE_SCREEN_NO); } @@ -904,7 +913,7 @@ void CNeutrinoEventList::paint(t_channel_id channel_id) } // paint background for right box - if (!bgRightBoxPaint) { + if (g_settings.eventlist_additional && !bgRightBoxPaint) { frameBuffer->paintBoxRel(x+width,y+theight,infozone_width,listmaxshow*fheight,COL_MENUCONTENT_PLUS_0); bgRightBoxPaint = true; } diff --git a/src/gui/osd_setup.cpp b/src/gui/osd_setup.cpp index b971f5aeb..2aa16d8d0 100644 --- a/src/gui/osd_setup.cpp +++ b/src/gui/osd_setup.cpp @@ -92,12 +92,13 @@ const SNeutrinoSettings::FONT_TYPES channellist_font_sizes[5] = SNeutrinoSettings::FONT_TYPE_CHANNEL_NUM_ZAP }; -const SNeutrinoSettings::FONT_TYPES eventlist_font_sizes[4] = +const SNeutrinoSettings::FONT_TYPES eventlist_font_sizes[5] = { SNeutrinoSettings::FONT_TYPE_EVENTLIST_TITLE, SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMLARGE, SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMSMALL, SNeutrinoSettings::FONT_TYPE_EVENTLIST_DATETIME, + SNeutrinoSettings::FONT_TYPE_EVENTLIST_EVENT }; const SNeutrinoSettings::FONT_TYPES infobar_font_sizes[4] = @@ -135,7 +136,7 @@ font_sizes_groups font_sizes_groups[6] = { {LOCALE_FONTMENU_MENU , 5, other_font_sizes , "fontsize.doth", LOCALE_MENU_HINT_MENU_FONTS }, {LOCALE_FONTMENU_CHANNELLIST, 5, channellist_font_sizes, "fontsize.dcha", LOCALE_MENU_HINT_CHANNELLIST_FONTS }, - {LOCALE_FONTMENU_EVENTLIST , 4, eventlist_font_sizes , "fontsize.deve", LOCALE_MENU_HINT_EVENTLIST_FONTS }, + {LOCALE_FONTMENU_EVENTLIST , 5, eventlist_font_sizes , "fontsize.deve", LOCALE_MENU_HINT_EVENTLIST_FONTS }, {LOCALE_FONTMENU_EPG , 4, epg_font_sizes , "fontsize.depg", LOCALE_MENU_HINT_EPG_FONTS }, {LOCALE_FONTMENU_INFOBAR , 4, infobar_font_sizes , "fontsize.dinf", LOCALE_MENU_HINT_INFOBAR_FONTS }, {LOCALE_FONTMENU_GAMELIST , 2, gamelist_font_sizes , "fontsize.dgam", LOCALE_MENU_HINT_GAMELIST_FONTS } @@ -158,6 +159,7 @@ font_sizes_struct neutrino_font[FONT_TYPE_COUNT] = {LOCALE_FONTSIZE_EVENTLIST_ITEMLARGE, 20, FONT_STYLE_BOLD , 1}, {LOCALE_FONTSIZE_EVENTLIST_ITEMSMALL, 14, FONT_STYLE_REGULAR, 1}, {LOCALE_FONTSIZE_EVENTLIST_DATETIME , 16, FONT_STYLE_REGULAR, 1}, + {LOCALE_FONTSIZE_EVENTLIST_EVENT , 17, FONT_STYLE_REGULAR, 1}, {LOCALE_FONTSIZE_GAMELIST_ITEMLARGE , 20, FONT_STYLE_BOLD , 1}, {LOCALE_FONTSIZE_GAMELIST_ITEMSMALL , 16, FONT_STYLE_REGULAR, 1}, {LOCALE_FONTSIZE_CHANNELLIST , 20, FONT_STYLE_BOLD , 1}, @@ -459,11 +461,18 @@ int COsdSetup::showOsdSetup() mf->setHint("", LOCALE_MENU_HINT_CHANNELLIST_SETUP); osd_menu->addItem(mf); + //eventlist + CMenuWidget osd_menu_eventlist(LOCALE_MAINMENU_SETTINGS, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_OSDSETUP_EVENTLIST); + showOsdEventlistSetup(&osd_menu_eventlist); + mf = new CMenuForwarder(LOCALE_EVENTLIST_NAME, true, NULL, &osd_menu_eventlist, NULL, CRCInput::RC_4); + mf->setHint("", LOCALE_MENU_HINT_EVENTLIST_SETUP); + osd_menu->addItem(mf); + #ifdef SCREENSHOT //screenshot CMenuWidget osd_menu_screenshot(LOCALE_MAINMENU_SETTINGS, NEUTRINO_ICON_SETTINGS, width, MN_WIDGET_ID_OSDSETUP_SCREENSHOT); showOsdScreenShotSetup(&osd_menu_screenshot); - mf = new CMenuForwarder(LOCALE_SCREENSHOT_MENU, true, NULL, &osd_menu_screenshot, NULL, CRCInput::RC_3); + mf = new CMenuForwarder(LOCALE_SCREENSHOT_MENU, true, NULL, &osd_menu_screenshot, NULL, CRCInput::RC_5); mf->setHint("", LOCALE_MENU_HINT_SCREENSHOT_SETUP); osd_menu->addItem(mf); #endif @@ -875,6 +884,19 @@ void COsdSetup::showOsdChanlistSetup(CMenuWidget *menu_chanlist) menu_chanlist->addItem(mc); } +//eventlist +void COsdSetup::showOsdEventlistSetup(CMenuWidget *menu_eventlist) +{ + CMenuOptionChooser * mc; + + menu_eventlist->addIntroItems(LOCALE_EVENTLIST_NAME); + + // eventlist additional + mc = new CMenuOptionChooser(LOCALE_EVENTLIST_ADDITIONAL, &g_settings.eventlist_additional, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true); + mc->setHint("", LOCALE_MENU_HINT_EVENTLIST_ADDITIONAL); + menu_eventlist->addItem(mc); +} + bool COsdSetup::changeNotify(const neutrino_locale_t OptionName, void * data) { if(ARE_LOCALES_EQUAL(OptionName, LOCALE_COLORMENU_CONTRAST_FONTS)) diff --git a/src/gui/osd_setup.h b/src/gui/osd_setup.h index e62f6f793..d3a84ce30 100644 --- a/src/gui/osd_setup.h +++ b/src/gui/osd_setup.h @@ -57,6 +57,7 @@ class COsdSetup : public CMenuTarget, public CChangeObserver void showOsdTimeoutSetup(CMenuWidget *menu_timeout); void showOsdInfobarSetup(CMenuWidget *menu_infobar); void showOsdChanlistSetup(CMenuWidget *menu_chanlist); + void showOsdEventlistSetup(CMenuWidget *menu_eventlist); void showOsdScreenShotSetup(CMenuWidget *menu_screenshot); void AddFontSettingItem(CMenuWidget &font_Settings, const SNeutrinoSettings::FONT_TYPES number_of_fontsize_entry); diff --git a/src/neutrino.cpp b/src/neutrino.cpp index d2f8be34e..9f10088b2 100644 --- a/src/neutrino.cpp +++ b/src/neutrino.cpp @@ -654,6 +654,7 @@ int CNeutrinoApp::loadSetup(const char * fname) g_settings.mode_clock = configfile.getInt32( "mode_clock", 0); g_settings.zapto_pre_time = configfile.getInt32( "zapto_pre_time", 0); g_settings.spectrum = configfile.getBool("spectrum" , false); + g_settings.eventlist_additional = configfile.getInt32("eventlist_additional", 0); g_settings.channellist_additional = configfile.getInt32("channellist_additional", 0); //default off g_settings.channellist_epgtext_align_right = configfile.getBool("channellist_epgtext_align_right" , false); g_settings.channellist_extended = configfile.getBool("channellist_extended" , true); @@ -1086,6 +1087,7 @@ void CNeutrinoApp::saveSetup(const char * fname) configfile.setInt32( "mode_clock", g_settings.mode_clock ); configfile.setInt32( "zapto_pre_time", g_settings.zapto_pre_time ); configfile.setBool("spectrum", g_settings.spectrum); + configfile.setInt32("eventlist_additional", g_settings.eventlist_additional); configfile.setInt32("channellist_additional", g_settings.channellist_additional); configfile.setBool("channellist_epgtext_align_right", g_settings.channellist_epgtext_align_right); configfile.setBool("channellist_extended" , g_settings.channellist_extended); @@ -3060,7 +3062,7 @@ void CNeutrinoApp::ExitRun(const bool /*write_si*/, int retcode) //CVFD::getInstance()->ShowText(g_Locale->getText(LOCALE_MAINMENU_SHUTDOWN)); #if HAVE_COOL_HARDWARE - my_system(2,"/etc/init.d/rcK"); + my_system("/etc/init.d/rcK"); sync(); my_system(2,"/bin/umount", "-a"); sleep(1); diff --git a/src/neutrino_menue.h b/src/neutrino_menue.h index 2f516cdf7..dd62e51c8 100644 --- a/src/neutrino_menue.h +++ b/src/neutrino_menue.h @@ -55,6 +55,7 @@ enum MN_WIDGET_ID //osd setup MN_WIDGET_ID_OSDSETUP, MN_WIDGET_ID_OSDSETUP_CHANNELLIST, + MN_WIDGET_ID_OSDSETUP_EVENTLIST, MN_WIDGET_ID_OSDSETUP_FONT, MN_WIDGET_ID_OSDSETUP_FONTSCALE, MN_WIDGET_ID_OSDSETUP_INFOBAR, diff --git a/src/system/locals.h b/src/system/locals.h index 503258966..7718abca1 100644 --- a/src/system/locals.h +++ b/src/system/locals.h @@ -346,6 +346,8 @@ typedef enum LOCALE_EVENTFINDER_SEARCH_WITHIN_LIST, LOCALE_EVENTFINDER_SEARCHING, LOCALE_EVENTFINDER_START_SEARCH, + LOCALE_EVENTLIST_ADDITIONAL, + LOCALE_EVENTLIST_NAME, LOCALE_EVENTLISTBAR_CHANNELSWITCH, LOCALE_EVENTLISTBAR_EVENTSORT, LOCALE_EVENTLISTBAR_RECORDEVENT, @@ -557,6 +559,7 @@ typedef enum LOCALE_FONTSIZE_EPG_INFO2, LOCALE_FONTSIZE_EPG_TITLE, LOCALE_FONTSIZE_EVENTLIST_DATETIME, + LOCALE_FONTSIZE_EVENTLIST_EVENT, LOCALE_FONTSIZE_EVENTLIST_ITEMLARGE, LOCALE_FONTSIZE_EVENTLIST_ITEMSMALL, LOCALE_FONTSIZE_EVENTLIST_TITLE, @@ -792,7 +795,9 @@ typedef enum LOCALE_MENU_HINT_EPG_SAVE, LOCALE_MENU_HINT_EPG_SAVE_STANDBY, LOCALE_MENU_HINT_EVENT_TEXTCOLOR, + LOCALE_MENU_HINT_EVENTLIST_ADDITIONAL, LOCALE_MENU_HINT_EVENTLIST_FONTS, + LOCALE_MENU_HINT_EVENTLIST_SETUP, LOCALE_MENU_HINT_EXTENDED, LOCALE_MENU_HINT_FACTORY, LOCALE_MENU_HINT_FADE, diff --git a/src/system/locals_intern.h b/src/system/locals_intern.h index 375a3f834..086306766 100644 --- a/src/system/locals_intern.h +++ b/src/system/locals_intern.h @@ -346,6 +346,8 @@ const char * locale_real_names[] = "eventfinder.search_within_list", "eventfinder.searching", "eventfinder.start_search", + "eventlist.additional", + "eventlist.name", "eventlistbar.channelswitch", "eventlistbar.eventsort", "eventlistbar.recordevent", @@ -557,6 +559,7 @@ const char * locale_real_names[] = "fontsize.epg_info2", "fontsize.epg_title", "fontsize.eventlist_datetime", + "fontsize.eventlist_event", "fontsize.eventlist_itemlarge", "fontsize.eventlist_itemsmall", "fontsize.eventlist_title", @@ -792,7 +795,9 @@ const char * locale_real_names[] = "menu.hint_epg_save", "menu.hint_epg_save_standby", "menu.hint_event_textcolor", + "menu.hint_eventlist_additional", "menu.hint_eventlist_fonts", + "menu.hint_eventlist_setup", "menu.hint_extended", "menu.hint_factory", "menu.hint_fade", diff --git a/src/system/settings.h b/src/system/settings.h index 47ff8d805..2150546cb 100644 --- a/src/system/settings.h +++ b/src/system/settings.h @@ -424,6 +424,7 @@ struct SNeutrinoSettings int pip_y; int bigFonts; int big_windows; + int eventlist_additional; int channellist_additional; int channellist_epgtext_align_right; int channellist_extended; @@ -472,7 +473,7 @@ struct SNeutrinoSettings // Font sizes -#define FONT_TYPE_COUNT 24 +#define FONT_TYPE_COUNT 25 enum FONT_TYPES { FONT_TYPE_MENU = 0, FONT_TYPE_MENU_TITLE = 1, @@ -485,19 +486,20 @@ struct SNeutrinoSettings FONT_TYPE_EVENTLIST_ITEMLARGE = 8, FONT_TYPE_EVENTLIST_ITEMSMALL = 9, FONT_TYPE_EVENTLIST_DATETIME = 10, - FONT_TYPE_GAMELIST_ITEMLARGE = 11, - FONT_TYPE_GAMELIST_ITEMSMALL = 12, - FONT_TYPE_CHANNELLIST = 13, - FONT_TYPE_CHANNELLIST_DESCR = 14, - FONT_TYPE_CHANNELLIST_NUMBER = 15, - FONT_TYPE_CHANNELLIST_EVENT = 16, - FONT_TYPE_CHANNEL_NUM_ZAP = 17, - FONT_TYPE_INFOBAR_NUMBER = 18, - FONT_TYPE_INFOBAR_CHANNAME = 19, - FONT_TYPE_INFOBAR_INFO = 20, - FONT_TYPE_INFOBAR_SMALL = 21, - FONT_TYPE_FILEBROWSER_ITEM = 22, - FONT_TYPE_MENU_HINT = 23 + FONT_TYPE_EVENTLIST_EVENT = 11, + FONT_TYPE_GAMELIST_ITEMLARGE = 12, + FONT_TYPE_GAMELIST_ITEMSMALL = 13, + FONT_TYPE_CHANNELLIST = 14, + FONT_TYPE_CHANNELLIST_DESCR = 15, + FONT_TYPE_CHANNELLIST_NUMBER = 16, + FONT_TYPE_CHANNELLIST_EVENT = 17, + FONT_TYPE_CHANNEL_NUM_ZAP = 18, + FONT_TYPE_INFOBAR_NUMBER = 19, + FONT_TYPE_INFOBAR_CHANNAME = 20, + FONT_TYPE_INFOBAR_INFO = 21, + FONT_TYPE_INFOBAR_SMALL = 22, + FONT_TYPE_FILEBROWSER_ITEM = 23, + FONT_TYPE_MENU_HINT = 24 }; // lcdd