aboutsummaryrefslogtreecommitdiff
path: root/include/cru/platform
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/platform')
-rw-r--r--include/cru/platform/graphics/web_canvas/WebCanvasPainter.h20
1 files changed, 16 insertions, 4 deletions
diff --git a/include/cru/platform/graphics/web_canvas/WebCanvasPainter.h b/include/cru/platform/graphics/web_canvas/WebCanvasPainter.h
index f85f93b0..cd885aa4 100644
--- a/include/cru/platform/graphics/web_canvas/WebCanvasPainter.h
+++ b/include/cru/platform/graphics/web_canvas/WebCanvasPainter.h
@@ -3,10 +3,22 @@
#include "WebCanvasResource.h"
#include <emscripten/val.h>
+#include <optional>
namespace cru::platform::graphics::web_canvas {
-class WebCanvasPainter: public WebCanvasResource, public virtual IPainter {
- public:
- WebCanvasPainter(WebCanvasGraphicsFactory* factory, emscripten::val context);
+class WebCanvasPainter : public WebCanvasResource, public virtual IPainter {
+ public:
+ WebCanvasPainter(WebCanvasGraphicsFactory* factory, emscripten::val context,
+ std::optional<Matrix> init_transform = std::nullopt);
+
+ ~WebCanvasPainter() override;
+
+ public:
+ Matrix GetTransform() override;
+ void SetTransform(const Matrix& transform) override;
+
+ private:
+ Matrix current_transform_;
+ emscripten::val context_;
};
-}
+} // namespace cru::platform::graphics::web_canvas