Files
abaddon/src/components/lazyimage.hpp
Dylam De La Torre a51a54bc59 Restructure source and resource files (#46)
importantly, res is now res/res and css is now res/css
2021-11-23 04:21:56 +00:00

22 lines
565 B
C++

#pragma once
#include <gtkmm.h>
// loads an image only when the widget is drawn for the first time
class LazyImage : public Gtk::Image {
public:
LazyImage(int w, int h, bool use_placeholder = true);
LazyImage(const std::string &url, int w, int h, bool use_placeholder = true);
void SetAnimated(bool is_animated);
void SetURL(const std::string &url);
private:
bool OnDraw(const Cairo::RefPtr<Cairo::Context> &context);
bool m_animated = false;
bool m_needs_request = true;
std::string m_url;
int m_width;
int m_height;
};