Richard Hughes edc83d6
diff --git a/lib/packagekit-qt/src/transaction.cpp b/lib/packagekit-qt/src/transaction.cpp
Richard Hughes edc83d6
index 568ddd7..fad5255 100644
Richard Hughes edc83d6
--- a/lib/packagekit-qt/src/transaction.cpp
Richard Hughes edc83d6
+++ b/lib/packagekit-qt/src/transaction.cpp
Richard Hughes edc83d6
@@ -343,6 +343,11 @@ void Transaction::downloadPackages(const QSharedPointer<Package> &package)
Richard Hughes edc83d6
     downloadPackages(QList<QSharedPointer<Package> >() << package);
Richard Hughes edc83d6
 }
Richard Hughes edc83d6
 
Richard Hughes edc83d6
+void Transaction::getCategories()
Richard Hughes edc83d6
+{
Richard Hughes edc83d6
+    RUN_TRANSACTION(GetCategories())
Richard Hughes edc83d6
+}
Richard Hughes edc83d6
+
Richard Hughes edc83d6
 void Transaction::getDepends(const QList<QSharedPointer<Package> > &packages, Enum::Filters filters, bool recursive)
Richard Hughes edc83d6
 {
Richard Hughes edc83d6
     RUN_TRANSACTION(GetDepends(Util::filtersToString(filters), Util::packageListToPids(packages), recursive))
Richard Hughes edc83d6
@@ -506,6 +511,16 @@ void Transaction::searchDetails(const QString &search, Enum::Filters filters)
Richard Hughes edc83d6
     searchDetails(QStringList() << search, filters);
Richard Hughes edc83d6
 }
Richard Hughes edc83d6
 
Richard Hughes edc83d6
+void Transaction::searchGroups(const QStringList &groups, Enum::Filters filters)
Richard Hughes edc83d6
+{
Richard Hughes edc83d6
+    RUN_TRANSACTION(SearchGroups(Util::filtersToString(filters), groups))
Richard Hughes edc83d6
+}
Richard Hughes edc83d6
+
Richard Hughes edc83d6
+void Transaction::searchGroups(const QString &group, Enum::Filters filters)
Richard Hughes edc83d6
+{
Richard Hughes edc83d6
+    searchGroups(QStringList() << group, filters);
Richard Hughes edc83d6
+}
Richard Hughes edc83d6
+
Richard Hughes edc83d6
 void Transaction::searchGroups(Enum::Groups groups, Enum::Filters filters)
Richard Hughes edc83d6
 {
Richard Hughes edc83d6
     QStringList groupsSL;
Richard Hughes edc83d6
@@ -513,7 +528,7 @@ void Transaction::searchGroups(Enum::Groups groups, Enum::Filters filters)
Richard Hughes edc83d6
         groupsSL << Util::enumToString<Enum>(group, "Group", "Group");
Richard Hughes edc83d6
     }
Richard Hughes edc83d6
 
Richard Hughes edc83d6
-    RUN_TRANSACTION(SearchGroups(Util::filtersToString(filters), groupsSL))
Richard Hughes edc83d6
+    searchGroups(groups, filters);
Richard Hughes edc83d6
 }
Richard Hughes edc83d6
 
Richard Hughes edc83d6
 void Transaction::searchGroups(Enum::Group group, Enum::Filters filters)
Richard Hughes edc83d6
diff --git a/lib/packagekit-qt/src/transaction.h b/lib/packagekit-qt/src/transaction.h
Richard Hughes edc83d6
index 9e0ce73..00d88fa 100644
Richard Hughes edc83d6
--- a/lib/packagekit-qt/src/transaction.h
Richard Hughes edc83d6
+++ b/lib/packagekit-qt/src/transaction.h
Richard Hughes edc83d6
@@ -429,6 +429,18 @@ public:
Richard Hughes edc83d6
     /**
Richard Hughes edc83d6
      * \brief Lists all the packages in the given \p group
Richard Hughes edc83d6
      *
Richard Hughes edc83d6
+     * \p groups is the name of the group that you want, when searching for
Richard Hughes edc83d6
+     * categories prefix it with '@'
Richard Hughes edc83d6
+     * \p filters can be used to restrict the returned packages
Richard Hughes edc83d6
+     *
Richard Hughes edc83d6
+     * \note This method emits \sa package()
Richard Hughes edc83d6
+     */
Richard Hughes edc83d6
+    void searchGroups(const QStringList &groups, Enum::Filters filters = Enum::NoFilter);
Richard Hughes edc83d6
+    void searchGroups(const QString &group, Enum::Filters filters = Enum::NoFilter);
Richard Hughes edc83d6
+
Richard Hughes edc83d6
+    /**
Richard Hughes edc83d6
+     * \brief Lists all the packages in the given \p group
Richard Hughes edc83d6
+     *
Richard Hughes edc83d6
      * \p filters can be used to restrict the returned packages
Richard Hughes edc83d6
      *
Richard Hughes edc83d6
      * \note This method emits \sa package()