add support for showing and modifying scsi controller model
We could specify 'model' for scsi controllers, that means we could see more than one controllers with same icon and blank details. That will confuse users. This patch will show details of scsi controller device. And also we could modify scsi controller model between 'default' and 'virtio-scsi'. Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
This commit is contained in:
parent
dc0b9bbaaf
commit
4c53debd8a
|
@ -3327,13 +3327,12 @@ class vmmDetails(vmmGObjectUI):
|
|||
|
||||
type_label = virtinst.VirtualController.pretty_type(dev.type)
|
||||
model_label = dev.model
|
||||
is_usb = dev.type == virtinst.VirtualController.TYPE_USB
|
||||
if not model_label:
|
||||
model_label = _("Default")
|
||||
|
||||
self.widget("controller-type").set_text(type_label)
|
||||
combo = self.widget("controller-model")
|
||||
uihelpers.set_grid_row_visible(combo, is_usb)
|
||||
uihelpers.set_grid_row_visible(combo, True)
|
||||
|
||||
model = combo.get_model()
|
||||
model.clear()
|
||||
|
@ -3342,6 +3341,9 @@ class vmmDetails(vmmGObjectUI):
|
|||
model.append(["ich9-ehci1", "USB 2"])
|
||||
model.append(["nec-xhci", "USB 3"])
|
||||
self.widget("config-remove").set_sensitive(False)
|
||||
if dev.type == virtinst.VirtualController.TYPE_SCSI:
|
||||
model.append(["default", "Default"])
|
||||
model.append(["virtio-scsi", "Virtio SCSI"])
|
||||
else:
|
||||
self.widget("config-remove").set_sensitive(True)
|
||||
|
||||
|
|
|
@ -825,6 +825,7 @@ class vmmDomain(vmmLibvirtObject):
|
|||
def change(editdev):
|
||||
ignore = editdev
|
||||
|
||||
if editdev.type == "usb":
|
||||
guest = self._get_xmlobj_to_define()
|
||||
ctrls = guest.get_devices("controller")
|
||||
ctrls = [x for x in ctrls if (x.type ==
|
||||
|
@ -842,6 +843,12 @@ class vmmDomain(vmmLibvirtObject):
|
|||
if newmodel != "default":
|
||||
dev.model = newmodel
|
||||
guest.add_device(dev)
|
||||
elif editdev.type == "scsi":
|
||||
if newmodel == "default":
|
||||
editdev.model = None
|
||||
else:
|
||||
editdev.model = newmodel
|
||||
self.update_device(editdev)
|
||||
|
||||
return self._redefine_device(change, devobj)
|
||||
|
||||
|
|
Loading…
Reference in New Issue