diff options
author | Erik Troan <ewt@redhat.com> | 2000-05-04 21:40:55 +0000 |
---|---|---|
committer | Erik Troan <ewt@redhat.com> | 2000-05-04 21:40:55 +0000 |
commit | 1955995fa7671e26ad5d0126de3a41cfd1e49e46 (patch) | |
tree | 7bcd4f5fb51cce46a7fc069fe9b32fe8592255a6 /comps.py | |
parent | 6dd5a379dd5b01fd4f47c525a83e42a638954234 (diff) | |
download | anaconda-1955995fa7671e26ad5d0126de3a41cfd1e49e46.tar.gz anaconda-1955995fa7671e26ad5d0126de3a41cfd1e49e46.tar.xz anaconda-1955995fa7671e26ad5d0126de3a41cfd1e49e46.zip |
added running total of component size
Diffstat (limited to 'comps.py')
-rw-r--r-- | comps.py | 48 |
1 files changed, 48 insertions, 0 deletions
@@ -45,6 +45,9 @@ class HeaderList: def __getitem__(self, item): return self.packages[item] + def list(self): + return self.packages.values() + def __init__(self, hdlist): self.hdlist = hdlist self.packages = {} @@ -77,6 +80,9 @@ class Component: def __getitem__(self, key): return self.items[key] + def __repr__(self): + return "comp %s" % (self.name) + def addPackage(self, package): self.items[package] = package @@ -171,6 +177,48 @@ class ComponentSet: return self.comps[key] return self.compsDict[key] + def getSelectionState(self): + compsSelected = [] + pkgsSelected = [] + for comp in self.comps: + if comp.selected: + compsSelected.append(comp) + + for pkg in self.packages.list(): + if pkg.selected: + pkgsSelected.append(pkg) + + return (compsSelected, pkgsSelected) + + def setSelectionState(self, pickle): + (compsSelected, pkgsSelected) = pickle + + for comp in self.comps: + if not comp.hidden: comp.unselect(0) + for comp in compsSelected: + comp.select(1) + self['Base'].select(1) + + for pkg in self.packages.list(): + pkg.selected = 0 + for pkg in pkgsSelected: + pkg.selected = 1 + + def sizeStr(self): + megs = self.size() / 1024 / 1024 + if (megs >= 1000): + big = megs / 1000 + little = megs % 1000 + return "%d,%dM" % (big, little) + + return "%dM" % (megs) + + def size(self): + total = 0 + for pkg in self.packages.list(): + if pkg.selected: total = total + pkg['size'] + return total + def keys(self): return self.compsDict.keys() |