mirror of
https://github.com/virt-manager/virt-manager.git
synced 2025-02-12 00:15:51 -06:00
Added display of virtual cpus
This commit is contained in:
parent
b31fba6c93
commit
f4aa6fe3d2
@ -51,7 +51,7 @@
|
||||
<signal name="activate" handler="on_menu_file_new_activate" last_modification_time="Tue, 28 Mar 2006 17:06:34 GMT"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image24">
|
||||
<widget class="GtkImage" id="image36">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-new</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -78,7 +78,7 @@
|
||||
<signal name="activate" handler="on_menu_file_open_connection_activate" last_modification_time="Mon, 12 Jun 2006 20:34:47 GMT"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image25">
|
||||
<widget class="GtkImage" id="image37">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-connect</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -136,7 +136,7 @@
|
||||
<signal name="activate" handler="on_menu_edit_details_activate" last_modification_time="Tue, 28 Mar 2006 17:06:34 GMT"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image26">
|
||||
<widget class="GtkImage" id="image38">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-properties</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -157,7 +157,7 @@
|
||||
<signal name="activate" handler="on_menu_edit_delete_activate" last_modification_time="Tue, 28 Mar 2006 17:06:34 GMT"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image27">
|
||||
<widget class="GtkImage" id="image39">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-delete</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -218,6 +218,16 @@
|
||||
</widget>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<widget class="GtkCheckMenuItem" id="menu_view_virtual_cpus">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">Virtual CPUs</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="active">False</property>
|
||||
<signal name="activate" handler="on_menu_view_virtual_cpus_activate" last_modification_time="Wed, 12 Jul 2006 20:33:23 GMT"/>
|
||||
</widget>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<widget class="GtkCheckMenuItem" id="menu_view_memory_usage">
|
||||
<property name="visible">True</property>
|
||||
|
@ -63,6 +63,9 @@ class vmmConfig:
|
||||
def is_vmlist_cpu_usage_visible(self):
|
||||
return self.conf.get_bool(self.conf_dir + "/vmlist-fields/cpu_usage")
|
||||
|
||||
def is_vmlist_virtual_cpus_visible(self):
|
||||
return self.conf.get_bool(self.conf_dir + "/vmlist-fields/virtual_cpus")
|
||||
|
||||
def is_vmlist_memory_usage_visible(self):
|
||||
return self.conf.get_bool(self.conf_dir + "/vmlist-fields/memory_usage")
|
||||
|
||||
@ -80,6 +83,9 @@ class vmmConfig:
|
||||
def set_vmlist_cpu_usage_visible(self, state):
|
||||
self.conf.set_bool(self.conf_dir + "/vmlist-fields/cpu_usage", state)
|
||||
|
||||
def set_vmlist_virtual_cpus_visible(self, state):
|
||||
self.conf.set_bool(self.conf_dir + "/vmlist-fields/virtual_cpus", state)
|
||||
|
||||
def set_vmlist_memory_usage_visible(self, state):
|
||||
self.conf.set_bool(self.conf_dir + "/vmlist-fields/memory_usage", state)
|
||||
|
||||
@ -97,6 +103,9 @@ class vmmConfig:
|
||||
def on_vmlist_cpu_usage_visible_changed(self, callback):
|
||||
self.conf.notify_add(self.conf_dir + "/vmlist-fields/cpu_usage", callback)
|
||||
|
||||
def on_vmlist_virtual_cpus_visible_changed(self, callback):
|
||||
self.conf.notify_add(self.conf_dir + "/vmlist-fields/virtual_cpus", callback)
|
||||
|
||||
def on_vmlist_memory_usage_visible_changed(self, callback):
|
||||
self.conf.notify_add(self.conf_dir + "/vmlist-fields/memory_usage", callback)
|
||||
|
||||
|
@ -111,6 +111,7 @@ class vmmDomain(gobject.GObject):
|
||||
"cpuTimePercent": pcentCpuTime,
|
||||
"currMem": info[2],
|
||||
"currMemPercent": pcentCurrMem,
|
||||
"vcpuCount": info[3],
|
||||
"maxMem": info[1],
|
||||
"maxMemPercent": pcentMaxMem,
|
||||
}
|
||||
@ -178,6 +179,11 @@ class vmmDomain(gobject.GObject):
|
||||
def disk_usage_percentage(self):
|
||||
return 1
|
||||
|
||||
def vcpu_count(self):
|
||||
if len(self.record) == 0:
|
||||
return 0
|
||||
return self.record[0]["vcpuCount"]
|
||||
|
||||
def cpu_time_vector(self):
|
||||
vector = []
|
||||
stats = self.record
|
||||
|
@ -54,16 +54,19 @@ class vmmManager(gobject.GObject):
|
||||
|
||||
self.config.on_vmlist_status_visible_changed(self.toggle_status_visible_widget)
|
||||
self.config.on_vmlist_cpu_usage_visible_changed(self.toggle_cpu_usage_visible_widget)
|
||||
self.config.on_vmlist_virtual_cpus_visible_changed(self.toggle_virtual_cpus_visible_widget)
|
||||
self.config.on_vmlist_memory_usage_visible_changed(self.toggle_memory_usage_visible_widget)
|
||||
self.config.on_vmlist_disk_usage_visible_changed(self.toggle_disk_usage_visible_widget)
|
||||
self.config.on_vmlist_network_traffic_visible_changed(self.toggle_network_traffic_visible_widget)
|
||||
|
||||
self.window.get_widget("menu_view_status").set_active(self.config.is_vmlist_status_visible())
|
||||
self.window.get_widget("menu_view_cpu_usage").set_active(self.config.is_vmlist_cpu_usage_visible())
|
||||
self.window.get_widget("menu_view_virtual_cpus").set_active(self.config.is_vmlist_virtual_cpus_visible())
|
||||
self.window.get_widget("menu_view_memory_usage").set_active(self.config.is_vmlist_memory_usage_visible())
|
||||
self.window.get_widget("menu_view_disk_usage").set_active(self.config.is_vmlist_disk_usage_visible())
|
||||
self.window.get_widget("menu_view_network_traffic").set_active(self.config.is_vmlist_network_traffic_visible())
|
||||
|
||||
|
||||
self.window.get_widget("menu_file_new").set_sensitive(False)
|
||||
self.window.get_widget("vm-new").set_sensitive(False)
|
||||
self.window.get_widget("vm-view").set_sensitive(False)
|
||||
@ -88,6 +91,7 @@ class vmmManager(gobject.GObject):
|
||||
self.window.signal_autoconnect({
|
||||
"on_menu_view_status_activate" : self.toggle_status_visible_conf,
|
||||
"on_menu_view_cpu_usage_activate" : self.toggle_cpu_usage_visible_conf,
|
||||
"on_menu_view_virtual_cpus_activate" : self.toggle_virtual_cpus_visible_conf,
|
||||
"on_menu_view_memory_usage_activate" : self.toggle_memory_usage_visible_conf,
|
||||
"on_menu_view_disk_usage_activate" : self.toggle_disk_usage_visible_conf,
|
||||
"on_menu_view_network_traffic_activate" : self.toggle_network_traffic_visible_conf,
|
||||
@ -226,6 +230,7 @@ class vmmManager(gobject.GObject):
|
||||
nameCol = gtk.TreeViewColumn("Name")
|
||||
statusCol = gtk.TreeViewColumn("Status")
|
||||
cpuUsageCol = gtk.TreeViewColumn("CPU usage")
|
||||
virtualCPUsCol = gtk.TreeViewColumn("VCPUs")
|
||||
memoryUsageCol = gtk.TreeViewColumn("Memory usage")
|
||||
diskUsageCol = gtk.TreeViewColumn("Disk usage")
|
||||
networkTrafficCol = gtk.TreeViewColumn("Network traffic")
|
||||
@ -238,6 +243,7 @@ class vmmManager(gobject.GObject):
|
||||
vmlist.append_column(nameCol)
|
||||
vmlist.append_column(statusCol)
|
||||
vmlist.append_column(cpuUsageCol)
|
||||
vmlist.append_column(virtualCPUsCol)
|
||||
vmlist.append_column(memoryUsageCol)
|
||||
vmlist.append_column(diskUsageCol)
|
||||
vmlist.append_column(networkTrafficCol)
|
||||
@ -250,9 +256,6 @@ class vmmManager(gobject.GObject):
|
||||
statusCol.set_cell_data_func(status_icon, self.status_icon, None)
|
||||
statusCol.set_visible(self.config.is_vmlist_status_visible())
|
||||
|
||||
|
||||
|
||||
|
||||
cpuUsage_txt = gtk.CellRendererText()
|
||||
#cpuUsage_img = gtk.CellRendererProgress()
|
||||
cpuUsage_img = sparkline.CellRendererSparkline()
|
||||
@ -263,6 +266,11 @@ class vmmManager(gobject.GObject):
|
||||
cpuUsageCol.set_visible(self.config.is_vmlist_cpu_usage_visible())
|
||||
cpuUsageCol.set_sort_column_id(VMLIST_SORT_CPU_USAGE)
|
||||
|
||||
virtualCPUs_txt = gtk.CellRendererText()
|
||||
virtualCPUsCol.pack_start(virtualCPUs_txt, False)
|
||||
virtualCPUsCol.set_cell_data_func(virtualCPUs_txt, self.virtual_cpus_text, None)
|
||||
virtualCPUsCol.set_visible(self.config.is_vmlist_virtual_cpus_visible())
|
||||
|
||||
memoryUsage_txt = gtk.CellRendererText()
|
||||
memoryUsage_img = gtk.CellRendererProgress()
|
||||
memoryUsageCol.pack_start(memoryUsage_txt, False)
|
||||
@ -332,13 +340,22 @@ class vmmManager(gobject.GObject):
|
||||
col = vmlist.get_column(2)
|
||||
col.set_visible(self.config.is_vmlist_cpu_usage_visible())
|
||||
|
||||
def toggle_virtual_cpus_visible_conf(self, menu):
|
||||
self.config.set_vmlist_virtual_cpus_visible(menu.get_active())
|
||||
|
||||
def toggle_virtual_cpus_visible_widget(self, ignore1, ignore2, ignore3, ignore4):
|
||||
menu = self.window.get_widget("menu_view_virtual_cpus")
|
||||
vmlist = self.window.get_widget("vm-list")
|
||||
col = vmlist.get_column(3)
|
||||
col.set_visible(self.config.is_vmlist_virtual_cpus_visible())
|
||||
|
||||
def toggle_memory_usage_visible_conf(self, menu):
|
||||
self.config.set_vmlist_memory_usage_visible(menu.get_active())
|
||||
|
||||
def toggle_memory_usage_visible_widget(self, ignore1, ignore2, ignore3, ignore4):
|
||||
menu = self.window.get_widget("menu_view_memory_usage")
|
||||
vmlist = self.window.get_widget("vm-list")
|
||||
col = vmlist.get_column(3)
|
||||
col = vmlist.get_column(4)
|
||||
col.set_visible(self.config.is_vmlist_memory_usage_visible())
|
||||
|
||||
def toggle_disk_usage_visible_conf(self, menu):
|
||||
@ -347,7 +364,7 @@ class vmmManager(gobject.GObject):
|
||||
def toggle_disk_usage_visible_widget(self, ignore1, ignore2, ignore3, ignore4):
|
||||
menu = self.window.get_widget("menu_view_disk_usage")
|
||||
vmlist = self.window.get_widget("vm-list")
|
||||
col = vmlist.get_column(4)
|
||||
col = vmlist.get_column(5)
|
||||
col.set_visible(self.config.is_vmlist_disk_usage_visible())
|
||||
|
||||
def toggle_network_traffic_visible_conf(self, menu):
|
||||
@ -356,7 +373,7 @@ class vmmManager(gobject.GObject):
|
||||
def toggle_network_traffic_visible_widget(self, ignore1, ignore2, ignore3, ignore4):
|
||||
menu = self.window.get_widget("menu_view_network_traffic")
|
||||
vmlist = self.window.get_widget("vm-list")
|
||||
col = vmlist.get_column(5)
|
||||
col = vmlist.get_column(6)
|
||||
col.set_visible(self.config.is_vmlist_network_traffic_visible())
|
||||
|
||||
|
||||
@ -380,6 +397,11 @@ class vmmManager(gobject.GObject):
|
||||
data.reverse()
|
||||
cell.set_property('data_array', data)
|
||||
|
||||
def virtual_cpus_text(self, column, cell, model, iter, data):
|
||||
uuid = model.get_value(iter, 0)
|
||||
cell.set_property('text', str(self.connection.get_vm(uuid).vcpu_count()))
|
||||
|
||||
|
||||
def memory_usage_text(self, column, cell, model, iter, data):
|
||||
uuid = model.get_value(iter, 0)
|
||||
current = self.connection.get_vm(uuid).current_memory()
|
||||
|
Loading…
Reference in New Issue
Block a user