summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/frontend/applets/general_frontend.cpp64
-rw-r--r--src/core/frontend/applets/general_frontend.h38
2 files changed, 102 insertions, 0 deletions
diff --git a/src/core/frontend/applets/general_frontend.cpp b/src/core/frontend/applets/general_frontend.cpp
index 7483ffb76..e6cb59b64 100644
--- a/src/core/frontend/applets/general_frontend.cpp
+++ b/src/core/frontend/applets/general_frontend.cpp
@@ -53,4 +53,68 @@ void DefaultPhotoViewerApplet::ShowAllPhotos(std::function<void()> finished) con
53 finished(); 53 finished();
54} 54}
55 55
56ECommerceApplet::~ECommerceApplet() = default;
57
58DefaultECommerceApplet::~DefaultECommerceApplet() = default;
59
60void DefaultECommerceApplet::ShowApplicationInformation(
61 std::function<void()> finished, u64 title_id, std::optional<u128> user_id,
62 std::optional<bool> full_display, std::optional<std::string> extra_parameter) {
63 LOG_INFO(Service_AM,
64 "Application requested frontend show application information for EShop, "
65 "title_id={:016X}, user_id={:016X}{:016X}, full_display={}, extra_parameter={}",
66 title_id, user_id.value_or(u128{})[1], user_id.value_or(u128{})[0],
67 full_display.has_value() ? fmt::format("{}", *full_display) : "null",
68 extra_parameter.value_or("null"));
69 finished();
70}
71
72void DefaultECommerceApplet::ShowAddOnContentList(std::function<void()> finished, u64 title_id,
73 std::optional<u128> user_id,
74 std::optional<bool> full_display) {
75 LOG_INFO(Service_AM,
76 "Application requested frontend show add on content list for EShop, "
77 "title_id={:016X}, user_id={:016X}{:016X}, full_display={}",
78 title_id, user_id.value_or(u128{})[1], user_id.value_or(u128{})[0],
79 full_display.has_value() ? fmt::format("{}", *full_display) : "null");
80 finished();
81}
82
83void DefaultECommerceApplet::ShowSubscriptionList(std::function<void()> finished, u64 title_id,
84 std::optional<u128> user_id) {
85 LOG_INFO(Service_AM,
86 "Application requested frontend show subscription list for EShop, title_id={:016X}, "
87 "user_id={:016X}{:016X}",
88 title_id, user_id.value_or(u128{})[1], user_id.value_or(u128{})[0]);
89 finished();
90}
91
92void DefaultECommerceApplet::ShowConsumableItemList(std::function<void()> finished, u64 title_id,
93 std::optional<u128> user_id) {
94 LOG_INFO(
95 Service_AM,
96 "Application requested frontend show consumable item list for EShop, title_id={:016X}, "
97 "user_id={:016X}{:016X}",
98 title_id, user_id.value_or(u128{})[1], user_id.value_or(u128{})[0]);
99 finished();
100}
101
102void DefaultECommerceApplet::ShowShopHome(std::function<void()> finished, u128 user_id,
103 bool full_display) {
104 LOG_INFO(Service_AM,
105 "Application requested frontend show home menu for EShop, user_id={:016X}{:016X}, "
106 "full_display={}",
107 user_id[1], user_id[0], full_display);
108 finished();
109}
110
111void DefaultECommerceApplet::ShowSettings(std::function<void()> finished, u128 user_id,
112 bool full_display) {
113 LOG_INFO(Service_AM,
114 "Application requested frontend show settings menu for EShop, user_id={:016X}{:016X}, "
115 "full_display={}",
116 user_id[1], user_id[0], full_display);
117 finished();
118}
119
56} // namespace Core::Frontend 120} // namespace Core::Frontend
diff --git a/src/core/frontend/applets/general_frontend.h b/src/core/frontend/applets/general_frontend.h
index 48e3ce651..616112cfc 100644
--- a/src/core/frontend/applets/general_frontend.h
+++ b/src/core/frontend/applets/general_frontend.h
@@ -5,6 +5,7 @@
5#pragma once 5#pragma once
6 6
7#include <functional> 7#include <functional>
8#include <optional>
8#include "common/common_types.h" 9#include "common/common_types.h"
9 10
10namespace Core::Frontend { 11namespace Core::Frontend {
@@ -47,4 +48,41 @@ public:
47 void ShowAllPhotos(std::function<void()> finished) const override; 48 void ShowAllPhotos(std::function<void()> finished) const override;
48}; 49};
49 50
51class ECommerceApplet {
52public:
53 virtual ~ECommerceApplet();
54
55 virtual void ShowApplicationInformation(std::function<void()> finished, u64 title_id,
56 std::optional<u128> user_id = {},
57 std::optional<bool> full_display = {},
58 std::optional<std::string> extra_parameter = {}) = 0;
59 virtual void ShowAddOnContentList(std::function<void()> finished, u64 title_id,
60 std::optional<u128> user_id = {},
61 std::optional<bool> full_display = {}) = 0;
62 virtual void ShowSubscriptionList(std::function<void()> finished, u64 title_id,
63 std::optional<u128> user_id = {}) = 0;
64 virtual void ShowConsumableItemList(std::function<void()> finished, u64 title_id,
65 std::optional<u128> user_id = {}) = 0;
66 virtual void ShowShopHome(std::function<void()> finished, u128 user_id, bool full_display) = 0;
67 virtual void ShowSettings(std::function<void()> finished, u128 user_id, bool full_display) = 0;
68};
69
70class DefaultECommerceApplet : public ECommerceApplet {
71public:
72 ~DefaultECommerceApplet() override;
73
74 void ShowApplicationInformation(std::function<void()> finished, u64 title_id,
75 std::optional<u128> user_id, std::optional<bool> full_display,
76 std::optional<std::string> extra_parameter) override;
77 void ShowAddOnContentList(std::function<void()> finished, u64 title_id,
78 std::optional<u128> user_id,
79 std::optional<bool> full_display) override;
80 void ShowSubscriptionList(std::function<void()> finished, u64 title_id,
81 std::optional<u128> user_id) override;
82 void ShowConsumableItemList(std::function<void()> finished, u64 title_id,
83 std::optional<u128> user_id) override;
84 void ShowShopHome(std::function<void()> finished, u128 user_id, bool full_display) override;
85 void ShowSettings(std::function<void()> finished, u128 user_id, bool full_display) override;
86};
87
50} // namespace Core::Frontend 88} // namespace Core::Frontend