diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/cru/platform/graphics/cairo/Base.h | 10 | ||||
| -rw-r--r-- | include/cru/platform/graphics/cairo/CairoGeometry.h | 4 | 
2 files changed, 13 insertions, 1 deletions
| diff --git a/include/cru/platform/graphics/cairo/Base.h b/include/cru/platform/graphics/cairo/Base.h index 7e8eeaa1..a776f90c 100644 --- a/include/cru/platform/graphics/cairo/Base.h +++ b/include/cru/platform/graphics/cairo/Base.h @@ -9,3 +9,13 @@  #else  #define CRU_PLATFORM_GRAPHICS_CAIRO_API  #endif + +#include <cairo/cairo.h> + +#include "../Base.h" + +namespace cru::platform::graphics::cairo { +cairo_matrix_t CRU_PLATFORM_GRAPHICS_CAIRO_API Convert(const Matrix& matrix); +Matrix CRU_PLATFORM_GRAPHICS_CAIRO_API Convert(const cairo_matrix_t* matrix); +Matrix CRU_PLATFORM_GRAPHICS_CAIRO_API Convert(const cairo_matrix_t& matrix); +}  // namespace cru::platform::graphics::cairo diff --git a/include/cru/platform/graphics/cairo/CairoGeometry.h b/include/cru/platform/graphics/cairo/CairoGeometry.h index 0ddedba4..f8391670 100644 --- a/include/cru/platform/graphics/cairo/CairoGeometry.h +++ b/include/cru/platform/graphics/cairo/CairoGeometry.h @@ -9,7 +9,8 @@ class CRU_PLATFORM_GRAPHICS_CAIRO_API CairoGeometry : public CairoResource,                                                        public virtual IGeometry {   public:    CairoGeometry(CairoGraphicsFactory* factory, cairo_path_t* cairo_path, -                bool auto_destroy); +                const Matrix& transform = Matrix::Identity(), +                bool auto_destroy = true);    ~CairoGeometry();    bool FillContains(const Point& point) override; @@ -21,6 +22,7 @@ class CRU_PLATFORM_GRAPHICS_CAIRO_API CairoGeometry : public CairoResource,   private:    cairo_path_t* cairo_path_; +  Matrix transform_;    bool auto_destroy_;  }; | 
