summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLarsAC <LarsAC@e10066b5-e1e2-0310-b819-94efdf66514b>2005-11-25 09:58:35 +0000
committerLarsAC <LarsAC@e10066b5-e1e2-0310-b819-94efdf66514b>2005-11-25 09:58:35 +0000
commit6a20e80e51c555b4d759bd359b76f6a288f93a38 (patch)
tree889b0a08387430b89afc5123f2af8596f99daf50
parentde2afabf79cd506fdb856696332f2c964b9a2eed (diff)
downloadvdr-plugin-muggle-6a20e80e51c555b4d759bd359b76f6a288f93a38.tar.gz
vdr-plugin-muggle-6a20e80e51c555b4d759bd359b76f6a288f93a38.tar.bz2
Added support for graphTFT image display again. Remove bug not showing live display.
git-svn-id: https://vdr-muggle.svn.sourceforge.net/svnroot/vdr-muggle/trunk/muggle-plugin@900 e10066b5-e1e2-0310-b819-94efdf66514b
-rw-r--r--mg_image_provider.c4
-rw-r--r--mg_image_provider.h2
-rw-r--r--vdr_player.c11
3 files changed, 9 insertions, 8 deletions
diff --git a/mg_image_provider.c b/mg_image_provider.c
index 2a94c89..97c31b2 100644
--- a/mg_image_provider.c
+++ b/mg_image_provider.c
@@ -55,7 +55,7 @@ int picture_select( struct dirent const *entry )
}
}
-std::string mgImageProvider::getImagePath()
+std::string mgImageProvider::getImagePath( string &source )
{
string fname;
@@ -64,7 +64,7 @@ std::string mgImageProvider::getImagePath()
if( m_image_index < m_converted_images.size() )
{
fname = m_converted_images[ m_image_index ];
-
+ source = m_image_list[ m_image_index ];
// wrap to beginning of list when all images are displayed
m_image_index += 1;
if( m_image_index >= m_converted_images.size() )
diff --git a/mg_image_provider.h b/mg_image_provider.h
index c1e834b..b758336 100644
--- a/mg_image_provider.h
+++ b/mg_image_provider.h
@@ -20,7 +20,7 @@ class mgImageProvider : public cThread
/*! \brief obtain next image in list
*/
- std::string getImagePath();
+ std::string getImagePath( std::string &source );
/*! \brief tell the image provider that we are replaying a different item now. Return, whether images were found.
*/
diff --git a/vdr_player.c b/vdr_player.c
index 6b178df..b11b0f1 100644
--- a/vdr_player.c
+++ b/vdr_player.c
@@ -238,7 +238,7 @@ class mgPCMPlayer : public cPlayer, cThread
};
mgPCMPlayer::mgPCMPlayer (mgSelection * plist)
- : cPlayer(the_setup.BackgrMode? pmAudioOnlyBlack: pmAudioOnly )
+ : cPlayer(the_setup.BackgrMode==2? pmAudioOnly:pmAudioOnlyBlack )
{
m_playlist = plist;
@@ -1021,10 +1021,11 @@ void mgPCMPlayer::CheckImage()
{
if( ( m_index % the_setup.ImageShowDuration == 0 && m_index > m_lastshow) || m_lastshow < 0 )
{ // all n decoding steps
- m_current_image = m_img_provider->getImagePath( );
+ string source;
+ m_current_image = m_img_provider->getImagePath( source );
// check for TFT display of image
- TransferImageTFT( m_current_image );
+ TransferImageTFT( source );
// check for background display of image
if( the_setup.BackgrMode == 1 )
@@ -1429,13 +1430,13 @@ mgPlayerControl::ShowContents ()
int cur = list->getItemPosition ();
for (int i = 0; i < num_items; i++)
{
- mgItemGd *item = dynamic_cast<mgItemGd*>(list->getItem (cur - 3 + i));
+ mgItemGd *item = dynamic_cast<mgItemGd*>(list->getItem (cur + i));
if (item)
{
char *buf;
asprintf (&buf, "%s\t%s", item->getTitle ().c_str (),
item->getArtist ().c_str ());
- m_menu->SetItem (buf, i, i == 3, i > 3);
+ m_menu->SetItem (buf, i, i == 0, i >= 0);
free (buf);
}
}