diff options
author | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2015-06-25 11:37:04 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2015-06-25 15:32:46 +0000 |
commit | 38bd4ceae105f45dc4cb42ddea65fcc16f946830 (patch) | |
tree | b9468f5d73a4eb1ce8e3ac10d437ad074cc1ea19 /src/libs/installer/packagemanagerpagefactory.h | |
parent | 5d53c5a4ba362c6281da869c0a04a6c47cb54d52 (diff) |
Implement generic factory using c++11 variadic template feature.
Change-Id: I65bbb82ef1bd8c1a94100b583f504a86d64015de
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Diffstat (limited to 'src/libs/installer/packagemanagerpagefactory.h')
-rw-r--r-- | src/libs/installer/packagemanagerpagefactory.h | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/libs/installer/packagemanagerpagefactory.h b/src/libs/installer/packagemanagerpagefactory.h index b7015ffe4..ee8b8ff66 100644 --- a/src/libs/installer/packagemanagerpagefactory.h +++ b/src/libs/installer/packagemanagerpagefactory.h @@ -35,16 +35,16 @@ #ifndef PACKAGEMANAGERPAGEFACTORY_H #define PACKAGEMANAGERPAGEFACTORY_H -#include <kdgenericfactory.h> -#include <packagemanagergui.h> +#include "kdgenericfactory.h" +#include "qinstallerglobal.h" namespace QInstaller { class PackageManagerCore; class PackageManagerPage; -class INSTALLER_EXPORT PackageManagerPageFactory : public KDGenericFactory<PackageManagerPage, - int, QInstaller::PackageManagerCore*> +class INSTALLER_EXPORT PackageManagerPageFactory : public KDGenericFactory<PackageManagerPage, int, + PackageManagerCore*> { Q_DISABLE_COPY(PackageManagerPageFactory) @@ -52,12 +52,11 @@ public: static PackageManagerPageFactory &instance(); template<typename T> void registerPackageManagerPage(int id) { - registerProductWithArg<T>(id); + registerProduct<T>(id); } - PackageManagerPage *create(int id, QInstaller::PackageManagerCore *core) const; private: - PackageManagerPageFactory() {} + PackageManagerPageFactory() = default; }; } // namespace QInstaller |