FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Redhat > Fedora/Linux Management Tools

 
 
LinkBack Thread Tools
 
Old 12-08-2008, 02:58 PM
Cole Robinson
 
Default : New preferences dialog UI

That attached patch updates the virt-manager preferences dialog UI to
use a tabbed view. This makes the dialog easily extendible and hopefully
will encourage adding more global preference options.

UI is also added for the new enable/disable stats polling options. They
are hooked up the their underlying gconf entries, but they don't have
any effect (handled by the next patch).

Some screenshots:

http://fedorapeople.org/~crobinso/virt-manager/vmm-prefs-1.png
http://fedorapeople.org/~crobinso/virt-manager/vmm-prefs-2.png

Thanks,
Cole
# HG changeset patch
# User "Cole Robinson <crobinso@redhat.com>"
# Date 1228749085 18000
# Node ID c7cd0d65d7a67da18e6b7b44e5bbee98710569ce
# Parent f4b79629808d40de713ad8096de7897564d22dfa
Revamp preferences dialog.

More extensible design, hopefully will facilitate adding more options.
Add options to disable stats reporting by type (cpu, mem, disk, net), but
don't hook them up yet.

diff -r f4b79629808d -r c7cd0d65d7a6 src/virt-manager.schemas.in
--- a/src/virt-manager.schemas.in Sun Dec 07 16:32:56 2008 -0500
+++ b/src/virt-manager.schemas.in Mon Dec 08 10:11:25 2008 -0500
@@ -118,6 +118,58 @@
</schema>

<schema>
+ <key>/schemas/apps/::PACKAGE::/stats/enable-disk-poll</key>
+ <applyto>/apps/::PACKAGE::/stats/enable-disk-poll</applyto>
+ <owner>::PACKAGE::</owner>
+ <type>bool</type>
+ <default>0</default>
+
+ <locale name="C">
+ <short>Poll disk i/o stats</short>
+ <long>Whether or not the app will poll VM disk i/o statistics</long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/::PACKAGE::/stats/enable-net-poll</key>
+ <applyto>/apps/::PACKAGE::/stats/enable-net-poll</applyto>
+ <owner>::PACKAGE::</owner>
+ <type>bool</type>
+ <default>0</default>
+
+ <locale name="C">
+ <short>Poll net i/o stats</short>
+ <long>Whether or not the app will poll VM network i/o statistics</long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/::PACKAGE::/stats/enable-mem-poll</key>
+ <applyto>/apps/::PACKAGE::/stats/enable-mem-poll</applyto>
+ <owner>::PACKAGE::</owner>
+ <type>bool</type>
+ <default>1</default>
+
+ <locale name="C">
+ <short>Poll memory usage stats</short>
+ <long>Whether or not the app will poll connection and VM memory usage statistics</long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/::PACKAGE::/stats/enable-cpu-poll</key>
+ <applyto>/apps/::PACKAGE::/stats/enable-cpu-poll</applyto>
+ <owner>::PACKAGE::</owner>
+ <type>bool</type>
+ <default>1</default>
+
+ <locale name="C">
+ <short>Poll cpu stats</short>
+ <long>Whether or not the app will poll connection and VM cpu usage statistics</long>
+ </locale>
+ </schema>
+
+ <schema>
<key>/schemas/apps/::PACKAGE::/urls/url-list-length</key>
<applyto>/apps/::PACKAGE::/urls/url-list-length</applyto>
<owner>::PACKAGE::</owner>
diff -r f4b79629808d -r c7cd0d65d7a6 src/virtManager/config.py
--- a/src/virtManager/config.py Sun Dec 07 16:32:56 2008 -0500
+++ b/src/virtManager/config.py Mon Dec 08 10:11:25 2008 -0500
@@ -190,6 +190,40 @@
def on_stats_history_length_changed(self, callback):
self.conf.notify_add(self.conf_dir + "/stats/history-length", callback)

+
+ # Disable/Enable different stats polling
+ def get_stats_enable_disk_poll(self):
+ return self.conf.get_bool(self.conf_dir + "/stats/enable-disk-poll")
+ def get_stats_enable_net_poll(self):
+ return self.conf.get_bool(self.conf_dir + "/stats/enable-net-poll")
+ def get_stats_enable_mem_poll(self):
+ return self.conf.get_bool(self.conf_dir + "/stats/enable-mem-poll")
+ def get_stats_enable_cpu_poll(self):
+ return self.conf.get_bool(self.conf_dir + "/stats/enable-cpu-poll")
+
+ def set_stats_enable_disk_poll(self, val):
+ self.conf.set_bool(self.conf_dir + "/stats/enable-disk-poll", val)
+ def set_stats_enable_net_poll(self, val):
+ self.conf.set_bool(self.conf_dir + "/stats/enable-net-poll", val)
+ def set_stats_enable_mem_poll(self, val):
+ self.conf.set_bool(self.conf_dir + "/stats/enable-mem-poll", val)
+ def set_stats_enable_cpu_poll(self, val):
+ self.conf.set_bool(self.conf_dir + "/stats/enable-cpu-poll", val)
+
+ def on_stats_enable_disk_poll_changed(self, cb, userdata=None):
+ self.conf.notify_add(self.conf_dir + "/stats/enable-disk-poll", cb,
+ userdata)
+ def on_stats_enable_net_poll_changed(self, cb, userdata=None):
+ self.conf.notify_add(self.conf_dir + "/stats/enable-net-poll", cb,
+ userdata)
+ def on_stats_enable_mem_poll_changed(self, cb, userdata=None):
+ self.conf.notify_add(self.conf_dir + "/stats/enable-mem-poll", cb,
+ userdata)
+ def on_stats_enable_cpu_poll_changed(self, cb, userdata=None):
+ self.conf.notify_add(self.conf_dir + "/stats/enable-cpu-poll", cb,
+ userdata)
+
+ # VM Console preferences
def on_console_popup_changed(self, callback):
self.conf.notify_add(self.conf_dir + "/console/popup", callback)

diff -r f4b79629808d -r c7cd0d65d7a6 src/virtManager/preferences.py
--- a/src/virtManager/preferences.py Sun Dec 07 16:32:56 2008 -0500
+++ b/src/virtManager/preferences.py Mon Dec 08 10:11:25 2008 -0500
@@ -21,6 +21,9 @@
import gtk.glade
import gobject

+PREFS_PAGE_STATS = 0
+PREFS_PAGE_VM_PREFS = 1
+
class vmmPreferences(gobject.GObject):
__gsignals__ = {
"action-show-help": (gobject.SIGNAL_RUN_FIRST,
@@ -30,56 +33,87 @@
self.__gobject_init__()
self.window = gtk.glade.XML(config.get_glade_dir() + "/vmm-preferences.glade", "vmm-preferences", domain="virt-manager")
self.config = config
- self.window.get_widget("vmm-preferences").hide()
+
+ self.topwin = self.window.get_widget("vmm-preferences")
+ self.topwin.hide()

self.config.on_console_popup_changed(self.refresh_ console_popup)
self.config.on_console_keygrab_changed(self.refres h_console_keygrab)
self.config.on_stats_update_interval_changed(self. refresh_update_interval)
self.config.on_stats_history_length_changed(self.r efresh_history_length)

+ self.config.on_stats_enable_disk_poll_changed(self .refresh_disk_poll)
+ self.config.on_stats_enable_net_poll_changed(self. refresh_net_poll)
+ self.config.on_stats_enable_mem_poll_changed(self. refresh_mem_poll)
+ self.config.on_stats_enable_cpu_poll_changed(self. refresh_cpu_poll)
+
self.refresh_update_interval()
self.refresh_history_length()
self.refresh_console_popup()
self.refresh_console_keygrab()
self.refresh_sound_options()
+ self.refresh_disk_poll()
+ self.refresh_net_poll()
+ self.refresh_mem_poll()
+ self.refresh_cpu_poll()

self.window.signal_autoconnect({
- "on_stats_update_interval_changed": self.change_update_interval,
- "on_stats_history_length_changed": self.change_history_length,
- "on_console_popup_changed": self.change_console_popup,
- "on_console_keygrab_changed": self.change_console_keygrab,
- "on_close_clicked": self.close,
+ "on_prefs_stats_update_interval_changed": self.change_update_interval,
+ "on_prefs_stats_history_length_changed": self.change_history_length,
+ "on_prefs_console_popup_changed": self.change_console_popup,
+ "on_prefs_console_keygrab_changed": self.change_console_keygrab,
+ "on_prefs_close_clicked": self.close,
"on_vmm_preferences_delete_event": self.close,
- "on_preferences_help_clicked": self.show_help,
- "on_local_sound_toggled": self.change_local_sound,
- "on_remote_sound_toggled": self.change_remote_sound,
+ "on_prefs_help_clicked": self.show_help,
+ "on_prefs_sound_local_toggled": self.change_local_sound,
+ "on_prefs_sound_remote_toggled": self.change_remote_sound,
+ "on_prefs_stats_enable_disk_toggled": self.change_disk_poll,
+ "on_prefs_stats_enable_net_toggled": self.change_net_poll,
+ "on_prefs_stats_enable_mem_toggled": self.change_mem_poll,
+ "on_prefs_stats_enable_cpu_toggled": self.change_cpu_poll,
})

- def close(self,ignore1=None,ignore2=None):
- self.window.get_widget("vmm-preferences").hide()
+ def close(self, ignore1=None, ignore2=None):
+ self.topwin.hide()
return 1

def show(self):
- win = self.window.get_widget("vmm-preferences")
- win.show()
- # win.present()
+ self.topwin.show()
+ self.topwin.present()
+
+ #########################
+ # Config Change Options #
+ #########################

def refresh_update_interval(self, ignore1=None,ignore2=None,ignore3=None,ignore4=Non e):
- self.window.get_widget("stats-update-interval").set_value(self.config.get_stats_update_ interval())
+ self.window.get_widget("prefs-stats-update-interval").set_value(self.config.get_stats_update_ interval())

def refresh_history_length(self, ignore1=None,ignore2=None,ignore3=None,ignore4=Non e):
- self.window.get_widget("stats-history-length").set_value(self.config.get_stats_history_l ength())
+ self.window.get_widget("prefs-stats-history-len").set_value(self.config.get_stats_history_leng th())

def refresh_console_popup(self,ignore1=None,ignore2=No ne,ignore3=None,ignore4=None):
- self.window.get_widget("console-popup").set_active(self.config.get_console_popup() )
+ self.window.get_widget("prefs-console-popup").set_active(self.config.get_console_popup() )

def refresh_console_keygrab(self,ignore1=None,ignore2= None,ignore3=None,ignore4=None):
- self.window.get_widget("console-keygrab").set_active(self.config.get_console_keygr ab())
+ self.window.get_widget("prefs-console-keygrab").set_active(self.config.get_console_keygr ab())

def refresh_sound_options(self, ignore1=None, ignore2=None, ignore=None,
ignore4=None):
- self.window.get_widget("local-sound").set_active(self.config.get_local_sound())
- self.window.get_widget("remote-sound").set_active(self.config.get_remote_sound())
+ self.window.get_widget("prefs-sound-local").set_active(self.config.get_local_sound())
+ self.window.get_widget("prefs-sound-remote").set_active(self.config.get_remote_sound() )
+
+ def refresh_disk_poll(self, ignore1=None, ignore2=None, ignore3=None,
+ ignore4=None):
+ self.window.get_widget("prefs-stats-enable-disk").set_active(self.config.get_stats_enable_dis k_poll())
+ def refresh_net_poll(self, ignore1=None, ignore2=None, ignore3=None,
+ ignore4=None):
+ self.window.get_widget("prefs-stats-enable-net").set_active(self.config.get_stats_enable_net_ poll())
+ def refresh_mem_poll(self, ignore1=None, ignore2=None, ignore3=None,
+ ignore4=None):
+ self.window.get_widget("prefs-stats-enable-mem").set_active(self.config.get_stats_enable_mem_ poll())
+ def refresh_cpu_poll(self, ignore1=None, ignore2=None, ignore3=None,
+ ignore4=None):
+ self.window.get_widget("prefs-stats-enable-cpu").set_active(self.config.get_stats_enable_cpu_ poll())

def change_update_interval(self, src):
self.config.set_stats_update_interval(src.get_valu e_as_int())
@@ -99,6 +133,16 @@
def change_remote_sound(self, src):
self.config.set_remote_sound(not self.config.get_remote_sound())

+ def change_disk_poll(self, src):
+ self.config.set_stats_enable_disk_poll(src.get_act ive())
+ def change_net_poll(self, src):
+ self.config.set_stats_enable_net_poll(src.get_acti ve())
+ def change_mem_poll(self, src):
+ self.config.set_stats_enable_mem_poll(src.get_acti ve())
+ def change_cpu_poll(self, src):
+ self.config.set_stats_enable_cpu_poll(src.get_acti ve())
+
def show_help(self, src):
- # From the Preferences window, show the help document from the Preferences page
- self.emit("action-show-help", "virt-manager-preferences-window")
+ # From the Preferences window, show the help document from
+ # the Preferences page
+ self.emit("action-show-help", "virt-manager-preferences-window")
diff -r f4b79629808d -r c7cd0d65d7a6 src/vmm-preferences.glade
--- a/src/vmm-preferences.glade Sun Dec 07 16:32:56 2008 -0500
+++ b/src/vmm-preferences.glade Mon Dec 08 10:11:25 2008 -0500
@@ -1,362 +1,512 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--*- mode: xml -*-->
+<!--Generated with glade3 3.4.5 on Mon Dec 8 10:10:57 2008 -->
<glade-interface>
- <widget class="GtkDialog" id="vmm-preferences">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="has_focus">True</property>
+ <widget class="GtkWindow" id="vmm-preferences">
<property name="title" translatable="yes">Preferences</property>
- <property name="window_position">GTK_WIN_POS_CENTER_ON_PAREN T</property>
- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
- <property name="gravity">GDK_GRAVITY_CENTER</property>
- <property name="has_separator">False</property>
<signal name="delete_event" handler="on_vmm_preferences_delete_event"/>
- <child internal-child="vbox">
- <widget class="GtkVBox" id="dialog-vbox1">
+ <child>
+ <widget class="GtkVBox" id="vbox1">
<property name="visible">True</property>
+ <property name="border_width">3</property>
+ <property name="spacing">3</property>
<child>
- <widget class="GtkVBox" id="vbox4">
+ <widget class="GtkNotebook" id="prefs-pages">
<property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="border_width">3</property>
<child>
- <widget class="GtkFrame" id="frame1">
+ <widget class="GtkVBox" id="vbox2">
<property name="visible">True</property>
- <property name="border_width">3</property>
- <property name="label_xalign">0</property>
+ <property name="border_width">6</property>
+ <property name="spacing">8</property>
<child>
- <widget class="GtkAlignment" id="alignment2">
+ <widget class="GtkFrame" id="frame1">
<property name="visible">True</property>
- <property name="left_padding">12</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">GTK_SHADOW_NONE</property>
<child>
- <widget class="GtkTable" id="table3">
+ <widget class="GtkAlignment" id="alignment2">
<property name="visible">True</property>
- <property name="border_width">3</property>
- <property name="n_rows">2</property>
- <property name="n_columns">3</property>
- <property name="column_spacing">3</property>
- <property name="row_spacing">3</property>
+ <property name="left_padding">12</property>
<child>
- <widget class="GtkSpinButton" id="stats-history-length">
+ <widget class="GtkTable" id="table1">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">10 10 300 1 5 5</property>
- <property name="climb_rate">1</property>
- <property name="numeric">True</property>
- <property name="update_policy">GTK_UPDATE_IF_VALID</property>
- <accessibility>
- <atkproperty name="AtkObject::accessible_name" translatable="yes">History Samples</atkproperty>
- </accessibility>
- <signal name="value_changed" handler="on_stats_history_length_changed"/>
+ <property name="n_rows">2</property>
+ <property name="n_columns">3</property>
+ <property name="column_spacing">3</property>
+ <property name="row_spacing">3</property>
+ <child>
+ <widget class="GtkLabel" id="label6">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Update status every</property>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label7">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Maintain history of</property>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="prefs-stats-update-interval">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">0 0 60 1 5 5</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="prefs-stats-history-len">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">0 0 300 5 5 5</property>
+ <property name="climb_rate">0.01</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label8">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">seconds</property>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label9">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">samples</property>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
</widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label38">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">seconds</property>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label39">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">samples</property>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label37">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Maintain history of</property>
- </widget>
- <packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label36">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Update status every</property>
- <property name="use_underline">True</property>
- <property name="selectable">True</property>
- <property name="mnemonic_widget">stats-update-interval</property>
- </widget>
- <packing>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="stats-update-interval">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">5 1 60 1 5 5</property>
- <property name="climb_rate">1</property>
- <property name="numeric">True</property>
- <property name="update_policy">GTK_UPDATE_IF_VALID</property>
- <accessibility>
- <atkproperty name="AtkObject::accessible_name" translatable="yes">Status Interval</atkproperty>
- </accessibility>
- <signal name="value_changed" handler="on_stats_update_interval_changed"/>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
</child>
</widget>
</child>
+ <child>
+ <widget class="GtkLabel" id="label77">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">&lt;b&gt;Stats Options&lt;/b&gt;</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="type">label_item</property>
+ </packing>
+ </child>
</widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
</child>
<child>
- <widget class="GtkLabel" id="label35">
+ <widget class="GtkFrame" id="frame2">
<property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Status monitoring&lt;/b&gt;</property>
- <property name="use_markup">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment3">
+ <property name="visible">True</property>
+ <property name="left_padding">12</property>
+ <child>
+ <widget class="GtkTable" id="table2">
+ <property name="visible">True</property>
+ <property name="n_rows">4</property>
+ <property name="n_columns">2</property>
+ <property name="column_spacing">3</property>
+ <property name="row_spacing">3</property>
+ <child>
+ <widget class="GtkLabel" id="label11">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">CPU Usage</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_END</property>
+ </widget>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label12">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Memory Usage</property>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label13">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Disk I/O</property>
+ </widget>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label14">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Network I/O</property>
+ </widget>
+ <packing>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="prefs-stats-enable-cpu">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="response_id">0</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="on_prefs_stats_enable_cpu_toggled"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="x_options">GTK_EXPAND</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="prefs-stats-enable-mem">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="response_id">0</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="on_prefs_stats_enable_mem_toggled"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_EXPAND</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="prefs-stats-enable-disk">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="response_id">0</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="on_prefs_stats_enable_disk_toggled"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_EXPAND</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="prefs-stats-enable-net">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="response_id">0</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="on_prefs_stats_enable_net_toggled"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">GTK_EXPAND</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label10">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">&lt;b&gt;Enable Stats Polling&lt;/b&gt;</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="type">label_item</property>
+ </packing>
+ </child>
</widget>
<packing>
- <property name="type">label_item</property>
+ <property name="expand">False</property>
+ <property name="position">1</property>
</packing>
</child>
</widget>
</child>
<child>
- <widget class="GtkFrame" id="frame9">
+ <widget class="GtkLabel" id="label2">
<property name="visible">True</property>
- <property name="border_width">3</property>
- <property name="label_xalign">0</property>
+ <property name="label" translatable="yes">Stats</property>
+ </widget>
+ <packing>
+ <property name="type">tab</property>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkVBox" id="vbox3">
+ <property name="visible">True</property>
+ <property name="border_width">6</property>
+ <property name="spacing">8</property>
<child>
- <widget class="GtkAlignment" id="alignment127">
+ <widget class="GtkFrame" id="frame3">
<property name="visible">True</property>
- <property name="bottom_padding">6</property>
- <property name="left_padding">12</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">GTK_SHADOW_NONE</property>
<child>
- <widget class="GtkTable" id="table31">
+ <widget class="GtkAlignment" id="alignment4">
<property name="visible">True</property>
- <property name="n_rows">4</property>
- <property name="n_columns">1</property>
+ <property name="left_padding">12</property>
<child>
- <widget class="GtkComboBox" id="console-popup">
+ <widget class="GtkTable" id="table3">
<property name="visible">True</property>
- <property name="items" translatable="yes">Never
-For new domains
+ <property name="n_rows">4</property>
+ <property name="n_columns">1</property>
+ <property name="row_spacing">2</property>
+ <child>
+ <widget class="GtkComboBox" id="prefs-console-popup">
+ <property name="visible">True</property>
+ <property name="items" translatable="yes">Never
+For all new domains
For all domains</property>
- <accessibility>
- <atkproperty name="AtkObject::accessible_name" translatable="yes">Auto Console</atkproperty>
- </accessibility>
- <signal name="changed" handler="on_console_popup_changed"/>
- </widget>
- <packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_padding">5</property>
- </packing>
- </child>
- <child>
- <widget class="GtkComboBox" id="console-keygrab">
- <property name="visible">True</property>
- <property name="items" translatable="yes">Never
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_padding">5</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label5">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Automatically open consoles:</property>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label15">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Grab keyboard input:</property>
+ </widget>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkComboBox" id="prefs-console-keygrab">
+ <property name="visible">True</property>
+ <property name="items" translatable="yes">Never
When fullscreen
On mouse over</property>
- <accessibility>
- <atkproperty name="AtkObject::accessible_name" translatable="yes">Grab Keyboard</atkproperty>
- </accessibility>
- <signal name="changed" handler="on_console_keygrab_changed"/>
+ </widget>
+ <packing>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_padding">5</property>
+ </packing>
+ </child>
</widget>
- <packing>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">GTK_FILL</property>
- <property name="x_padding">5</property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label345">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Grab keyboard input:</property>
- <property name="use_underline">True</property>
- <property name="selectable">True</property>
- </widget>
- <packing>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label342">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Automatically open consoles:</property>
- <property name="use_underline">True</property>
- <property name="selectable">True</property>
- </widget>
- <packing>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
</child>
</widget>
</child>
+ <child>
+ <widget class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">&lt;b&gt;Consoles&lt;/b&gt;</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="type">label_item</property>
+ </packing>
+ </child>
</widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
</child>
<child>
- <widget class="GtkLabel" id="label341">
+ <widget class="GtkFrame" id="frame4">
<property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Consoles&lt;/b&gt;</property>
- <property name="use_markup">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment5">
+ <property name="visible">True</property>
+ <property name="left_padding">12</property>
+ <child>
+ <widget class="GtkTable" id="table4">
+ <property name="visible">True</property>
+ <property name="n_rows">1</property>
+ <property name="n_columns">3</property>
+ <property name="column_spacing">8</property>
+ <child>
+ <widget class="GtkLabel" id="label16">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Install Audio Device:</property>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="prefs-sound-remote">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Remote VM</property>
+ <property name="response_id">0</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="prefs_sound_remote_toggled_cb"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="prefs-sound-local">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Local VM</property>
+ <property name="response_id">0</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="on_prefs_sound_local_toggled"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label4">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">&lt;b&gt;New VM&lt;/b&gt;</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="type">label_item</property>
+ </packing>
+ </child>
</widget>
<packing>
- <property name="type">label_item</property>
+ <property name="expand">False</property>
+ <property name="position">1</property>
</packing>
</child>
</widget>
<packing>
- <property name="padding">3</property>
<property name="position">1</property>
</packing>
</child>
<child>
- <widget class="GtkFrame" id="frame10">
+ <widget class="GtkLabel" id="label3">
<property name="visible">True</property>
- <property name="border_width">3</property>
- <property name="label_xalign">0</property>
+ <property name="label" translatable="yes">VM Details</property>
+ </widget>
+ <packing>
+ <property name="type">tab</property>
+ <property name="position">1</property>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox2">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkButton" id="prefs-help">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="label" translatable="yes">gtk-help</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ <signal name="clicked" handler="on_prefs_help_clicked"/>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkAlignment" id="alignment1">
+ <property name="visible">True</property>
<child>
- <widget class="GtkAlignment" id="alignment128">
- <property name="visible">True</property>
- <property name="left_padding">12</property>
- <child>
- <widget class="GtkHBox" id="hbox1">
- <property name="visible">True</property>
- <property name="border_width">3</property>
- <property name="spacing">3</property>
- <child>
- <widget class="GtkLabel" id="label348">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Install Audio Device:</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="local-sound">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Local VM</property>
- <property name="use_underline">True</property>
- <property name="response_id">0</property>
- <property name="draw_indicator">True</property>
- <signal name="toggled" handler="on_local_sound_toggled"/>
- </widget>
- <packing>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="remote-sound">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Remote VM</property>
- <property name="use_underline">True</property>
- <property name="response_id">0</property>
- <property name="draw_indicator">True</property>
- <signal name="toggled" handler="on_remote_sound_toggled"/>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- <child>
- <widget class="GtkLabel" id="label347">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;New VM Preferences&lt;/b&gt;</property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="type">label_item</property>
- </packing>
+ <placeholder/>
</child>
</widget>
<packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox3">
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <widget class="GtkButton" id="prefs-close">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="label" translatable="yes">gtk-close</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ <signal name="clicked" handler="on_prefs_close_clicked"/>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
<property name="position">2</property>
</packing>
</child>
</widget>
<packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
<property name="position">1</property>
- </packing>
- </child>
- <child internal-child="action_area">
- <widget class="GtkHButtonBox" id="dialog-action_area1">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_END</property>
- <child>
- <widget class="GtkButton" id="button1">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="can_default">True</property>
- <property name="label">gtk-help</property>
- <property name="use_stock">True</property>
- <property name="response_id">-11</property>
- <signal name="clicked" handler="on_preferences_help_clicked"/>
- </widget>
- </child>
- <child>
- <widget class="GtkButton" id="close">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="can_default">True</property>
- <property name="label">gtk-close</property>
- <property name="use_stock">True</property>
- <property name="response_id">-7</property>
- <signal name="clicked" handler="on_close_clicked"/>
- </widget>
- <packing>
- <property name="position">1</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="pack_type">GTK_PACK_END</property>
</packing>
</child>
</widget>
_______________________________________________
et-mgmt-tools mailing list
et-mgmt-tools@redhat.com
https://www.redhat.com/mailman/listinfo/et-mgmt-tools
 

Thread Tools




All times are GMT. The time now is 01:38 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org