createpool: Clean up field sensitivity logic.

This commit is contained in:
Cole Robinson 2009-10-20 16:53:13 -04:00
parent 9a64046200
commit 6ddf8b434a
1 changed files with 19 additions and 26 deletions

View File

@ -204,36 +204,29 @@ class vmmCreatePool(gobject.GObject):
return clean_list return clean_list
def show_options_by_pool(self): def show_options_by_pool(self):
if hasattr(self._pool, "source_path"): src = hasattr(self._pool, "source_path")
if self._pool.type in [Storage.StoragePool.TYPE_NETFS, src_b = src and not self.conn.is_remote()
Storage.StoragePool.TYPE_ISCSI, tgt = hasattr(self._pool, "target_path")
Storage.StoragePool.TYPE_SCSI]: tgt_b = tgt and not self.conn.is_remote()
# Source path broswing is meaningless for net pools host = hasattr(self._pool, "host")
self.window.get_widget("pool-source-button").set_sensitive(False) fmt = hasattr(self._pool, "formats")
else:
self.window.get_widget("pool-source-button").set_sensitive(True)
self.window.get_widget("pool-source-path").set_sensitive(True)
else:
self.window.get_widget("pool-source-path").set_sensitive(False)
self.window.get_widget("pool-source-button").set_sensitive(False)
if hasattr(self._pool, "host"): # Source path broswing is meaningless for net pools
self.window.get_widget("pool-hostname").set_sensitive(True) if self._pool.type in [Storage.StoragePool.TYPE_NETFS,
else: Storage.StoragePool.TYPE_ISCSI,
self.window.get_widget("pool-hostname").set_sensitive(False) Storage.StoragePool.TYPE_SCSI]:
src_b = False
if hasattr(self._pool, "formats"): self.window.get_widget("pool-target-button").set_sensitive(tgt_b)
self.window.get_widget("pool-format").set_sensitive(True) self.window.get_widget("pool-source-button").set_sensitive(src_b)
self.window.get_widget("pool-source-path").set_sensitive(src)
self.window.get_widget("pool-hostname").set_sensitive(host)
self.window.get_widget("pool-format").set_sensitive(fmt)
self.window.get_widget("pool-format").set_active(-1)
if fmt:
self.populate_pool_format() self.populate_pool_format()
self.window.get_widget("pool-format").set_active(0) self.window.get_widget("pool-format").set_active(0)
else:
self.window.get_widget("pool-format").set_sensitive(False)
self.window.get_widget("pool-format").set_active(-1)
if self.conn.is_remote():
# Disable browse buttons for remote connections
self.window.get_widget("pool-source-button").set_sensitive(False)
self.window.get_widget("pool-target-button").set_sensitive(False)
self.populate_source_paths() self.populate_source_paths()