libzypp  11.13.5
SelFilters.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_UI_SELFILTERS_H
13 #define ZYPP_UI_SELFILTERS_H
14 
15 #include <string>
16 
17 #include "zypp/base/Functional.h"
18 #include "zypp/ui/Selectable.h"
19 
21 namespace zypp
22 {
23 
24  namespace ui
25  {
26 
27  namespace selfilter
28  {
29 
30  typedef std::unary_function<Selectable::constPtr,bool> SelectableFilterFunctor;
31 
34  {
35  ByKind( const ResObject::Kind & kind_r )
36  : _kind( kind_r )
37  {}
38 
39  bool operator()( const Selectable::constPtr & obj ) const
40  {
41  return obj && obj->kind() == _kind;
42  }
43 
45  };
46 
49  {
50  ByName( const std::string & name_r )
51  : _name( name_r )
52  {}
53 
54  bool operator()( const ui::Selectable::constPtr & obj ) const
55  { return obj && obj->name() == _name; }
56 
57  std::string _name;
58  };
59 
62  {
63  bool operator()( const ui::Selectable::constPtr & obj ) const
64  { return obj && !obj->installedEmpty(); }
65  };
66 
69  {
70  bool operator()( const ui::Selectable::constPtr & obj ) const
71  { return obj && obj->hasCandidateObj(); }
72  };
73 
76  {
77  ByStatus( Status status_r )
78  : _status( status_r )
79  {}
80 
81  bool operator()( const ui::Selectable::constPtr & obj ) const
82  { return obj && obj->status() == _status; }
83 
85  };
86 
88  } // namespace selfilter
91  } // namespace ui
94 } // namespace zypp
96 #endif // ZYPP_UI_SELFILTERS_H