From: James Bunton Date: Wed, 16 Jul 2008 00:03:51 +0000 (+1000) Subject: randombg: Fixed reload for the file lists Greg doesn't use X-Git-Url: https://code.delx.au/bg-scripts/commitdiff_plain/b3bc5607d8c415ca577e4d0d98dcd95daf145a62 randombg: Fixed reload for the file lists Greg doesn't use --- diff --git a/randombg.py b/randombg.py index 510d786..f54183f 100755 --- a/randombg.py +++ b/randombg.py @@ -74,13 +74,19 @@ class RandomFileList(BaseFileList): def add_path(self, path): self.paths.append(path) debug('Added path "%s" to the list' % path) - + def get_next_image(self): n = random.randint(0, len(self.list)-1) self.last_image = self.list[n] debug("Picked file '%s' from list" % self.last_image) return self.last_image + def get_current_image(self): + if self.last_image: + return self.last_image + else: + return self.get_next_image() + def is_empty(self): return len(self.list) == 0 @@ -161,6 +167,7 @@ class FolderRandomFileList(BaseFileList): directory has the same chance of being chosen.""" def __init__(self): self.directories = {} + self.last_image = None def scan_paths(self): pass @@ -185,6 +192,12 @@ class FolderRandomFileList(BaseFileList): debug('filename: "%s"' % filename) return os.path.join(directory, filename) + def get_current_image(self): + if self.last_image: + return self.last_image + else: + return self.get_next_image() + def is_empty(self): return len(self.directories.values()) == 0