[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [PATCH 2/2] Use None to indicate use of default value for clearPartType in UI (#503310, #503681).
- From: Radek Vykydal <rvykydal redhat com>
- To: Discussion of Development and Customization of the Red Hat Linux Installer <anaconda-devel-list redhat com>
- Subject: Re: [PATCH 2/2] Use None to indicate use of default value for clearPartType in UI (#503310, #503681).
- Date: Thu, 04 Jun 2009 17:28:30 +0200
- do not set clearPartType in parttype dialog just to set preselected
combobox value which was stupid, clearPartType should be set only
after [Next]
I forgot to modify text UI too, fixed patch 2/2 attached
Radek
>From 879354bcb7f2bc8237a9bd2f0e45d5b91d325235 Mon Sep 17 00:00:00 2001
From: Radek Vykydal <rvykydal redhat com>
Date: Tue, 2 Jun 2009 20:42:36 +0200
Subject: [PATCH 2/2] Use None to indicate use of default value for clearPartType in UI (#503310, #503681).
If we are to set clearPartType in "parttype" UI (there is no clearpart in KS), set it really there,
instead of setting it to CLEARPART_TYPE_NONE just to pass storage device discovery checks
which are done between ks processing and UI parttype.
---
installclass.py | 9 +--------
installclasses/fedora.py | 3 +--
installclasses/rhel.py | 3 +--
iw/autopart_type.py | 13 +++++++------
iw/partition_gui.py | 1 +
kickstart.py | 2 +-
storage/__init__.py | 4 ++--
storage/partitioning.py | 2 +-
textw/partition_text.py | 6 +++++-
9 files changed, 20 insertions(+), 23 deletions(-)
diff --git a/installclass.py b/installclass.py
index 913444f..d0f535d 100644
--- a/installclass.py
+++ b/installclass.py
@@ -187,8 +187,7 @@ class BaseInstallClass(object):
from backend import AnacondaBackend
return AnacondaBackend
- def setDefaultPartitioning(self, storage, platform,
- clear = CLEARPART_TYPE_LINUX, doClear = True):
+ def setDefaultPartitioning(self, storage, platform):
autorequests = [PartSpec(mountpoint="/", fstype=storage.defaultFSType,
size=1024, grow=True, asVol=True)]
@@ -200,12 +199,6 @@ class BaseInstallClass(object):
autorequests.append(PartSpec(fstype="swap", size=minswap, maxSize=maxswap,
grow=True, asVol=True))
- if doClear:
- storage.clearPartType = clear
- storage.clearPartDisks = []
- else:
- storage.clearPartType = CLEARPART_TYPE_NONE
-
storage.autoPartitionRequests = autorequests
diff --git a/installclasses/fedora.py b/installclasses/fedora.py
index 9c97390..98002ed 100644
--- a/installclasses/fedora.py
+++ b/installclasses/fedora.py
@@ -63,8 +63,7 @@ class InstallClass(BaseInstallClass):
BaseInstallClass.setInstallData(self, anaconda)
BaseInstallClass.setDefaultPartitioning(self,
anaconda.id.storage,
- anaconda.platform,
- CLEARPART_TYPE_NONE)
+ anaconda.platform)
def setSteps(self, anaconda):
BaseInstallClass.setSteps(self, anaconda);
diff --git a/installclasses/rhel.py b/installclasses/rhel.py
index aa3590d..5c0d715 100644
--- a/installclasses/rhel.py
+++ b/installclasses/rhel.py
@@ -89,8 +89,7 @@ class InstallClass(BaseInstallClass):
BaseInstallClass.setInstallData(self, anaconda)
BaseInstallClass.setDefaultPartitioning(self,
anaconda.id.storage,
- anaconda.platform,
- CLEARPART_TYPE_NONE)
+ anaconda.platform)
def setSteps(self, anaconda):
dispatch = anaconda.dispatch
diff --git a/iw/autopart_type.py b/iw/autopart_type.py
index bb71401..f192d6a 100644
--- a/iw/autopart_type.py
+++ b/iw/autopart_type.py
@@ -444,15 +444,16 @@ class PartitionTypeWindow(InstallWindow):
(_("Use free space"), CLEARPART_TYPE_NONE),
(_("Create custom layout"), -1))
- # Default for UI is Remove linux partitions, so if we
- # haven't specified something else in ks, set this default.
- # This is not correct if we specify clearpart --none in ks.
- if self.storage.clearPartType == CLEARPART_TYPE_NONE:
- self.storage.clearPartType = CLEARPART_TYPE_LINUX
+ # if not set in ks, use UI default
+ if self.storage.clearPartType is None:
+ preselected = CLEARPART_TYPE_LINUX
+ else:
+ preselected = self.storage.clearPartType
+
for (txt, val) in opts:
iter = store.append(None)
store[iter] = (txt, val)
- if val == self.storage.clearPartType:
+ if val == preselected:
self.combo.set_active_iter(iter)
if ((self.combo.get_active() == -1) or
diff --git a/iw/partition_gui.py b/iw/partition_gui.py
index 9968f07..b97a49b 100644
--- a/iw/partition_gui.py
+++ b/iw/partition_gui.py
@@ -664,6 +664,7 @@ class PartitionWindow(InstallWindow):
def getPrev(self):
self.diskStripeGraph.shutDown()
+ self.storage.clearPartType = None
self.storage.reset()
self.tree.clear()
del self.parent
diff --git a/kickstart.py b/kickstart.py
index 474ecec..ce63068 100644
--- a/kickstart.py
+++ b/kickstart.py
@@ -147,7 +147,7 @@ class AutoPart(commands.autopart.F9_AutoPart):
# sets up default autopartitioning. use clearpart separately
# if you want it
- self.handler.id.instClass.setDefaultPartitioning(self.handler.id.storage, self.handler.anaconda.platform, doClear=False)
+ self.handler.id.instClass.setDefaultPartitioning(self.handler.id.storage, self.handler.anaconda.platform)
self.handler.id.storage.doAutoPart = True
if self.encrypted:
diff --git a/storage/__init__.py b/storage/__init__.py
index 41f09e2..a364bf8 100644
--- a/storage/__init__.py
+++ b/storage/__init__.py
@@ -202,7 +202,7 @@ class Storage(object):
self.ignoredDisks = []
self.exclusiveDisks = []
self.doAutoPart = False
- self.clearPartType = CLEARPART_TYPE_NONE
+ self.clearPartType = None
self.clearPartDisks = []
self.encryptedAutoPart = False
self.encryptionPassphrase = None
@@ -965,7 +965,7 @@ class Storage(object):
f.write("# not guaranteed to work\n")
# clearpart
- if self.clearPartType == CLEARPART_TYPE_NONE:
+ if self.clearPartType is None or self.clearPartType == CLEARPART_TYPE_NONE:
args = ["--none"]
elif self.clearPartType == CLEARPART_TYPE_LINUX:
args = ["--linux"]
diff --git a/storage/partitioning.py b/storage/partitioning.py
index 8e9ab3c..de3e3e5 100644
--- a/storage/partitioning.py
+++ b/storage/partitioning.py
@@ -306,7 +306,7 @@ def clearPartitions(storage):
- Needs some error handling, especially for the parted bits.
"""
- if storage.clearPartType == CLEARPART_TYPE_NONE:
+ if storage.clearPartType is None or storage.clearPartType == CLEARPART_TYPE_NONE:
# not much to do
return
diff --git a/textw/partition_text.py b/textw/partition_text.py
index 48b7c18..b6960ef 100644
--- a/textw/partition_text.py
+++ b/textw/partition_text.py
@@ -67,7 +67,11 @@ class PartitionTypeWindow:
for (txt, val) in opts:
typebox.append(txt, val)
- typebox.setCurrent(anaconda.id.storage.clearPartType)
+ if anaconda.id.storage.clearPartType is None:
+ preselection = CLEARPART_TYPE_LINUX
+ else:
+ preselection = anaconda.id.storage.clearPartType
+ typebox.setCurrent(preselection)
g.add(typebox, 0, 1, (0, 1, 0, 0))
--
1.6.0.6
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]