diff options
Diffstat (limited to 'plugins/LocalAnime.hpp')
-rw-r--r-- | plugins/LocalAnime.hpp | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/plugins/LocalAnime.hpp b/plugins/LocalAnime.hpp index 7fe58d9..19b93e8 100644 --- a/plugins/LocalAnime.hpp +++ b/plugins/LocalAnime.hpp @@ -17,49 +17,42 @@ namespace QuickMedia { }; struct LocalAnimeSeason { - Path path; + std::string name; std::vector<LocalAnimeItem> episodes; time_t modified_time_seconds; }; struct LocalAnime { - Path path; + std::string name; std::vector<LocalAnimeItem> items; time_t modified_time_seconds; }; - enum class LocalAnimeSearchPageType { - DIRECTORY, - ANIME, - SEASON - }; + std::vector<LocalAnimeItem> get_anime_in_directory(const Path &directory); class LocalAnimeSearchPage : public LazyFetchPage { public: - LocalAnimeSearchPage(Program *program, Path directory, LocalAnimeSearchPageType type) - : LazyFetchPage(program), directory(std::move(directory)), type(type) {} + LocalAnimeSearchPage(Program *program, std::vector<LocalAnimeItem> anime_items) + : LazyFetchPage(program), anime_items(std::move(anime_items)) {} const char* get_title() const override { return "Search"; } bool search_is_filter() override { return true; } PluginResult submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) override; PluginResult lazy_fetch(BodyItems &result_items) override; - bool reload_on_page_change() override { return true; } - bool reseek_to_body_item_by_url() override { return true; } void toggle_read(BodyItem *selected_item) override; private: - Path directory; - LocalAnimeSearchPageType type; + std::vector<LocalAnimeItem> anime_items; }; class LocalAnimeVideoPage : public VideoPage { public: - LocalAnimeVideoPage(Program *program, std::string filepath, WatchProgress watch_progress) - : VideoPage(program, std::move(filepath)), watch_progress(std::move(watch_progress)) {} + LocalAnimeVideoPage(Program *program, std::string filepath, WatchProgress *watch_progress) + : VideoPage(program, std::move(filepath)), watch_progress(watch_progress) {} const char* get_title() const override { return ""; } std::string get_video_url(int max_height, bool &has_embedded_audio, std::string &ext) override; std::string get_url_timestamp() override; bool is_local() const override { return true; } void set_watch_progress(int64_t time_pos_sec) override; private: - WatchProgress watch_progress; + WatchProgress *watch_progress; }; }
\ No newline at end of file |