diff options
author | dec05eba <dec05eba@protonmail.com> | 2022-02-07 22:54:20 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2022-02-07 22:55:11 +0100 |
commit | 75c610d1f65d741bbeba9f1ddeef60a6e9315427 (patch) | |
tree | 0dd79a5a7f35c89b9672d55fbf24cb1f6de13aa9 /src/plugins/Mangadex.cpp | |
parent | 9539a71dbeafdc4107d3b92eefada332ee45579a (diff) |
Use one struct for all args in Page::submit instead of multiple args (easier to add new fields without changing code)
Also remove submit_body_item from page.
Diffstat (limited to 'src/plugins/Mangadex.cpp')
-rw-r--r-- | src/plugins/Mangadex.cpp | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/plugins/Mangadex.cpp b/src/plugins/Mangadex.cpp index 79341bd..3b6b2e0 100644 --- a/src/plugins/Mangadex.cpp +++ b/src/plugins/Mangadex.cpp @@ -350,21 +350,21 @@ namespace QuickMedia { } // TODO: Do requests in parallel - PluginResult MangadexSearchPage::submit(const std::string &title, const std::string &url, std::vector<Tab> &result_tabs) { + PluginResult MangadexSearchPage::submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) { PluginResult result; BodyItems body_items; - result = get_chapters_for_manga(this, url, 0, body_items); + result = get_chapters_for_manga(this, args.url, 0, body_items); if(result != PluginResult::OK) return result; auto body = create_body(); body->set_items(std::move(body_items)); - auto chapters_page = std::make_unique<MangadexChaptersPage>(program, this, title, url, submit_body_item->thumbnail_url); + auto chapters_page = std::make_unique<MangadexChaptersPage>(program, this, args.title, args.url, args.thumbnail_url); result_tabs.push_back(Tab{std::move(body), std::move(chapters_page), create_search_bar("Search...", SEARCH_DELAY_FILTER)}); std::vector<Creator> creators; - result = get_creators_for_manga(this, url, creators); + result = get_creators_for_manga(this, args.url, creators); if(result != PluginResult::OK) return result; @@ -376,8 +376,8 @@ namespace QuickMedia { return PluginResult::OK; } - PluginResult MangadexChaptersPage::submit(const std::string &title, const std::string &url, std::vector<Tab> &result_tabs) { - result_tabs.push_back(Tab{nullptr, std::make_unique<MangadexImagesPage>(program, search_page, content_title, url, title, thumbnail_url), nullptr}); + PluginResult MangadexChaptersPage::submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) { + result_tabs.push_back(Tab{nullptr, std::make_unique<MangadexImagesPage>(program, search_page, content_title, args.url, args.title, thumbnail_url), nullptr}); return PluginResult::OK; } @@ -385,11 +385,8 @@ namespace QuickMedia { return get_chapters_for_manga(this, content_url, page, result_items); } - PluginResult MangadexCreatorPage::submit(const std::string &title, const std::string &url, std::vector<Tab> &result_tabs) { - search_page->submit_body_item = submit_body_item; - PluginResult result = search_page->submit(title, url, result_tabs); - search_page->submit_body_item = nullptr; - return result; + PluginResult MangadexCreatorPage::submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) { + return search_page->submit(args, result_tabs); } PluginResult MangadexCreatorPage::get_page(const std::string&, int page, BodyItems &result_items) { |