Trace shows an error: AttributeError: 'EpgCenterTimerlist' object has no attribute 'serviceNameFont'
Traceback (most recent call last):
File "/usr/lib/enigma2/python/mytest.py", line 196, in processDelay
callback(*retval)
File "/usr/lib/enigma2/python/Screens/InfoBarGenerics.py", line 2018, in extensionCallback
File "/usr/lib/enigma2/python/Tools/BoundFunction.py", line 9, in __call__
File "/usr/lib/enigma2/python/Screens/InfoBarGenerics.py", line 1041, in runPlugin
File "/usr/lib/enigma2/python/Plugins/Extensions/MerlinEPGCenter/plugin.py", line 85, in openMerlinEPGCenter
session.open(MerlinEPGCenter, servicelist, currentBouquet, bouquetList, currentIndex)
File "/usr/lib/enigma2/python/mytest.py", line 284, in open
dlg = self.current_dialog = self.instantiateDialog(screen, *arguments, **kwargs)
File "/usr/lib/enigma2/python/mytest.py", line 228, in instantiateDialog
return self.doInstantiateDialog(screen, arguments, kwargs, self.desktop)
File "/usr/lib/enigma2/python/mytest.py", line 251, in doInstantiateDialog
dlg.applySkin()
File "/usr/lib/enigma2/python/Components/GUISkin.py", line 112, in applySkin
File "/usr/lib/enigma2/python/Components/GUISkin.py", line 30, in createGUIScreen
File "/usr/lib/enigma2/python/Components/TimerList.py", line 131, in applySkin
AttributeError: 'EpgCenterTimerlist' object has no attribute 'serviceNameFont'
< 4804.044459> (PyObject_CallObject(<bound method Session.processDelay of <__main__.Session instance at 0x202e850>>,()) failed)
]]>
</enigma2crashlog>
The following commits might be related:
commit a6fd96c8e0d7dbbf42c7619a7731c3ee0c5b9a90
Author: littlesat <littlesat99@yahoo.com>
Date: Sat Jan 10 19:59:47 2015 +0100
TimerEdit: Streamline some code by only once configure the list
commit de54000dcf57b73433a38bf9d12c1b16628efebc
Author: littlesat <littlesat99@yahoo.com>
Date: Sat Jan 10 12:15:37 2015 +0100
TimerList: Make more skinnable e.g. for 1080 skin
e.g. <widget name="timerlist" position="780,105" size="1110,900" font="Regular;39" scrollbarMode="showOnDemand" itemHeight="75" rowSplit="36" setServiceNameFont="Regular;30" setFont="Regular;27" satPosLeft="250"/>
Lucky guess, the following will fix it.
diff --git a/lib/python/Components/TimerList.py b/lib/python/Components/TimerList.py
index 62fdc16..49b67f1 100644
--- a/lib/python/Components/TimerList.py
+++ b/lib/python/Components/TimerList.py
@@ -110,6 +110,8 @@ class TimerList(HTMLComponent, GUIComponent, object):
def itemHeight(value):
self.itemHeight = int(value)
def setServiceNameFont(value):
+ if not hasattr(self, 'serviceNameFont'):
+ return
self.serviceNameFont = parseFont(value, ((1,1),(1,1)))
def setEventNameFont(value):
self.eventNameFont = parseFont(value, ((1,1),(1,1)))
or
diff --git a/lib/python/Components/TimerList.py b/lib/python/Components/TimerList.py
index 62fdc16..013c7c4 100644
--- a/lib/python/Components/TimerList.py
+++ b/lib/python/Components/TimerList.py
@@ -110,7 +110,10 @@ class TimerList(HTMLComponent, GUIComponent, object):
def itemHeight(value):
self.itemHeight = int(value)
def setServiceNameFont(value):
- self.serviceNameFont = parseFont(value, ((1,1),(1,1)))
+ try:
+ self.serviceNameFont = parseFont(value, ((1,1),(1,1)))
+ except:
+ pass
def setEventNameFont(value):
self.eventNameFont = parseFont(value, ((1,1),(1,1)))
def setFont(value):
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916