Disable pause/shutdown/etc buttons if Domain-0

This commit is contained in:
Daniel P. Berrange
2006-06-27 14:15:28 -04:00
parent dc0d6db84c
commit 142e3ce408
3 changed files with 8 additions and 3 deletions

View File

@@ -162,7 +162,7 @@ class vmmConsole(gobject.GObject):
else:
self.window.get_widget("control-run").set_sensitive(False)
if status in [ libvirt.VIR_DOMAIN_SHUTDOWN, libvirt.VIR_DOMAIN_SHUTOFF ,libvirt.VIR_DOMAIN_CRASHED ]:
if status in [ libvirt.VIR_DOMAIN_SHUTDOWN, libvirt.VIR_DOMAIN_SHUTOFF ,libvirt.VIR_DOMAIN_CRASHED ] or vm.is_management_domain():
self.window.get_widget("control-pause").set_sensitive(False)
self.window.get_widget("control-shutdown").set_sensitive(False)
self.window.get_widget("control-terminal").set_sensitive(False)
@@ -177,7 +177,7 @@ class vmmConsole(gobject.GObject):
else:
self.window.get_widget("control-pause").set_active(False)
if status in [ libvirt.VIR_DOMAIN_SHUTOFF ,libvirt.VIR_DOMAIN_CRASHED ]:
if status in [ libvirt.VIR_DOMAIN_SHUTOFF ,libvirt.VIR_DOMAIN_CRASHED ] or vm.is_management_domain():
self.window.get_widget("console-pages").set_current_page(0)
else:
if status == libvirt.VIR_DOMAIN_PAUSED:

View File

@@ -211,7 +211,7 @@ class vmmDetails(gobject.GObject):
else:
self.window.get_widget("control-run").set_sensitive(False)
if status in [ libvirt.VIR_DOMAIN_SHUTDOWN, libvirt.VIR_DOMAIN_SHUTOFF, libvirt.VIR_DOMAIN_CRASHED ]:
if status in [ libvirt.VIR_DOMAIN_SHUTDOWN, libvirt.VIR_DOMAIN_SHUTOFF, libvirt.VIR_DOMAIN_CRASHED ] or vm.is_management_domain():
self.window.get_widget("control-pause").set_sensitive(False)
self.window.get_widget("control-shutdown").set_sensitive(False)
self.window.get_widget("control-terminal").set_sensitive(False)

View File

@@ -33,6 +33,11 @@ class vmmDomain(gobject.GObject):
def get_uuid(self):
return self.uuid
def is_management_domain(self):
if self.vm.ID() == 0:
return True
return False
def _normalize_status(self, status):
if status == libvirt.VIR_DOMAIN_NOSTATE:
return libvirt.VIR_DOMAIN_RUNNING