aboutsummaryrefslogtreecommitdiff
path: root/include/cru/osx/graphics/quartz/Factory.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/osx/graphics/quartz/Factory.hpp')
-rw-r--r--include/cru/osx/graphics/quartz/Factory.hpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/cru/osx/graphics/quartz/Factory.hpp b/include/cru/osx/graphics/quartz/Factory.hpp
index 454b2388..59433b54 100644
--- a/include/cru/osx/graphics/quartz/Factory.hpp
+++ b/include/cru/osx/graphics/quartz/Factory.hpp
@@ -1,18 +1,20 @@
#pragma once
#include "Resource.hpp"
#include "cru/common/Base.hpp"
+#include "cru/osx/graphics/quartz/ImageFactory.hpp"
#include "cru/platform/graphics/Factory.hpp"
+#include "cru/platform/graphics/ImageFactory.hpp"
namespace cru::platform::graphics::osx::quartz {
class QuartzGraphicsFactory : public OsxQuartzResource,
public virtual IGraphicsFactory {
public:
- QuartzGraphicsFactory() : OsxQuartzResource(this) {}
+ QuartzGraphicsFactory();
CRU_DELETE_COPY(QuartzGraphicsFactory)
CRU_DELETE_MOVE(QuartzGraphicsFactory)
- ~QuartzGraphicsFactory() override = default;
+ ~QuartzGraphicsFactory() override;
public:
std::unique_ptr<ISolidColorBrush> CreateSolidColorBrush() override;
@@ -24,5 +26,10 @@ class QuartzGraphicsFactory : public OsxQuartzResource,
std::unique_ptr<ITextLayout> CreateTextLayout(std::shared_ptr<IFont> font,
String text) override;
+
+ IImageFactory* GetImageFactory() override;
+
+ private:
+ std::unique_ptr<QuartzImageFactory> image_factory_;
};
} // namespace cru::platform::graphics::osx::quartz