diff options
Diffstat (limited to 'include/ImageViewer.hpp')
-rw-r--r-- | include/ImageViewer.hpp | 43 |
1 files changed, 21 insertions, 22 deletions
diff --git a/include/ImageViewer.hpp b/include/ImageViewer.hpp index d503f82..182a6a2 100644 --- a/include/ImageViewer.hpp +++ b/include/ImageViewer.hpp @@ -3,16 +3,15 @@ #include "Path.hpp" #include <string> #include <vector> -#include <SFML/Graphics/Texture.hpp> -#include <SFML/Graphics/Sprite.hpp> -#include <SFML/Graphics/Text.hpp> -#include <SFML/System/Clock.hpp> -#include <SFML/Window/Cursor.hpp> +#include <mglpp/graphics/Texture.hpp> +#include <mglpp/graphics/Sprite.hpp> +#include <mglpp/graphics/Text.hpp> +#include <mglpp/system/Clock.hpp> #include <thread> #include <memory> -namespace sf { - class RenderWindow; +namespace mgl { + class Window; } namespace QuickMedia { @@ -25,17 +24,17 @@ namespace QuickMedia { }; struct ImageData { - sf::Texture texture; - sf::Sprite sprite; + mgl::Texture texture; + mgl::Sprite sprite; ImageStatus image_status; - std::unique_ptr<sf::Image> image; + std::unique_ptr<mgl::Image> image; bool visible_on_screen; float prev_height = 0.0f; }; struct PageSize { - sf::Vector2<double> size; - sf::Vector2<double> prev_size; + mgl::vec2d size; + mgl::vec2d prev_size; bool loaded; }; @@ -47,7 +46,7 @@ namespace QuickMedia { class ImageViewer { public: - ImageViewer(sf::RenderWindow *window, int num_pages, const std::string &content_title, const std::string &chapter_title, int current_page, const Path &chapter_cache_dir, bool *fit_image_to_window); + ImageViewer(mgl::Window *window, int num_pages, const std::string &content_title, const std::string &chapter_title, int current_page, const Path &chapter_cache_dir, bool *fit_image_to_window); ~ImageViewer(); ImageViewerAction draw(); // Returns page as 1 indexed @@ -55,10 +54,10 @@ namespace QuickMedia { int get_num_pages() const { return num_pages; } private: void load_image_async(const Path &path, std::shared_ptr<ImageData> image_data); - bool render_page(sf::RenderWindow &window, int page, double offset_y); - sf::Vector2<double> get_page_size(int page); + bool render_page(mgl::Window &window, int page, double offset_y); + mgl::vec2d get_page_size(int page); private: - sf::RenderWindow *window; + mgl::Window *window; int current_page; int num_pages; @@ -75,20 +74,20 @@ namespace QuickMedia { int focused_page; int prev_focused_page = -1; - sf::Font *font; - sf::Clock frame_timer; - sf::Text page_text; + mgl::Clock frame_timer; + mgl::Text page_text; std::vector<std::shared_ptr<ImageData>> image_data; std::vector<PageSize> page_size; - sf::Vector2<double> window_size; + mgl::vec2d window_size; bool window_size_set = false; bool middle_mouse_scrolling = false; double autoscroll_start_y = 0.0; - sf::Cursor default_cursor; - sf::Cursor size_vertical_cursor; + // TODO: Fix + //sf::Cursor default_cursor; + //sf::Cursor size_vertical_cursor; bool has_default_cursor; bool has_size_vertical_cursor; |