diff --git a/src/virtManager/createpool.py b/src/virtManager/createpool.py
index 8d185fcb4..c86cc35b3 100644
--- a/src/virtManager/createpool.py
+++ b/src/virtManager/createpool.py
@@ -268,12 +268,17 @@ class vmmCreatePool(vmmGObjectUI):
return plist
def show_options_by_pool(self):
+ def show_row(base, do_show):
+ self.widget(base + "-label").set_property("visible", do_show)
+ self.widget(base + "-box").set_property("visible", do_show)
+
src = hasattr(self._pool, "source_path")
src_b = src and not self.conn.is_remote()
tgt = hasattr(self._pool, "target_path")
tgt_b = tgt and not self.conn.is_remote()
host = hasattr(self._pool, "host")
fmt = hasattr(self._pool, "formats")
+ builddef, buildsens = self.get_build_default()
# Source path broswing is meaningless for net pools
if self._pool.type in [Storage.StoragePool.TYPE_NETFS,
@@ -281,13 +286,17 @@ class vmmCreatePool(vmmGObjectUI):
Storage.StoragePool.TYPE_SCSI]:
src_b = False
+ show_row("pool-target", tgt)
+ show_row("pool-source", src)
+ show_row("pool-hostname", host)
+ show_row("pool-format", fmt)
+ show_row("pool-build", buildsens)
+
self.widget("pool-target-button").set_sensitive(tgt_b)
self.widget("pool-source-button").set_sensitive(src_b)
- self.widget("pool-source-path").set_sensitive(src)
- self.widget("pool-hostname").set_sensitive(host)
- self.widget("pool-format").set_sensitive(fmt)
- self.widget("pool-format").set_active(-1)
+ self.widget("pool-build").set_active(builddef)
+ self.widget("pool-format").set_active(-1)
if fmt:
self.populate_pool_format(getattr(self._pool, "formats"))
self.widget("pool-format").set_active(0)
@@ -440,9 +449,6 @@ class vmmCreatePool(vmmGObjectUI):
self.widget("pool-target-path").child.set_text(
self._pool.target_path)
self.widget("pool-back").set_sensitive(True)
- buildret = self.get_build_default()
- self.widget("pool-build").set_sensitive(buildret[1])
- self.widget("pool-build").set_active(buildret[0])
self.widget("pool-finish").show()
self.widget("pool-finish").grab_focus()
self.widget("pool-forward").hide()
@@ -501,7 +507,8 @@ class vmmCreatePool(vmmGObjectUI):
return self.err.val_err(_("Pool Parameter Error"), str(e))
buildval = self.widget("pool-build").get_active()
- buildsen = self.widget("pool-build").get_property("sensitive")
+ buildsen = (self.widget("pool-build").get_property("sensitive") and
+ self.widget("pool-build-box").get_property("visible"))
if buildsen and buildval:
ret = self.err.yes_no(_("Building a pool of this type will "
"format the source device. Are you "
diff --git a/src/vmm-create-pool.glade b/src/vmm-create-pool.glade
index f55b2ac45..70c847e59 100644
--- a/src/vmm-create-pool.glade
+++ b/src/vmm-create-pool.glade
@@ -311,49 +311,13 @@
5
2
6
- 4
-
- True
- True
- GDK_BUTTON_PRESS_MASK | GDK_STRUCTURE_MASK
-
-
-
-
- 1
- 2
- 1
- 2
- GTK_FILL
- GTK_FILL
-
-
-
-
- True
- True
- False
- True
- True
-
-
-
- 1
- 2
- 4
- 5
- GTK_FILL
-
-
-
-
-
+
True
1
+ 8
B_uild Pool:
True
- pool-build
4
@@ -363,7 +327,7 @@
-
+
True
6
@@ -397,12 +361,11 @@
2
3
4
- GTK_FILL
- GTK_FILL
+
-
+
True
6
@@ -434,14 +397,14 @@
1
2
- GTK_FILL
- GTK_FILL
+
-
+
True
1
+ 8
_Target Path:
True
pool-target-path
@@ -452,12 +415,12 @@
-
+
True
1
+ 8
F_ormat:
True
- pool-format
1
@@ -467,12 +430,12 @@
-
+
True
1
+ 8
Host Na_me:
True
- pool-hostname
2
@@ -482,12 +445,62 @@
-
+
True
- True
- ●
-
-
+ 1
+ 8
+ _Source Path:
+ True
+ pool-source-path
+
+
+ 3
+ 4
+ GTK_FILL
+
+
+
+
+
+ True
+
+
+ True
+ True
+ False
+ True
+ True
+
+
+
+ 0
+
+
+
+
+ 1
+ 2
+ 4
+ 5
+ GTK_FILL
+
+
+
+
+
+ True
+
+
+ True
+ True
+ ●
+
+
+
+
+ 0
+
+
1
@@ -498,17 +511,38 @@
-
+
True
- 1
- _Source Path:
- True
- pool-source-path
+
+
+ True
+ True
+ GDK_BUTTON_PRESS_MASK | GDK_STRUCTURE_MASK
+
+
+
+
+ False
+ 0
+
+
+
+
+ True
+
+
+
+
+
+ 1
+
+
- 3
- 4
- GTK_FILL
+ 1
+ 2
+ 1
+ 2