in settings.h
in neutrino.cpp
Code: Alles auswählen
g_settings.infobar_show             = configfile.getInt32( "infobar_show"             , 0);
...
configfile.setInt32("infobar_show"             , g_settings.infobar_show);
...
#define INFOBAR_SHOW_OPTIONS_COUNT 3
const CMenuOptionChooser::keyval  INFOBAR_SHOW_OPTIONS[INFOBAR_SHOW_OPTIONS_COUNT]=
{
	{ 0 , LOCALE_OPTIONS_OFF },
	{ 1 , LOCALE_PICTUREVIEWER_RESIZE_SIMPLE },
	{ 2 , LOCALE_PICTUREVIEWER_RESIZE_COLOR_AVERAGE }
};
in remotecontrol.cpp
Code: Alles auswählen
//infobar anzeigen bei epg wechsel
					if(g_settings.infobar_show == 1)	//einfach
						{
						g_InfoViewer->show_Info(true);
						}
					if(g_settings.infobar_show == 2)	//aufwendig
						{
						g_RCInput->postMsg( NeutrinoMessages::SHOW_INFOBAR , 0 );
						}
in infoviewer.cpp
Code: Alles auswählen
void CInfoViewer::show_Info( bool calledFromRemote)	//einfache einblendung bei sendungswechsel
{
        int BoxTeilX  = (BoxEndX-BoxStartX)/10;
        char runningStart[10];
	char nextStart[10];
	
	struct tm *pStartZeit = localtime(&info_CurrentNext.current_zeit.startzeit);
		sprintf( (char*)&runningStart, "%02d:%02d", pStartZeit->tm_hour, pStartZeit->tm_min );
		
	struct tm *pnStartZeit = localtime(&info_CurrentNext.next_zeit.startzeit);
		sprintf( (char*)&nextStart, "%02d:%02d", pnStartZeit->tm_hour, pnStartZeit->tm_min);
	frameBuffer->paintBackgroundBoxRel(BoxStartX+ (BoxTeilX*1), BoxStartY - 185, (BoxTeilX*8), 130); // Killen einer vorhandenen Box
	
	frameBuffer->paintBoxRel(BoxStartX+ (BoxTeilX*1), BoxStartY -185, (BoxTeilX*8), 130, COL_INFOBAR_PLUS_0); //Box malen...
		g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_CHANNAME]->RenderString(BoxStartX+(BoxTeilX*3), BoxStartY - 130, (BoxTeilX*5), "Folgende Sendung:", COL_INFOBAR, 0, true); // UTF-8
		
	if (strcmp(runningStart, nextStart) == 0)
		{
		g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_INFO]->RenderString(BoxStartX+(BoxTeilX*1)+ 10,	BoxStartY - 100, (BoxTeilX*7), info_CurrentNext.current_name, COL_INFOBAR);
		g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_INFO]->RenderString(BoxStartX+(BoxTeilX*4)+ 20,	BoxStartY - 70, (BoxTeilX*4), runningStart, COL_INFOBAR);
		}
	else
		{
		g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_INFO]->RenderString(BoxStartX+(BoxTeilX*1)+ 10,	BoxStartY - 100, (BoxTeilX*7), info_CurrentNext.current_name, COL_INFOBAR);
		g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_INFO]->RenderString(BoxStartX+(BoxTeilX*3)+ 15,	BoxStartY - 70, (BoxTeilX*5), runningStart, COL_INFOBAR);
		g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_INFO]->RenderString(BoxStartX+(BoxTeilX*4)+ 25,	BoxStartY - 70, (BoxTeilX*4), "bis", COL_INFOBAR);
		g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_INFO]->RenderString(BoxStartX+(BoxTeilX*5)+ 15,	BoxStartY - 70, (BoxTeilX*3), nextStart, COL_INFOBAR);
		}
	
	sleep(3);
	frameBuffer->paintBackgroundBoxRel(BoxStartX+ (BoxTeilX*1), BoxStartY - 185, (BoxTeilX*8), 130); // Killen der Box
}
infoviewer.h
und schon sollte das gehen. es ist aber halt nicht eincheckungswürdig,da es sehr unsauber programmiert wurde 

 aber es funktioniert. das ist für mich die hauptsache.