aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-10 21:25:52 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-10 21:25:52 +0000
commitb59c62ccf0f4deb5c603b4b3a9c39812bce3523c (patch)
tree40f9cebcaab08704214de929d70f7f68f0f1da83
parent2bc0cb62106dd22ff2408ec0784c881d90a622c0 (diff)
downloadenigma2-b59c62ccf0f4deb5c603b4b3a9c39812bce3523c.tar.gz
enigma2-b59c62ccf0f4deb5c603b4b3a9c39812bce3523c.zip
epglist is now working
-rw-r--r--data/skin.xml5
-rw-r--r--lib/components/listboxepg.cpp23
-rw-r--r--lib/dvb/epgcache.cpp2
3 files changed, 20 insertions, 10 deletions
diff --git a/data/skin.xml b/data/skin.xml
index 21f735b4..cc066f79 100644
--- a/data/skin.xml
+++ b/data/skin.xml
@@ -154,7 +154,10 @@
<widget name="key_yellow" position="280,0" size="140,40" backgroundColor="yellow" font="Arial;21" />
<widget name="key_blue" position="420,0" size="140,40" backgroundColor="blue" font="Arial;21" />
</screen>
- <screen name="MovieSelection" position="150,100" size="400,420" title="Select-a-movie">
+ <screen name="EPGSelection" position="90,100" size="560,400" title="EPG Selection">
+ <widget name="list" position="0,0" size="560,400" />
+ </screen>
+ <screen name="MovieSelection" position="150,100" size="400,420" title="Select-a-movie">
<widget name="list" position="0,50" size="400,300" />
<widget name="freeDiskSpace" position="0,360" size="400,40" />
</screen>
diff --git a/lib/components/listboxepg.cpp b/lib/components/listboxepg.cpp
index a8edd287..b72a6a82 100644
--- a/lib/components/listboxepg.cpp
+++ b/lib/components/listboxepg.cpp
@@ -11,10 +11,15 @@ void eListboxEPGContent::setRoot(const eServiceReference &root)
m_root = root;
epg->Lock();
- epg->startTimeQuery(root);
- ePtr<eServiceEvent> ptr;
- while( !epg->getNextTimeEntry(ptr) )
- m_list.push_back(ptr);
+ if (!epg->startTimeQuery(root))
+ {
+ ePtr<eServiceEvent> ptr;
+ while( !epg->getNextTimeEntry(ptr) )
+ m_list.push_back(ptr);
+ }
+ else
+ eDebug("startTimeQuery failed %s", root.toString().c_str());
+ epg->Unlock();
m_size = m_list.size();
cursorHome();
@@ -144,12 +149,12 @@ void eListboxEPGContent::setSize(const eSize &size)
{
m_itemsize = size;
eSize s = m_itemsize;
- s.setWidth((size.width()/4)-10);
+ s.setWidth(size.width()/20*5);
m_element_position[celBeginTime] = eRect(ePoint(0, 0), s);
- m_element_font[celBeginTime] = new gFont("Arial", 14);
- s.setWidth(size.width()/4*3);
- m_element_position[celTitle] = eRect(ePoint(size.width()/4, 0), s);
- m_element_font[celTitle] = new gFont("Arial", 14);
+ m_element_font[celBeginTime] = new gFont("Arial", 20);
+ s.setWidth(size.width()/20*15);
+ m_element_position[celTitle] = eRect(ePoint(size.width()/20*5, 0), s);
+ m_element_font[celTitle] = new gFont("Arial", 20);
}
void eListboxEPGContent::paint(gPainter &painter, eWindowStyle &style, const ePoint &offset, int selected)
diff --git a/lib/dvb/epgcache.cpp b/lib/dvb/epgcache.cpp
index d7515b14..7b94a1a7 100644
--- a/lib/dvb/epgcache.cpp
+++ b/lib/dvb/epgcache.cpp
@@ -1153,6 +1153,8 @@ RESULT eEPGCache::startTimeQuery(const eServiceReference &service, time_t begin,
m_timemap_cursor = it;
}
}
+ else
+ m_timemap_cursor = It->second.second.begin();
return 0;
}
return -1;