aboutsummaryrefslogtreecommitdiff
path: root/lib/webprofile/webprofilemanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/webprofile/webprofilemanager.h')
-rw-r--r--lib/webprofile/webprofilemanager.h85
1 files changed, 0 insertions, 85 deletions
diff --git a/lib/webprofile/webprofilemanager.h b/lib/webprofile/webprofilemanager.h
deleted file mode 100644
index 3d86def..0000000
--- a/lib/webprofile/webprofilemanager.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * This file is part of smolbote. It's copyrighted by the contributors recorded
- * in the version control history of the file, available from its original
- * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote
- *
- * SPDX-License-Identifier: GPL-3.0
- */
-
-#ifndef SMOLBOTE_WEBPROFILEMANAGER_H
-#define SMOLBOTE_WEBPROFILEMANAGER_H
-
-#include "webprofile.h"
-#include <QDir>
-#include <QFile>
-#include <QMap>
-#include <QMenu>
-#include <QObject>
-#include <QSettings>
-#include <functional>
-
-struct ProfileDefault_t
-{
- QString search;
- QString homepage;
- QString newtab;
-};
-
-class WebProfileManager : public QObject
-{
- Q_OBJECT
-public:
- explicit WebProfileManager(const ProfileDefault_t &profileSection, QObject *parent);
- ~WebProfileManager();
-
- /** Create a profile with specified id
- * param id The profile ID
- * param path The path to the profile settings
- * param isOffTheRecord Off-the-record toggle
- * return WebProfile* The profile, or nullptr if one could not be created
- */
- WebProfile *profile(const QString &id, const QString &path = QString(), bool isOffTheRecord = true);
-
- /** Set a profile for deletion
- * param id The profile ID
- * return void
- */
- void deleteProfile(const QString &id);
-
- void profileMenu(QMenu *menu, const std::function<void(WebProfile *)> &callback, WebProfile *current = nullptr, bool checkable = false) const;
-
- const QStringList idList() const
- {
- return profiles.keys();
- }
- QString id(WebProfile *profile) const
- {
- QMapIterator<QString, Profile> i(profiles);
- while(i.hasNext()) {
- i.next();
- if(i.value().ptr == profile)
- return i.key();
- }
- return QString();
- }
-
-private:
- struct Profile {
- WebProfile *ptr = nullptr;
- QSettings *settings = nullptr;
- bool selfDestruct = false;
-
- QVariant value(const QString &key, const QVariant &defaultValue) const
- {
- if(settings == nullptr)
- return defaultValue;
- else
- return settings->value(key, defaultValue);
- }
- };
-
- QMap<QString, Profile> profiles;
- const ProfileDefault_t defaults;
-};
-
-#endif // SMOLBOTE_PROFILEMANAGER_H