bsnes/hiro/qt/widget/canvas.hpp

32 lines
745 B
C++

#if defined(Hiro_Canvas)
namespace hiro {
struct pCanvas : pWidget {
Declare(Canvas, Widget)
auto minimumSize() const -> Size;
auto setColor(Color color) -> void;
auto setData(Size size) -> void;
auto setDroppable(bool droppable) -> void;
auto setGeometry(Geometry geometry) -> void;
auto setGradient(Color topLeft, Color topRight, Color bottomLeft, Color bottomRight) -> void;
auto setIcon(const image& icon) -> void;
auto update() -> void;
enum class Mode : unsigned { Color, Data, Gradient, Icon };
auto _rasterize() -> void;
auto _release() -> void;
QtCanvas* qtCanvas = nullptr;
QImage* qtImage = nullptr;
unsigned qtImageWidth = 0;
unsigned qtImageHeight = 0;
Mode mode = Mode::Color;
};
}
#endif