[bitbake-devel] [PATCH] hob/settings: Change the 'Delete' button behaviour in the shared state settings tab
Cristiana Voicu
cristiana.voicu at intel.com
Mon Oct 1 09:11:29 UTC 2012
-the tab shows an empty mirror row when no mirror is configured
-able to delete the mirror row even if it's not empty(if it's not
the first mirror)
[YOCTO #3189]
Signed-off-by: Cristiana Voicu <cristiana.voicu at intel.com>
---
bitbake/lib/bb/ui/crumbs/hig.py | 37 +++++++++++++++++++++----------------
1 file changed, 21 insertions(+), 16 deletions(-)
diff --git a/bitbake/lib/bb/ui/crumbs/hig.py b/bitbake/lib/bb/ui/crumbs/hig.py
index 2ef8e36..dc7dce3 100644
--- a/bitbake/lib/bb/ui/crumbs/hig.py
+++ b/bitbake/lib/bb/ui/crumbs/hig.py
@@ -159,7 +159,7 @@ class SettingsUIHelper():
delete_button = HobAltButton("Delete")
delete_button.connect("clicked", self.delete_cb, index, entry)
- if content == "":
+ if content == "" and index == 0 and len(self.sstatemirrors_list) == 1:
delete_button.set_sensitive(False)
entry_match.connect("changed", self.insert_entry_match_cb, index)
@@ -188,7 +188,7 @@ class SettingsUIHelper():
def insert_entry_cb(self, entry, index, button):
self.sstatemirrors_list[index][1] = entry.get_text()
- if entry.get_text() == "":
+ if entry.get_text() == "" and index == 0:
button.set_sensitive(False)
else:
button.set_sensitive(True)
@@ -196,6 +196,7 @@ class SettingsUIHelper():
def on_combo_changed(self, combo, index):
if combo.get_active_text() == "Standard":
self.sstatemirrors_list[index][0] = 0
+ self.sstatemirrors_list[index][2] = "file://(.*)"
else:
self.sstatemirrors_list[index][0] = 1
self.refresh_shared_state_page()
@@ -450,7 +451,7 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.configuration.sstatedir = self.sstatedir_text.get_text()
self.configuration.sstatemirror = ""
for mirror in self.sstatemirrors_list:
- if mirror[1] != "" or len(self.sstatemirrors_list)==1:
+ if mirror[1] != "":
if mirror[1].endswith("\\1"):
smirror = mirror[2] + " " + mirror[1] + " \\n "
else:
@@ -548,20 +549,24 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
if self.sstatemirrors_changed == 0:
self.sstatemirrors_changed = 1
sstatemirrors = self.configuration.sstatemirror
- while sstatemirrors.find(searched_string) != -1:
- if sstatemirrors.find(searched_string,1) != -1:
- sstatemirror = sstatemirrors[:sstatemirrors.find(searched_string,1)]
- sstatemirrors = sstatemirrors[sstatemirrors.find(searched_string,1):]
- else:
- sstatemirror = sstatemirrors
- sstatemirrors = sstatemirrors[1:]
-
- sstatemirror_fields = [x for x in sstatemirror.split(' ') if x.strip()]
- if sstatemirror_fields[0] == "file://(.*)":
- sm_list = [ 0, sstatemirror_fields[1], "file://(.*)"]
- else:
- sm_list = [ 1, sstatemirror_fields[1], sstatemirror_fields[0]]
+ if sstatemirrors == "":
+ sm_list = [ 0, "", "file://(.*)"]
self.sstatemirrors_list.append(sm_list)
+ else:
+ while sstatemirrors.find(searched_string) != -1:
+ if sstatemirrors.find(searched_string,1) != -1:
+ sstatemirror = sstatemirrors[:sstatemirrors.find(searched_string,1)]
+ sstatemirrors = sstatemirrors[sstatemirrors.find(searched_string,1):]
+ else:
+ sstatemirror = sstatemirrors
+ sstatemirrors = sstatemirrors[1:]
+
+ sstatemirror_fields = [x for x in sstatemirror.split(' ') if x.strip()]
+ if sstatemirror_fields[0] == "file://(.*)":
+ sm_list = [ 0, sstatemirror_fields[1], "file://(.*)"]
+ else:
+ sm_list = [ 1, sstatemirror_fields[1], sstatemirror_fields[0]]
+ self.sstatemirrors_list.append(sm_list)
index = 0
for mirror in self.sstatemirrors_list:
--
1.7.9.5
More information about the bitbake-devel
mailing list