X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ead18eb53880ecff8c41fa2e2db7ae87e2b950de..3285eb3ebcd0ba134ac6b80337f8519d5a0da5b0:/lib/python/Components/FileList.py diff --git a/lib/python/Components/FileList.py b/lib/python/Components/FileList.py index 01358d53..ae171c30 100644 --- a/lib/python/Components/FileList.py +++ b/lib/python/Components/FileList.py @@ -1,5 +1,5 @@ -from HTMLComponent import * -from GUIComponent import * +from HTMLComponent import HTMLComponent +from GUIComponent import GUIComponent import re from os import path as os_path, listdir @@ -59,12 +59,23 @@ class FileList(MenuList, HTMLComponent, GUIComponent): self.l.setFont(0, gFont("Regular", 18)) self.l.setItemHeight(23) + self.serviceHandler = eServiceCenter.getInstance() def getSelection(self): if self.l.getCurrentSelection() is None: return None return self.l.getCurrentSelection()[0] + def getSelectionIndex(self): + return self.l.getCurrentSelectionIndex() + + def getCurrentEvent(self): + l = self.l.getCurrentSelection() + if not l or l[0][1] == True: + return None + else: + return self.serviceHandler.info(l[0][0]).getEvent(l[0][0]) + def getFileList(self): return self.list @@ -187,3 +198,16 @@ class FileList(MenuList, HTMLComponent, GUIComponent): def postWidgetCreate(self, instance): instance.setContent(self.l) + + def execBegin(self): + harddiskmanager.on_partition_list_change.append(self.partitionListChanged) + + def execEnd(self): + harddiskmanager.on_partition_list_change.remove(self.partitionListChanged) + + def refresh(self): + self.changeDir(self.current_directory, self.getFilename()) + + def partitionListChanged(self, action, device): + if self.current_directory is None: + self.refresh()