diff options
| -rw-r--r-- | bitbake/lib/toaster/toastergui/tables.py | 46 |
1 files changed, 20 insertions, 26 deletions
diff --git a/bitbake/lib/toaster/toastergui/tables.py b/bitbake/lib/toaster/toastergui/tables.py index 7fb3f8605e..2903a81696 100644 --- a/bitbake/lib/toaster/toastergui/tables.py +++ b/bitbake/lib/toaster/toastergui/tables.py | |||
| @@ -773,38 +773,32 @@ class SelectPackagesTable(PackagesTable): | |||
| 773 | self.add_column(title="Add | Remove", | 773 | self.add_column(title="Add | Remove", |
| 774 | hideable=False, | 774 | hideable=False, |
| 775 | help_text="Use the add and remove buttons to modify " | 775 | help_text="Use the add and remove buttons to modify " |
| 776 | "the package content of you custom image", | 776 | "the package content of your custom image", |
| 777 | static_data_name="add_rm_pkg_btn", | 777 | static_data_name="add_rm_pkg_btn", |
| 778 | static_data_template='{% include "pkg_add_rm_btn.html" %}', | 778 | static_data_template='{% include "pkg_add_rm_btn.html" %}', |
| 779 | filter_name="in_current_image" | 779 | filter_name='in_current_image_filter') |
| 780 | ) | ||
| 781 | 780 | ||
| 782 | def setup_filters(self, *args, **kwargs): | 781 | def setup_filters(self, *args, **kwargs): |
| 783 | project = Project.objects.get(pk=kwargs['pid']) | 782 | in_current_image_filter = TableFilter( |
| 784 | self.project_layers = ProjectLayer.objects.filter(project=project) | 783 | 'in_current_image_filter', |
| 784 | 'Filter by added packages' | ||
| 785 | ) | ||
| 785 | 786 | ||
| 787 | in_image_action = TableFilterActionToggle( | ||
| 788 | 'in_image', | ||
| 789 | 'Packages in %s' % self.cust_recipe.name, | ||
| 790 | Q(pk__in=self.static_context_extra['current_packages']) | ||
| 791 | ) | ||
| 792 | |||
| 793 | not_in_image_action = TableFilterActionToggle( | ||
| 794 | 'not_in_image', | ||
| 795 | 'Packages not added to %s' % self.cust_recipe.name, | ||
| 796 | ~Q(pk__in=self.static_context_extra['current_packages']) | ||
| 797 | ) | ||
| 786 | 798 | ||
| 787 | self.add_filter(title="Filter by added packages", | 799 | in_current_image_filter.add_action(in_image_action) |
| 788 | name="in_current_image", | 800 | in_current_image_filter.add_action(not_in_image_action) |
| 789 | filter_actions=[ | 801 | self.add_filter(in_current_image_filter) |
| 790 | self.make_filter_action( | ||
| 791 | "in_image", | ||
| 792 | "Packages in %s" % self.cust_recipe.name, | ||
| 793 | self.filter_in_image), | ||
| 794 | self.make_filter_action( | ||
| 795 | "not_in_image", | ||
| 796 | "Packages not added to %s" % | ||
| 797 | self.cust_recipe.name, | ||
| 798 | self.filter_not_in_image) | ||
| 799 | ]) | ||
| 800 | |||
| 801 | def filter_in_image(self): | ||
| 802 | return self.queryset.filter( | ||
| 803 | pk__in=self.static_context_extra['current_packages']) | ||
| 804 | |||
| 805 | def filter_not_in_image(self): | ||
| 806 | return self.queryset.exclude( | ||
| 807 | pk__in=self.static_context_extra['current_packages']) | ||
| 808 | 802 | ||
| 809 | class ProjectsTable(ToasterTable): | 803 | class ProjectsTable(ToasterTable): |
| 810 | """Table of projects in Toaster""" | 804 | """Table of projects in Toaster""" |
