From 40bbf3c14a782673bbd36c8a98adb0934b06add5 Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Mon, 3 Nov 2025 20:48:22 +0800 Subject: Osx remove Resource.h. --- src/platform/graphics/quartz/Base.cpp | 62 +++++++++++++++++++++++++++ src/platform/graphics/quartz/Brush.cpp | 1 + src/platform/graphics/quartz/CMakeLists.txt | 9 ++-- src/platform/graphics/quartz/Convert.cpp | 62 --------------------------- src/platform/graphics/quartz/Factory.cpp | 1 - src/platform/graphics/quartz/Font.cpp | 3 +- src/platform/graphics/quartz/Geometry.cpp | 1 - src/platform/graphics/quartz/Image.cpp | 2 - src/platform/graphics/quartz/ImageFactory.cpp | 5 +-- src/platform/graphics/quartz/Painter.cpp | 2 - src/platform/graphics/quartz/Resource.cpp | 1 - src/platform/graphics/quartz/TextLayout.cpp | 5 +-- 12 files changed, 71 insertions(+), 83 deletions(-) create mode 100644 src/platform/graphics/quartz/Base.cpp delete mode 100644 src/platform/graphics/quartz/Convert.cpp delete mode 100644 src/platform/graphics/quartz/Resource.cpp (limited to 'src/platform/graphics') diff --git a/src/platform/graphics/quartz/Base.cpp b/src/platform/graphics/quartz/Base.cpp new file mode 100644 index 00000000..3d6e664a --- /dev/null +++ b/src/platform/graphics/quartz/Base.cpp @@ -0,0 +1,62 @@ +#include "cru/platform/graphics/quartz/Base.h" + +namespace cru::platform::graphics::quartz { + +CGPoint Convert(const Point& point) { return CGPoint{point.x, point.y}; } +Point Convert(const CGPoint& point) { return Point(point.x, point.y); } + +CGSize Convert(const Size& size) { return CGSize{size.width, size.height}; } +Size Convert(const CGSize& size) { return Size(size.width, size.height); } + +CGAffineTransform Convert(const Matrix& matrix) { + return CGAffineTransformMake(matrix.m11, matrix.m12, matrix.m21, matrix.m22, + matrix.m31, matrix.m32); +} + +Matrix Convert(const CGAffineTransform& matrix) { + return Matrix(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); +} + +CGRect Convert(const Rect& rect) { + return CGRect{CGPoint{rect.left, rect.top}, CGSize{rect.width, rect.height}}; +} + +Rect Convert(const CGRect& rect) { + return Rect{static_cast(rect.origin.x), + static_cast(rect.origin.y), + static_cast(rect.size.width), + static_cast(rect.size.height)}; +} + +const CGDataProviderSequentialCallbacks kStreamToCGDataProviderCallbacks{ + 1, + [](void* stream, void* buffer, size_t size) -> size_t { + return static_cast(stream)->Read( + static_cast(buffer), size); + }, + [](void* stream, off_t offset) -> off_t { + auto s = static_cast(stream); + auto current_position = s->Tell(); + s->Seek(offset, io::Stream::SeekOrigin::Current); + return s->Tell() - current_position; + }, + [](void* stream) { static_cast(stream)->Rewind(); }, + [](void* stream) {}}; + +CGDataProviderRef ConvertStreamToCGDataProvider(io::Stream* stream) { + return CGDataProviderCreateSequential(stream, + &kStreamToCGDataProviderCallbacks); +} + +const CGDataConsumerCallbacks kStreamToCGDataConsumerCallbacks{ + [](void* info, const void* buffer, size_t count) -> size_t { + return static_cast(info)->Write( + static_cast(buffer), count); + }, + [](void* info) {}}; + +CGDataConsumerRef ConvertStreamToCGDataConsumer(io::Stream* stream) { + return CGDataConsumerCreate(stream, &kStreamToCGDataConsumerCallbacks); +} + +} // namespace cru::platform::graphics::quartz diff --git a/src/platform/graphics/quartz/Brush.cpp b/src/platform/graphics/quartz/Brush.cpp index c5784e51..acdc7170 100644 --- a/src/platform/graphics/quartz/Brush.cpp +++ b/src/platform/graphics/quartz/Brush.cpp @@ -1,4 +1,5 @@ #include "cru/platform/graphics/quartz/Brush.h" + #include namespace cru::platform::graphics::quartz { diff --git a/src/platform/graphics/quartz/CMakeLists.txt b/src/platform/graphics/quartz/CMakeLists.txt index 88050a07..bde8e815 100644 --- a/src/platform/graphics/quartz/CMakeLists.txt +++ b/src/platform/graphics/quartz/CMakeLists.txt @@ -1,19 +1,20 @@ add_library(CruPlatformGraphicsQuartz + Base.cpp Brush.cpp - Convert.cpp Factory.cpp Font.cpp Geometry.cpp Image.cpp ImageFactory.cpp Painter.cpp - Resource.cpp TextLayout.cpp ) +find_library(FOUNDATION Foundation REQUIRED) +find_library(CORE_FOUNDATION CoreFoundation REQUIRED) find_library(CORE_GRAPHICS CoreGraphics REQUIRED) find_library(CORE_TEXT CoreText REQUIRED) find_library(IMAGE_IO ImageIO REQUIRED) -target_link_libraries(CruPlatformGraphicsQuartz PUBLIC ${CORE_GRAPHICS} ${CORE_TEXT} ${IMAGE_IO}) -target_link_libraries(CruPlatformGraphicsQuartz PUBLIC CruPlatformBaseOsx CruPlatformGraphics) +target_link_libraries(CruPlatformGraphicsQuartz PUBLIC ${FOUNDATION} ${CORE_FOUNDATION} ${CORE_GRAPHICS} ${CORE_TEXT} ${IMAGE_IO}) +target_link_libraries(CruPlatformGraphicsQuartz PUBLIC CruPlatformGraphics) diff --git a/src/platform/graphics/quartz/Convert.cpp b/src/platform/graphics/quartz/Convert.cpp deleted file mode 100644 index 06699b0c..00000000 --- a/src/platform/graphics/quartz/Convert.cpp +++ /dev/null @@ -1,62 +0,0 @@ -#include "cru/platform/graphics/quartz/Convert.h" - -namespace cru::platform::graphics::quartz { - -CGPoint Convert(const Point& point) { return CGPoint{point.x, point.y}; } -Point Convert(const CGPoint& point) { return Point(point.x, point.y); } - -CGSize Convert(const Size& size) { return CGSize{size.width, size.height}; } -Size Convert(const CGSize& size) { return Size(size.width, size.height); } - -CGAffineTransform Convert(const Matrix& matrix) { - return CGAffineTransformMake(matrix.m11, matrix.m12, matrix.m21, matrix.m22, - matrix.m31, matrix.m32); -} - -Matrix Convert(const CGAffineTransform& matrix) { - return Matrix(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); -} - -CGRect Convert(const Rect& rect) { - return CGRect{CGPoint{rect.left, rect.top}, CGSize{rect.width, rect.height}}; -} - -Rect Convert(const CGRect& rect) { - return Rect{static_cast(rect.origin.x), - static_cast(rect.origin.y), - static_cast(rect.size.width), - static_cast(rect.size.height)}; -} - -const CGDataProviderSequentialCallbacks kStreamToCGDataProviderCallbacks{ - 1, - [](void* stream, void* buffer, size_t size) -> size_t { - return static_cast(stream)->Read( - static_cast(buffer), size); - }, - [](void* stream, off_t offset) -> off_t { - auto s = static_cast(stream); - auto current_position = s->Tell(); - s->Seek(offset, io::Stream::SeekOrigin::Current); - return s->Tell() - current_position; - }, - [](void* stream) { static_cast(stream)->Rewind(); }, - [](void* stream) {}}; - -CGDataProviderRef ConvertStreamToCGDataProvider(io::Stream* stream) { - return CGDataProviderCreateSequential(stream, - &kStreamToCGDataProviderCallbacks); -} - -const CGDataConsumerCallbacks kStreamToCGDataConsumerCallbacks{ - [](void* info, const void* buffer, size_t count) -> size_t { - return static_cast(info)->Write( - static_cast(buffer), count); - }, - [](void* info) {}}; - -CGDataConsumerRef ConvertStreamToCGDataConsumer(io::Stream* stream) { - return CGDataConsumerCreate(stream, &kStreamToCGDataConsumerCallbacks); -} - -} // namespace cru::platform::graphics::quartz diff --git a/src/platform/graphics/quartz/Factory.cpp b/src/platform/graphics/quartz/Factory.cpp index 3a489212..bdef7554 100644 --- a/src/platform/graphics/quartz/Factory.cpp +++ b/src/platform/graphics/quartz/Factory.cpp @@ -1,6 +1,5 @@ #include "cru/platform/graphics/quartz/Factory.h" -#include "cru/platform/graphics/ImageFactory.h" #include "cru/platform/graphics/quartz/Brush.h" #include "cru/platform/graphics/quartz/Font.h" #include "cru/platform/graphics/quartz/Geometry.h" diff --git a/src/platform/graphics/quartz/Font.cpp b/src/platform/graphics/quartz/Font.cpp index 12a8aa7f..dc60d559 100644 --- a/src/platform/graphics/quartz/Font.cpp +++ b/src/platform/graphics/quartz/Font.cpp @@ -1,7 +1,6 @@ #include "cru/platform/graphics/quartz/Font.h" -#include "cru/base/Osx.h" -#include "cru/platform/graphics/quartz/Resource.h" +#include "cru/base/platform/osx/Base.h" namespace cru::platform::graphics::quartz { OsxCTFont::OsxCTFont(IGraphicsFactory* graphics_factory, diff --git a/src/platform/graphics/quartz/Geometry.cpp b/src/platform/graphics/quartz/Geometry.cpp index e6558fbb..4c2f90a6 100644 --- a/src/platform/graphics/quartz/Geometry.cpp +++ b/src/platform/graphics/quartz/Geometry.cpp @@ -1,5 +1,4 @@ #include "cru/platform/graphics/quartz/Geometry.h" -#include "cru/platform/graphics/quartz/Convert.h" #include diff --git a/src/platform/graphics/quartz/Image.cpp b/src/platform/graphics/quartz/Image.cpp index a6c7c65b..be63f5f5 100644 --- a/src/platform/graphics/quartz/Image.cpp +++ b/src/platform/graphics/quartz/Image.cpp @@ -1,6 +1,4 @@ #include "cru/platform/graphics/quartz/Image.h" -#include "cru/base/Exception.h" -#include "cru/platform/graphics/quartz/Convert.h" #include "cru/platform/graphics/quartz/Painter.h" namespace cru::platform::graphics::quartz { diff --git a/src/platform/graphics/quartz/ImageFactory.cpp b/src/platform/graphics/quartz/ImageFactory.cpp index 87b2ff36..c591d9d7 100644 --- a/src/platform/graphics/quartz/ImageFactory.cpp +++ b/src/platform/graphics/quartz/ImageFactory.cpp @@ -1,8 +1,5 @@ #include "cru/platform/graphics/quartz/ImageFactory.h" -#include "cru/base/Exception.h" -#include "cru/base/Osx.h" -#include "cru/platform/graphics/Image.h" -#include "cru/platform/graphics/quartz/Convert.h" +#include "cru/base/platform/osx/Base.h" #include "cru/platform/graphics/quartz/Image.h" #include diff --git a/src/platform/graphics/quartz/Painter.cpp b/src/platform/graphics/quartz/Painter.cpp index b825f28c..90450bab 100644 --- a/src/platform/graphics/quartz/Painter.cpp +++ b/src/platform/graphics/quartz/Painter.cpp @@ -1,11 +1,9 @@ #include "cru/platform/graphics/quartz/Painter.h" #include "cru/platform/graphics/quartz/Brush.h" -#include "cru/platform/graphics/quartz/Convert.h" #include "cru/platform/graphics/quartz/Geometry.h" #include "cru/platform/graphics/quartz/Image.h" #include "cru/platform/graphics/quartz/TextLayout.h" -#include "cru/platform/Color.h" namespace cru::platform::graphics::quartz { QuartzCGContextPainter::QuartzCGContextPainter( diff --git a/src/platform/graphics/quartz/Resource.cpp b/src/platform/graphics/quartz/Resource.cpp deleted file mode 100644 index a5d43747..00000000 --- a/src/platform/graphics/quartz/Resource.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "cru/platform/graphics/quartz/Resource.h" diff --git a/src/platform/graphics/quartz/TextLayout.cpp b/src/platform/graphics/quartz/TextLayout.cpp index b7a015c1..f98cff3a 100644 --- a/src/platform/graphics/quartz/TextLayout.cpp +++ b/src/platform/graphics/quartz/TextLayout.cpp @@ -1,10 +1,7 @@ #include "cru/platform/graphics/quartz/TextLayout.h" #include "cru/base/Base.h" -#include "cru/base/Osx.h" #include "cru/base/StringUtil.h" -#include "cru/platform/graphics/Base.h" -#include "cru/platform/graphics/quartz/Convert.h" -#include "cru/platform/graphics/quartz/Resource.h" +#include "cru/base/platform/osx/Base.h" #include #include -- cgit v1.2.3