From 5b46d14997c2ff2244f303216e4e286665ac8a42 Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Mon, 3 Nov 2025 19:49:41 +0800 Subject: Merge platform/Resource.h to Base.h. --- include/cru/platform/graphics/cairo/Base.h | 29 +++++++++++++++++++--- include/cru/platform/graphics/cairo/CairoBrush.h | 5 ++-- .../cru/platform/graphics/cairo/CairoGeometry.h | 5 ++-- .../platform/graphics/cairo/CairoGraphicsFactory.h | 5 ++-- include/cru/platform/graphics/cairo/CairoImage.h | 5 ++-- .../platform/graphics/cairo/CairoImageFactory.h | 5 ++-- include/cru/platform/graphics/cairo/CairoPainter.h | 5 ++-- .../cru/platform/graphics/cairo/CairoResource.h | 27 -------------------- include/cru/platform/graphics/cairo/PangoFont.h | 4 +-- .../cru/platform/graphics/cairo/PangoTextLayout.h | 5 ++-- 10 files changed, 48 insertions(+), 47 deletions(-) delete mode 100644 include/cru/platform/graphics/cairo/CairoResource.h (limited to 'include/cru/platform/graphics/cairo') diff --git a/include/cru/platform/graphics/cairo/Base.h b/include/cru/platform/graphics/cairo/Base.h index a776f90c..4338d7f7 100644 --- a/include/cru/platform/graphics/cairo/Base.h +++ b/include/cru/platform/graphics/cairo/Base.h @@ -1,5 +1,9 @@ #pragma once +#include + +#include + #ifdef CRU_PLATFORM_WINDOWS #ifdef CRU_PLATFORM_GRAPHICS_CAIRO_EXPORT_API #define CRU_PLATFORM_GRAPHICS_CAIRO_API __declspec(dllexport) @@ -10,12 +14,29 @@ #define CRU_PLATFORM_GRAPHICS_CAIRO_API #endif -#include - -#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); + +class CairoGraphicsFactory; + +class CRU_PLATFORM_GRAPHICS_CAIRO_API CairoResource + : public Object, + public virtual IGraphicsResource { + public: + explicit CairoResource(CairoGraphicsFactory* factory); + + CRU_DELETE_COPY(CairoResource) + CRU_DELETE_MOVE(CairoResource) + + ~CairoResource() override; + + std::string GetPlatformId() const override; + IGraphicsFactory* GetGraphicsFactory() override; + CairoGraphicsFactory* GetCairoGraphicsFactory() const { return factory_; } + + private: + CairoGraphicsFactory* factory_; +}; } // namespace cru::platform::graphics::cairo diff --git a/include/cru/platform/graphics/cairo/CairoBrush.h b/include/cru/platform/graphics/cairo/CairoBrush.h index f2a15e06..0ba0723c 100644 --- a/include/cru/platform/graphics/cairo/CairoBrush.h +++ b/include/cru/platform/graphics/cairo/CairoBrush.h @@ -1,6 +1,7 @@ #pragma once -#include "CairoResource.h" -#include "cru/platform/graphics/Brush.h" +#include "Base.h" + +#include #include diff --git a/include/cru/platform/graphics/cairo/CairoGeometry.h b/include/cru/platform/graphics/cairo/CairoGeometry.h index b1c31a18..1d69ebf2 100644 --- a/include/cru/platform/graphics/cairo/CairoGeometry.h +++ b/include/cru/platform/graphics/cairo/CairoGeometry.h @@ -1,6 +1,7 @@ #pragma once -#include "CairoResource.h" -#include "cru/platform/graphics/Geometry.h" +#include "Base.h" + +#include #include diff --git a/include/cru/platform/graphics/cairo/CairoGraphicsFactory.h b/include/cru/platform/graphics/cairo/CairoGraphicsFactory.h index 563c6b40..545992fb 100644 --- a/include/cru/platform/graphics/cairo/CairoGraphicsFactory.h +++ b/include/cru/platform/graphics/cairo/CairoGraphicsFactory.h @@ -1,7 +1,8 @@ #pragma once -#include "../Factory.h" -#include "CairoResource.h" +#include "Base.h" + +#include #include #include diff --git a/include/cru/platform/graphics/cairo/CairoImage.h b/include/cru/platform/graphics/cairo/CairoImage.h index 61a2e65b..77209803 100644 --- a/include/cru/platform/graphics/cairo/CairoImage.h +++ b/include/cru/platform/graphics/cairo/CairoImage.h @@ -1,6 +1,7 @@ #pragma once -#include "../Image.h" -#include "CairoResource.h" +#include "Base.h" + +#include namespace cru::platform::graphics::cairo { class CRU_PLATFORM_GRAPHICS_CAIRO_API CairoImage : public CairoResource, diff --git a/include/cru/platform/graphics/cairo/CairoImageFactory.h b/include/cru/platform/graphics/cairo/CairoImageFactory.h index 6bc41309..c8f94a01 100644 --- a/include/cru/platform/graphics/cairo/CairoImageFactory.h +++ b/include/cru/platform/graphics/cairo/CairoImageFactory.h @@ -1,6 +1,7 @@ #pragma once -#include "../ImageFactory.h" -#include "CairoResource.h" +#include "Base.h" + +#include namespace cru::platform::graphics::cairo { class CairoImageFactory : public CairoResource, public virtual IImageFactory { diff --git a/include/cru/platform/graphics/cairo/CairoPainter.h b/include/cru/platform/graphics/cairo/CairoPainter.h index 1c071fb0..0833e42b 100644 --- a/include/cru/platform/graphics/cairo/CairoPainter.h +++ b/include/cru/platform/graphics/cairo/CairoPainter.h @@ -1,7 +1,8 @@ #pragma once +#include "Base.h" + #include -#include "../Painter.h" -#include "CairoResource.h" +#include #include diff --git a/include/cru/platform/graphics/cairo/CairoResource.h b/include/cru/platform/graphics/cairo/CairoResource.h deleted file mode 100644 index 14730e8a..00000000 --- a/include/cru/platform/graphics/cairo/CairoResource.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once -#include "Base.h" - -#include "../Resource.h" - -namespace cru::platform::graphics::cairo { -class CairoGraphicsFactory; - -class CRU_PLATFORM_GRAPHICS_CAIRO_API CairoResource - : public Object, - public virtual IGraphicsResource { - public: - explicit CairoResource(CairoGraphicsFactory* factory); - - CRU_DELETE_COPY(CairoResource) - CRU_DELETE_MOVE(CairoResource) - - ~CairoResource() override; - - std::string GetPlatformId() const override; - IGraphicsFactory* GetGraphicsFactory() override; - CairoGraphicsFactory* GetCairoGraphicsFactory() const { return factory_; } - - private: - CairoGraphicsFactory* factory_; -}; -} // namespace cru::platform::graphics::cairo diff --git a/include/cru/platform/graphics/cairo/PangoFont.h b/include/cru/platform/graphics/cairo/PangoFont.h index e8dbf3ec..e06cbc71 100644 --- a/include/cru/platform/graphics/cairo/PangoFont.h +++ b/include/cru/platform/graphics/cairo/PangoFont.h @@ -1,7 +1,7 @@ #pragma once +#include "Base.h" -#include "../Font.h" -#include "CairoResource.h" +#include #include diff --git a/include/cru/platform/graphics/cairo/PangoTextLayout.h b/include/cru/platform/graphics/cairo/PangoTextLayout.h index 270022ee..0ef900d0 100644 --- a/include/cru/platform/graphics/cairo/PangoTextLayout.h +++ b/include/cru/platform/graphics/cairo/PangoTextLayout.h @@ -1,8 +1,9 @@ #pragma once -#include "../TextLayout.h" -#include "CairoResource.h" +#include "Base.h" #include "PangoFont.h" +#include + #include namespace cru::platform::graphics::cairo { -- cgit v1.2.3