X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/6e68543591be09859bbaa4c19e0065e65d8acfe3..ab26adc86e6198e65e20d6bf707a6011208111ce:/lib/python/Components/FileList.py diff --git a/lib/python/Components/FileList.py b/lib/python/Components/FileList.py index 3e38bd06..17e84359 100644 --- a/lib/python/Components/FileList.py +++ b/lib/python/Components/FileList.py @@ -1,12 +1,11 @@ -import re - +from re import compile as re_compile from os import path as os_path, listdir from MenuList import MenuList from Components.Harddisk import harddiskmanager from Tools.Directories import SCOPE_SKIN_IMAGE, resolveFilename -from enigma import RT_HALIGN_LEFT, eListbox, eListboxPythonMultiContent, \ +from enigma import RT_HALIGN_LEFT, eListboxPythonMultiContent, \ eServiceReference, eServiceCenter, gFont from Tools.LoadPixmap import LoadPixmap @@ -22,6 +21,7 @@ EXTENSIONS = { "avi": "movie", "mpg": "movie", "mpeg": "movie", + "mkv": "movie" } def FileEntryComponent(name, absolute = None, isDir = False): @@ -42,7 +42,7 @@ def FileEntryComponent(name, absolute = None, isDir = False): return res class FileList(MenuList): - def __init__(self, directory, showDirectories = True, showFiles = True, showMountpoints = True, matchingPattern = None, useServiceRef = False, inhibitDirs = False, inhibitMounts = False, enableWrapAround = False, additionalExtensions = None): + def __init__(self, directory, showDirectories = True, showFiles = True, showMountpoints = True, matchingPattern = None, useServiceRef = False, inhibitDirs = False, inhibitMounts = False, isTop = False, enableWrapAround = False, additionalExtensions = None): MenuList.__init__(self, list, enableWrapAround, eListboxPythonMultiContent) self.additional_extensions = additionalExtensions self.mountpoints = [] @@ -52,6 +52,7 @@ class FileList(MenuList): self.showDirectories = showDirectories self.showMountpoints = showMountpoints self.showFiles = showFiles + self.isTop = isTop # example: matching .nfi and .ts files: "^.*\.(nfi|ts)" self.matchingPattern = matchingPattern self.inhibitDirs = inhibitDirs or [] @@ -160,7 +161,7 @@ class FileList(MenuList): directories.append(directory + x + "/") files.remove(x) - if directory is not None and self.showDirectories: + if directory is not None and self.showDirectories and not self.isTop: if directory == self.current_mountpoint and self.showMountpoints: self.list.append(FileEntryComponent(name = "<" +_("List of Storage Devices") + ">", absolute = None, isDir = True)) elif (directory != "/") and not (self.inhibitMounts and self.getMountpoint(directory) in self.inhibitMounts): @@ -181,7 +182,7 @@ class FileList(MenuList): path = directory + x name = x - if (self.matchingPattern is None) or re.compile(self.matchingPattern).search(path): + if (self.matchingPattern is None) or re_compile(self.matchingPattern).search(path): self.list.append(FileEntryComponent(name = name, absolute = x , isDir = False)) self.l.setList(self.list)