diff options
author | Jeremy Katz <katzj@redhat.com> | 2007-03-06 02:42:18 +0000 |
---|---|---|
committer | Jeremy Katz <katzj@redhat.com> | 2007-03-06 02:42:18 +0000 |
commit | ceaa437b5f21bd5b1b712ccb8d4878247c683c1d (patch) | |
tree | ed05ac69f68570ea4bb5b445bd56f9933fcf6d13 /iw | |
parent | 3f3a81047c859f0ac836016da99129c9c170daef (diff) | |
download | anaconda-ceaa437b5f21bd5b1b712ccb8d4878247c683c1d.tar.gz anaconda-ceaa437b5f21bd5b1b712ccb8d4878247c683c1d.tar.xz anaconda-ceaa437b5f21bd5b1b712ccb8d4878247c683c1d.zip |
2007-03-05 Jeremy Katz <katzj@redhat.com>
* iw/autopart_type.py (PartitionTypeWindow.getScreen): Add a combo
to select where to install the bootloader. This is extra needed
with the combination of installing to USB and EDD.
* ui/autopart.glade: Add the UI bits.
Diffstat (limited to 'iw')
-rw-r--r-- | iw/autopart_type.py | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/iw/autopart_type.py b/iw/autopart_type.py index 8f051dc54..bf3a0e6d7 100644 --- a/iw/autopart_type.py +++ b/iw/autopart_type.py @@ -68,6 +68,12 @@ class PartitionTypeWindow(InstallWindow): if not autopart.queryAutoPartitionOK(self.anaconda): raise gui.StayOnScreen + # pop the boot device to be first in the drive list + defiter = self.bootcombo.get_active_iter() + defboot = self.bootcombo.get_model().get_value(defiter, 1) + self.anaconda.id.bootloader.drivelist.remove(defboot) + self.anaconda.id.bootloader.drivelist.insert(0, defboot) + if self.xml.get_widget("reviewButton").get_active(): self.dispatch.skipStep("partition", skip = 0) self.dispatch.skipStep("bootloader", skip = 0) @@ -91,6 +97,7 @@ class PartitionTypeWindow(InstallWindow): self.xml.get_widget("reviewButton").set_active(True) self.xml.get_widget("reviewButton").set_sensitive(False) self.xml.get_widget("driveScroll").set_sensitive(False) + self.xml.get_widget("bootDriveCombo").set_sensitive(False) else: if self.prevrev == None: self.xml.get_widget("reviewButton").set_active(self.review) @@ -100,6 +107,7 @@ class PartitionTypeWindow(InstallWindow): self.xml.get_widget("reviewButton").set_sensitive(True) self.xml.get_widget("driveScroll").set_sensitive(True) + self.xml.get_widget("bootDriveCombo").set_sensitive(True) def addIscsiDrive(self): if not network.hasActiveNetDev(): @@ -236,12 +244,15 @@ class PartitionTypeWindow(InstallWindow): (self.xml, vbox) = gui.getGladeWidget("autopart.glade", "parttypeBox") + gui.widgetExpander(self.xml.get_widget("mainlabel")) + self.combo = self.xml.get_widget("partitionTypeCombo") + gui.widgetExpander(self.combo) cell = gtk.CellRendererText() self.combo.pack_start(cell, True) self.combo.set_attributes(cell, text = 0) - cell.set_property("wrap-width", 475) - self.combo.set_size_request(480, -1) + cell.set_property("wrap-width", 495) + self.combo.set_size_request(500, -1) store = gtk.TreeStore(gobject.TYPE_STRING, gobject.TYPE_INT) self.combo.set_model(store) @@ -266,6 +277,24 @@ class PartitionTypeWindow(InstallWindow): self.xml.get_widget("driveScroll").add(self.drivelist) + self.bootcombo = self.xml.get_widget("bootDriveCombo") + thecell = gtk.CellRendererText() + self.bootcombo.pack_start(thecell, True) + + bootstore = gtk.TreeStore(gobject.TYPE_STRING, gobject.TYPE_STRING) + self.bootcombo.set_model(bootstore) + defaultBoot = self.anaconda.id.bootloader.drivelist[0] + for disk in self.diskset.disks.values(): + size = partedUtils.getDeviceSizeMB(disk.dev) + dispstr = "%s %8.0f MB %s" %(disk.dev.path[5:], size, disk.dev.model) + i = bootstore.append(None) + bootstore[i] = (dispstr, disk.dev.path[5:]) + if disk.dev.path[5:] == defaultBoot: + self.bootcombo.set_active_iter(i) + + if len(bootstore) <= 1: + self.bootcombo.set_sensitive(False) + self.prevrev = None self.review = not self.dispatch.stepInSkipList("partition") self.xml.get_widget("reviewButton").set_active(self.review) @@ -282,6 +311,9 @@ class PartitionTypeWindow(InstallWindow): self.xml.get_widget("reviewButton").set_active(True) self.xml.get_widget("reviewButton").set_sensitive(False) + self.xml.get_widget("driveScroll").set_sensitive(False) + self.xml.get_widget("bootDriveCombo").set_sensitive(False) + sigs = { "on_partitionTypeCombo_changed": self.comboChanged, "on_addButton_clicked": self.addDrive } self.xml.signal_autoconnect(sigs) |