aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/render/CanvasRenderObject.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/ui/render/CanvasRenderObject.h')
-rw-r--r--include/cru/ui/render/CanvasRenderObject.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/cru/ui/render/CanvasRenderObject.h b/include/cru/ui/render/CanvasRenderObject.h
index 8343a5f5..2488dc91 100644
--- a/include/cru/ui/render/CanvasRenderObject.h
+++ b/include/cru/ui/render/CanvasRenderObject.h
@@ -4,6 +4,23 @@
#include "cru/common/Event.h"
namespace cru::ui::render {
+class CanvasPaintEventArgs {
+ public:
+ CanvasPaintEventArgs(platform::graphics::IPainter* painter,
+ const Size& paint_size)
+ : painter_(painter), paint_size_(paint_size) {}
+ CRU_DEFAULT_COPY(CanvasPaintEventArgs)
+ CRU_DEFAULT_MOVE(CanvasPaintEventArgs)
+ ~CanvasPaintEventArgs() = default;
+
+ platform::graphics::IPainter* GetPainter() const { return painter_; }
+ Size GetPaintSize() const { return paint_size_; }
+
+ private:
+ platform::graphics::IPainter* painter_;
+ Size paint_size_;
+};
+
// Layout logic:
// If no preferred size is set. Then (100, 100) is used and then coerced to
// required range.