summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/ui/crumbs
diff options
context:
space:
mode:
authorCristiana Voicu <cristiana.voicu@intel.com>2013-05-07 11:07:54 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-10 13:33:33 +0100
commit24f060805f106292a393294091c1a65b0fa6b3ad (patch)
treea4c3271e063fd8b8b308ca2c07eadbb5dcb8c60f /bitbake/lib/bb/ui/crumbs
parent39d3409d31b7d81a4fe5435935e28f994edfa402 (diff)
downloadpoky-24f060805f106292a393294091c1a65b0fa6b3ad.tar.gz
bitbake: hob: "Brought in by" sorting should take into account the (+#) information
[YOCTO #4332] (Bitbake rev: 226a5f2d0947460cb6df9e97f0146b65f96a7f8c) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/ui/crumbs')
-rw-r--r--bitbake/lib/bb/ui/crumbs/hoblistmodel.py46
1 files changed, 44 insertions, 2 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/hoblistmodel.py b/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
index 42fd6ce27d..887be791dc 100644
--- a/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
+++ b/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
@@ -126,7 +126,7 @@ class PackageListModel(gtk.ListStore):
126 126
127 sort.set_sort_func(PackageListModel.COL_INC, self.sort_column, PackageListModel.COL_INC) 127 sort.set_sort_func(PackageListModel.COL_INC, self.sort_column, PackageListModel.COL_INC)
128 sort.set_sort_func(PackageListModel.COL_SIZE, self.sort_column, PackageListModel.COL_SIZE) 128 sort.set_sort_func(PackageListModel.COL_SIZE, self.sort_column, PackageListModel.COL_SIZE)
129 sort.set_sort_func(PackageListModel.COL_BINB, self.sort_column, PackageListModel.COL_BINB) 129 sort.set_sort_func(PackageListModel.COL_BINB, self.sort_binb_column)
130 sort.set_sort_func(PackageListModel.COL_RCP, self.sort_column, PackageListModel.COL_RCP) 130 sort.set_sort_func(PackageListModel.COL_RCP, self.sort_column, PackageListModel.COL_RCP)
131 return sort 131 return sort
132 132
@@ -148,6 +148,27 @@ class PackageListModel(gtk.ListStore):
148 name2 = model.get_value(row2, PackageListModel.COL_NAME) 148 name2 = model.get_value(row2, PackageListModel.COL_NAME)
149 return cmp(name1,name2) 149 return cmp(name1,name2)
150 150
151 def sort_binb_column(self, model, row1, row2):
152 value1 = model.get_value(row1, PackageListModel.COL_BINB)
153 value2 = model.get_value(row2, PackageListModel.COL_BINB)
154 value1_list = value1.split(', ')
155 value2_list = value2.split(', ')
156
157 value1 = value1_list[0]
158 value2 = value2_list[0]
159
160 cmp_res = cmp(value1, value2)
161 if cmp_res==0:
162 cmp_size = cmp(len(value1_list), len(value2_list))
163 if cmp_size==0:
164 name1 = model.get_value(row1, PackageListModel.COL_NAME)
165 name2 = model.get_value(row2, PackageListModel.COL_NAME)
166 return cmp(name1,name2)
167 else:
168 return cmp_size
169 else:
170 return cmp_res
171
151 def exclude_item_sort_func(self, model, iter1, iter2, user_data=None): 172 def exclude_item_sort_func(self, model, iter1, iter2, user_data=None):
152 if user_data: 173 if user_data:
153 val1 = model.get_value(iter1, PackageListModel.COL_NAME) 174 val1 = model.get_value(iter1, PackageListModel.COL_NAME)
@@ -582,7 +603,7 @@ class RecipeListModel(gtk.ListStore):
582 603
583 sort.set_sort_func(RecipeListModel.COL_INC, self.sort_column, RecipeListModel.COL_INC) 604 sort.set_sort_func(RecipeListModel.COL_INC, self.sort_column, RecipeListModel.COL_INC)
584 sort.set_sort_func(RecipeListModel.COL_GROUP, self.sort_column, RecipeListModel.COL_GROUP) 605 sort.set_sort_func(RecipeListModel.COL_GROUP, self.sort_column, RecipeListModel.COL_GROUP)
585 sort.set_sort_func(RecipeListModel.COL_BINB, self.sort_column, RecipeListModel.COL_BINB) 606 sort.set_sort_func(RecipeListModel.COL_BINB, self.sort_binb_column)
586 sort.set_sort_func(RecipeListModel.COL_LIC, self.sort_column, RecipeListModel.COL_LIC) 607 sort.set_sort_func(RecipeListModel.COL_LIC, self.sort_column, RecipeListModel.COL_LIC)
587 return sort 608 return sort
588 609
@@ -600,6 +621,27 @@ class RecipeListModel(gtk.ListStore):
600 name2 = model.get_value(row2, RecipeListModel.COL_NAME) 621 name2 = model.get_value(row2, RecipeListModel.COL_NAME)
601 return cmp(name1,name2) 622 return cmp(name1,name2)
602 623
624 def sort_binb_column(self, model, row1, row2):
625 value1 = model.get_value(row1, RecipeListModel.COL_BINB)
626 value2 = model.get_value(row2, RecipeListModel.COL_BINB)
627 value1_list = value1.split(', ')
628 value2_list = value2.split(', ')
629
630 value1 = value1_list[0]
631 value2 = value2_list[0]
632
633 cmp_res = cmp(value1, value2)
634 if cmp_res==0:
635 cmp_size = cmp(len(value1_list), len(value2_list))
636 if cmp_size==0:
637 name1 = model.get_value(row1, RecipeListModel.COL_NAME)
638 name2 = model.get_value(row2, RecipeListModel.COL_NAME)
639 return cmp(name1,name2)
640 else:
641 return cmp_size
642 else:
643 return cmp_res
644
603 def convert_vpath_to_path(self, view_model, view_path): 645 def convert_vpath_to_path(self, view_model, view_path):
604 filtered_model_path = view_model.convert_path_to_child_path(view_path) 646 filtered_model_path = view_model.convert_path_to_child_path(view_path)
605 filtered_model = view_model.get_model() 647 filtered_model = view_model.get_model()