applets/profile_select: Use aliases for callbacks
Deduplicates callback definitions and situates it in one place.
This commit is contained in:
parent
e26c86a6e7
commit
a84676c2aa
|
@ -9,8 +9,7 @@ namespace Core::Frontend {
|
||||||
|
|
||||||
ProfileSelectApplet::~ProfileSelectApplet() = default;
|
ProfileSelectApplet::~ProfileSelectApplet() = default;
|
||||||
|
|
||||||
void DefaultProfileSelectApplet::SelectProfile(
|
void DefaultProfileSelectApplet::SelectProfile(SelectProfileCallback callback) const {
|
||||||
std::function<void(std::optional<Common::UUID>)> callback) const {
|
|
||||||
Service::Account::ProfileManager manager;
|
Service::Account::ProfileManager manager;
|
||||||
callback(manager.GetUser(Settings::values.current_user.GetValue()).value_or(Common::UUID{}));
|
callback(manager.GetUser(Settings::values.current_user.GetValue()).value_or(Common::UUID{}));
|
||||||
LOG_INFO(Service_ACC, "called, selecting current user instead of prompting...");
|
LOG_INFO(Service_ACC, "called, selecting current user instead of prompting...");
|
||||||
|
|
|
@ -11,14 +11,16 @@ namespace Core::Frontend {
|
||||||
|
|
||||||
class ProfileSelectApplet {
|
class ProfileSelectApplet {
|
||||||
public:
|
public:
|
||||||
|
using SelectProfileCallback = std::function<void(std::optional<Common::UUID>)>;
|
||||||
|
|
||||||
virtual ~ProfileSelectApplet();
|
virtual ~ProfileSelectApplet();
|
||||||
|
|
||||||
virtual void SelectProfile(std::function<void(std::optional<Common::UUID>)> callback) const = 0;
|
virtual void SelectProfile(SelectProfileCallback callback) const = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class DefaultProfileSelectApplet final : public ProfileSelectApplet {
|
class DefaultProfileSelectApplet final : public ProfileSelectApplet {
|
||||||
public:
|
public:
|
||||||
void SelectProfile(std::function<void(std::optional<Common::UUID>)> callback) const override;
|
void SelectProfile(SelectProfileCallback callback) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Core::Frontend
|
} // namespace Core::Frontend
|
||||||
|
|
|
@ -163,8 +163,7 @@ QtProfileSelector::QtProfileSelector(GMainWindow& parent) {
|
||||||
|
|
||||||
QtProfileSelector::~QtProfileSelector() = default;
|
QtProfileSelector::~QtProfileSelector() = default;
|
||||||
|
|
||||||
void QtProfileSelector::SelectProfile(
|
void QtProfileSelector::SelectProfile(SelectProfileCallback callback_) const {
|
||||||
std::function<void(std::optional<Common::UUID>)> callback_) const {
|
|
||||||
callback = std::move(callback_);
|
callback = std::move(callback_);
|
||||||
emit MainWindowSelectProfile();
|
emit MainWindowSelectProfile();
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,7 +65,7 @@ public:
|
||||||
explicit QtProfileSelector(GMainWindow& parent);
|
explicit QtProfileSelector(GMainWindow& parent);
|
||||||
~QtProfileSelector() override;
|
~QtProfileSelector() override;
|
||||||
|
|
||||||
void SelectProfile(std::function<void(std::optional<Common::UUID>)> callback_) const override;
|
void SelectProfile(SelectProfileCallback callback_) const override;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void MainWindowSelectProfile() const;
|
void MainWindowSelectProfile() const;
|
||||||
|
@ -73,5 +73,5 @@ signals:
|
||||||
private:
|
private:
|
||||||
void MainWindowFinishedSelection(std::optional<Common::UUID> uuid);
|
void MainWindowFinishedSelection(std::optional<Common::UUID> uuid);
|
||||||
|
|
||||||
mutable std::function<void(std::optional<Common::UUID>)> callback;
|
mutable SelectProfileCallback callback;
|
||||||
};
|
};
|
||||||
|
|
Reference in New Issue