from Tools.FuzzyDate import FuzzyTime
from ServiceReference import ServiceReference
from Components.MultiContent import MultiContentEntryText
+from Components.config import config
from enigma import eListboxPythonMultiContent, eListbox, gFont, iServiceInformation, \
RT_HALIGN_LEFT, RT_HALIGN_RIGHT, eServiceReference, eServiceCenter
SORT_ALPHANUMERIC = 1
SORT_RECORDED = 2
- LISTTYPE_ORIGINAL = 0
- LISTTYPE_COMPACT_DESCRIPTION = 1
- LISTTYPE_COMPACT = 2
- LISTTYPE_MINIMAL = 3
+ LISTTYPE_ORIGINAL = 1
+ LISTTYPE_COMPACT_DESCRIPTION = 2
+ LISTTYPE_COMPACT = 3
+ LISTTYPE_MINIMAL = 4
- HIDE_DESCRIPTION = 0
- SHOW_DESCRIPTION = 1
+ HIDE_DESCRIPTION = 1
+ SHOW_DESCRIPTION = 2
- def __init__(self, root, list_type, sort_type, descr_state):
+ def __init__(self, root, list_type=None, sort_type=None, descr_state=None):
GUIComponent.__init__(self)
- self.list_type = list_type
- self.descr_state = descr_state
- self.sort_type = sort_type
+ self.list_type = list_type or self.LISTTYPE_ORIGINAL
+ self.descr_state = descr_state or self.HIDE_DESCRIPTION
+ self.sort_type = sort_type or self.SORT_RECORDED
self.l = eListboxPythonMultiContent()
self.tags = set()
if len <= 0: #recalc len when not already done
cur_idx = self.l.getCurrentSelectionIndex()
x = self.list[cur_idx]
- len = x[1].getLength(x[0]) #recalc the movie length...
+ if config.usage.load_length_of_movies_in_moviellist.value:
+ len = x[1].getLength(x[0]) #recalc the movie length...
+ else:
+ len = 0 #dont recalc movielist to speedup loading the list
self.list[cur_idx] = (x[0], x[1], x[2], len) #update entry in list... so next time we don't need to recalc
if len > 0:
len = "%d:%02d" % (len / 60, len % 60)
else:
- len = "?:??"
+ if config.usage.load_length_of_movies_in_moviellist.value:
+ len = "?:??"
+ else:
+ len = "X:XX"
res = [ None ]
instance.setContent(self.l)
instance.selectionChanged.get().append(self.selectionChanged)
+ def preWidgetRemove(self, instance):
+ instance.setContent(None)
+ instance.selectionChanged.get().remove(self.selectionChanged)
+
def reload(self, root = None, filter_tags = None):
if root is not None:
self.load(root, filter_tags)
ref = x[0]
info = self.serviceHandler.info(ref)
name = info and info.getName(ref)
- return name and name.lower() or ""
+ return (name and name.lower() or "", -x[2])
def moveTo(self, serviceref):
count = 0