aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2021-09-15 19:23:45 +0800
committercrupest <crupest@outlook.com>2021-09-15 19:23:45 +0800
commite6dd695fc757b59571f67a278e4d88ad54cd36ae (patch)
tree0b95ec353d34ecbf82adb717f786bdbd07d9abda
parentcb981f5a337f3a8fc9d450b891c358c2b8dc29d3 (diff)
downloadcru-e6dd695fc757b59571f67a278e4d88ad54cd36ae.tar.gz
cru-e6dd695fc757b59571f67a278e4d88ad54cd36ae.tar.bz2
cru-e6dd695fc757b59571f67a278e4d88ad54cd36ae.zip
...
-rw-r--r--include/cru/osx/graphics/quartz/Brush.hpp4
-rw-r--r--include/cru/osx/graphics/quartz/Factory.hpp10
-rw-r--r--include/cru/osx/graphics/quartz/Font.hpp2
-rw-r--r--include/cru/osx/graphics/quartz/Geometry.hpp4
-rw-r--r--include/cru/osx/graphics/quartz/Painter.hpp2
-rw-r--r--include/cru/osx/graphics/quartz/Resource.hpp8
-rw-r--r--include/cru/osx/graphics/quartz/TextLayout.hpp2
-rw-r--r--include/cru/platform/graphics/Base.hpp2
-rw-r--r--include/cru/platform/graphics/Brush.hpp2
-rw-r--r--include/cru/platform/graphics/Factory.hpp9
-rw-r--r--include/cru/platform/graphics/Font.hpp2
-rw-r--r--include/cru/platform/graphics/Geometry.hpp4
-rw-r--r--include/cru/platform/graphics/Resource.hpp6
-rw-r--r--include/cru/platform/graphics/TextLayout.hpp2
-rw-r--r--include/cru/platform/gui/UiApplication.hpp2
-rw-r--r--src/osx/graphics/quartz/Brush.cpp2
-rw-r--r--src/osx/graphics/quartz/Font.cpp2
-rw-r--r--src/osx/graphics/quartz/Geometry.cpp6
-rw-r--r--src/osx/graphics/quartz/TextLayout.cpp2
-rw-r--r--src/ui/Helper.cpp4
-rw-r--r--src/ui/Helper.hpp2
-rw-r--r--src/ui/UiManager.cpp2
22 files changed, 43 insertions, 38 deletions
diff --git a/include/cru/osx/graphics/quartz/Brush.hpp b/include/cru/osx/graphics/quartz/Brush.hpp
index 1b5fd7e4..11f05292 100644
--- a/include/cru/osx/graphics/quartz/Brush.hpp
+++ b/include/cru/osx/graphics/quartz/Brush.hpp
@@ -11,7 +11,7 @@
namespace cru::platform::graphics::osx::quartz {
class QuartzBrush : public OsxQuartzResource, public virtual IBrush {
public:
- QuartzBrush(IGraphFactory* graphics_factory)
+ QuartzBrush(IGraphicsFactory* graphics_factory)
: OsxQuartzResource(graphics_factory) {}
CRU_DELETE_COPY(QuartzBrush)
CRU_DELETE_MOVE(QuartzBrush)
@@ -24,7 +24,7 @@ class QuartzBrush : public OsxQuartzResource, public virtual IBrush {
class QuartzSolidColorBrush : public QuartzBrush,
public virtual ISolidColorBrush {
public:
- QuartzSolidColorBrush(IGraphFactory* graphics_factory, const Color& color);
+ QuartzSolidColorBrush(IGraphicsFactory* graphics_factory, const Color& color);
CRU_DELETE_COPY(QuartzSolidColorBrush)
CRU_DELETE_MOVE(QuartzSolidColorBrush)
diff --git a/include/cru/osx/graphics/quartz/Factory.hpp b/include/cru/osx/graphics/quartz/Factory.hpp
index 5346d039..454b2388 100644
--- a/include/cru/osx/graphics/quartz/Factory.hpp
+++ b/include/cru/osx/graphics/quartz/Factory.hpp
@@ -5,7 +5,7 @@
namespace cru::platform::graphics::osx::quartz {
class QuartzGraphicsFactory : public OsxQuartzResource,
- public virtual IGraphFactory {
+ public virtual IGraphicsFactory {
public:
QuartzGraphicsFactory() : OsxQuartzResource(this) {}
@@ -16,5 +16,13 @@ class QuartzGraphicsFactory : public OsxQuartzResource,
public:
std::unique_ptr<ISolidColorBrush> CreateSolidColorBrush() override;
+
+ std::unique_ptr<IGeometryBuilder> CreateGeometryBuilder() override;
+
+ std::unique_ptr<IFont> CreateFont(String font_family,
+ float font_size) override;
+
+ std::unique_ptr<ITextLayout> CreateTextLayout(std::shared_ptr<IFont> font,
+ String text) override;
};
} // namespace cru::platform::graphics::osx::quartz
diff --git a/include/cru/osx/graphics/quartz/Font.hpp b/include/cru/osx/graphics/quartz/Font.hpp
index 618c4c48..75eeff60 100644
--- a/include/cru/osx/graphics/quartz/Font.hpp
+++ b/include/cru/osx/graphics/quartz/Font.hpp
@@ -8,7 +8,7 @@
namespace cru::platform::graphics::osx::quartz {
class OsxCTFont : public OsxQuartzResource, public virtual IFont {
public:
- OsxCTFont(IGraphFactory* graphics_factory, const String& name, float size);
+ OsxCTFont(IGraphicsFactory* graphics_factory, const String& name, float size);
CRU_DELETE_COPY(OsxCTFont)
CRU_DELETE_MOVE(OsxCTFont)
diff --git a/include/cru/osx/graphics/quartz/Geometry.hpp b/include/cru/osx/graphics/quartz/Geometry.hpp
index 0c8f840f..565c5b86 100644
--- a/include/cru/osx/graphics/quartz/Geometry.hpp
+++ b/include/cru/osx/graphics/quartz/Geometry.hpp
@@ -9,7 +9,7 @@
namespace cru::platform::graphics::osx::quartz {
class QuartzGeometry : public OsxQuartzResource, public virtual IGeometry {
public:
- QuartzGeometry(IGraphFactory *graphics_factory, CGPathRef cg_path);
+ QuartzGeometry(IGraphicsFactory *graphics_factory, CGPathRef cg_path);
CRU_DELETE_COPY(QuartzGeometry)
CRU_DELETE_MOVE(QuartzGeometry)
@@ -27,7 +27,7 @@ class QuartzGeometry : public OsxQuartzResource, public virtual IGeometry {
class QuartzGeometryBuilder : public OsxQuartzResource,
public virtual IGeometryBuilder {
public:
- explicit QuartzGeometryBuilder(IGraphFactory *graphics_factory);
+ explicit QuartzGeometryBuilder(IGraphicsFactory *graphics_factory);
CRU_DELETE_COPY(QuartzGeometryBuilder)
CRU_DELETE_MOVE(QuartzGeometryBuilder)
diff --git a/include/cru/osx/graphics/quartz/Painter.hpp b/include/cru/osx/graphics/quartz/Painter.hpp
index 5dcc49dc..9a3df187 100644
--- a/include/cru/osx/graphics/quartz/Painter.hpp
+++ b/include/cru/osx/graphics/quartz/Painter.hpp
@@ -10,7 +10,7 @@ namespace cru::platform::graphics::osx::quartz {
class QuartzCGContextPainter : public OsxQuartzResource,
public virtual IPainter {
public:
- explicit QuartzCGContextPainter(IGraphFactory* graphics_factory,
+ explicit QuartzCGContextPainter(IGraphicsFactory* graphics_factory,
CGContextRef cg_context)
: OsxQuartzResource(graphics_factory), cg_context_(cg_context) {}
diff --git a/include/cru/osx/graphics/quartz/Resource.hpp b/include/cru/osx/graphics/quartz/Resource.hpp
index 2d3b4b08..d7038274 100644
--- a/include/cru/osx/graphics/quartz/Resource.hpp
+++ b/include/cru/osx/graphics/quartz/Resource.hpp
@@ -5,9 +5,9 @@
namespace cru::platform::graphics::osx::quartz {
class OsxQuartzResource : public platform::osx::OsxResource,
- public virtual IGraphResource {
+ public virtual IGraphicsResource {
public:
- explicit OsxQuartzResource(IGraphFactory* graphics_factory)
+ explicit OsxQuartzResource(IGraphicsFactory* graphics_factory)
: graphics_factory_(graphics_factory) {}
CRU_DELETE_COPY(OsxQuartzResource)
@@ -17,9 +17,9 @@ class OsxQuartzResource : public platform::osx::OsxResource,
public:
String GetPlatformId() const override { return u"OSX Quartz"; }
- IGraphFactory* GetGraphFactory() override;
+ IGraphicsFactory* GetGraphicsFactory() override;
private:
- IGraphFactory* graphics_factory_;
+ IGraphicsFactory* graphics_factory_;
};
} // namespace cru::platform::graphics::osx::quartz
diff --git a/include/cru/osx/graphics/quartz/TextLayout.hpp b/include/cru/osx/graphics/quartz/TextLayout.hpp
index adcf3b0c..96aabf90 100644
--- a/include/cru/osx/graphics/quartz/TextLayout.hpp
+++ b/include/cru/osx/graphics/quartz/TextLayout.hpp
@@ -10,7 +10,7 @@
namespace cru::platform::graphics::osx::quartz {
class OsxCTTextLayout : public OsxQuartzResource, public virtual ITextLayout {
public:
- OsxCTTextLayout(IGraphFactory* graphics_factory,
+ OsxCTTextLayout(IGraphicsFactory* graphics_factory,
std::shared_ptr<OsxCTFont> font, const String& str);
CRU_DELETE_COPY(OsxCTTextLayout)
diff --git a/include/cru/platform/graphics/Base.hpp b/include/cru/platform/graphics/Base.hpp
index 60af40ab..62ff15c3 100644
--- a/include/cru/platform/graphics/Base.hpp
+++ b/include/cru/platform/graphics/Base.hpp
@@ -8,7 +8,7 @@
namespace cru::platform::graphics {
// forward declarations
-struct IGraphFactory;
+struct IGraphicsFactory;
struct IBrush;
struct ISolidColorBrush;
struct IFont;
diff --git a/include/cru/platform/graphics/Brush.hpp b/include/cru/platform/graphics/Brush.hpp
index 18d9705e..aa21f79d 100644
--- a/include/cru/platform/graphics/Brush.hpp
+++ b/include/cru/platform/graphics/Brush.hpp
@@ -2,7 +2,7 @@
#include "Resource.hpp"
namespace cru::platform::graphics {
-struct IBrush : virtual IGraphResource {};
+struct IBrush : virtual IGraphicsResource {};
struct ISolidColorBrush : virtual IBrush {
virtual Color GetColor() = 0;
diff --git a/include/cru/platform/graphics/Factory.hpp b/include/cru/platform/graphics/Factory.hpp
index 4ee10204..ad198929 100644
--- a/include/cru/platform/graphics/Factory.hpp
+++ b/include/cru/platform/graphics/Factory.hpp
@@ -6,21 +6,18 @@
#include "Geometry.hpp"
#include "TextLayout.hpp"
-#include <string>
-#include <string_view>
-
namespace cru::platform::graphics {
// Entry point of the graph module.
-struct IGraphFactory : virtual IPlatformResource {
+struct IGraphicsFactory : virtual IPlatformResource {
virtual std::unique_ptr<ISolidColorBrush> CreateSolidColorBrush() = 0;
virtual std::unique_ptr<IGeometryBuilder> CreateGeometryBuilder() = 0;
- virtual std::unique_ptr<IFont> CreateFont(std::u16string font_family,
+ virtual std::unique_ptr<IFont> CreateFont(String font_family,
float font_size) = 0;
virtual std::unique_ptr<ITextLayout> CreateTextLayout(
- std::shared_ptr<IFont> font, std::u16string text) = 0;
+ std::shared_ptr<IFont> font, String text) = 0;
std::unique_ptr<ISolidColorBrush> CreateSolidColorBrush(const Color& color) {
std::unique_ptr<ISolidColorBrush> brush = CreateSolidColorBrush();
diff --git a/include/cru/platform/graphics/Font.hpp b/include/cru/platform/graphics/Font.hpp
index c8a155fc..e1a419eb 100644
--- a/include/cru/platform/graphics/Font.hpp
+++ b/include/cru/platform/graphics/Font.hpp
@@ -2,7 +2,7 @@
#include "Resource.hpp"
namespace cru::platform::graphics {
-struct IFont : virtual IGraphResource {
+struct IFont : virtual IGraphicsResource {
virtual float GetFontSize() = 0;
};
} // namespace cru::platform::graphics
diff --git a/include/cru/platform/graphics/Geometry.hpp b/include/cru/platform/graphics/Geometry.hpp
index cc8f8761..f01132fb 100644
--- a/include/cru/platform/graphics/Geometry.hpp
+++ b/include/cru/platform/graphics/Geometry.hpp
@@ -2,13 +2,13 @@
#include "Resource.hpp"
namespace cru::platform::graphics {
-struct IGeometry : virtual IGraphResource {
+struct IGeometry : virtual IGraphicsResource {
virtual bool FillContains(const Point& point) = 0;
};
// After called Build, calling every method will throw a
-struct IGeometryBuilder : virtual IGraphResource {
+struct IGeometryBuilder : virtual IGraphicsResource {
virtual void BeginFigure(const Point& point) = 0;
virtual void LineTo(const Point& point) = 0;
virtual void QuadraticBezierTo(const Point& control_point,
diff --git a/include/cru/platform/graphics/Resource.hpp b/include/cru/platform/graphics/Resource.hpp
index 212e5b18..cd1e5283 100644
--- a/include/cru/platform/graphics/Resource.hpp
+++ b/include/cru/platform/graphics/Resource.hpp
@@ -2,9 +2,9 @@
#include "Base.hpp"
namespace cru::platform::graphics {
-struct IGraphFactory;
+struct IGraphicsFactory;
-struct IGraphResource : virtual IPlatformResource {
- virtual IGraphFactory* GetGraphFactory() = 0;
+struct IGraphicsResource : virtual IPlatformResource {
+ virtual IGraphicsFactory* GetGraphicsFactory() = 0;
};
} // namespace cru::platform::graphics
diff --git a/include/cru/platform/graphics/TextLayout.hpp b/include/cru/platform/graphics/TextLayout.hpp
index 716c8047..ec3c2d96 100644
--- a/include/cru/platform/graphics/TextLayout.hpp
+++ b/include/cru/platform/graphics/TextLayout.hpp
@@ -5,7 +5,7 @@
#include <vector>
namespace cru::platform::graphics {
-struct ITextLayout : virtual IGraphResource {
+struct ITextLayout : virtual IGraphicsResource {
virtual String GetText() = 0;
virtual void SetText(String new_text) = 0;
diff --git a/include/cru/platform/gui/UiApplication.hpp b/include/cru/platform/gui/UiApplication.hpp
index 407e4fa1..86eb0904 100644
--- a/include/cru/platform/gui/UiApplication.hpp
+++ b/include/cru/platform/gui/UiApplication.hpp
@@ -62,7 +62,7 @@ struct CRU_PLATFORM_GUI_API IUiApplication : public virtual IPlatformResource {
virtual INativeWindow* CreateWindow(INativeWindow* parent,
CreateWindowFlag flags) = 0;
- virtual cru::platform::graphics::IGraphFactory* GetGraphFactory() = 0;
+ virtual cru::platform::graphics::IGraphicsFactory* GetGraphFactory() = 0;
virtual ICursorManager* GetCursorManager() = 0;
};
diff --git a/src/osx/graphics/quartz/Brush.cpp b/src/osx/graphics/quartz/Brush.cpp
index 6e4893b1..41e9d2c5 100644
--- a/src/osx/graphics/quartz/Brush.cpp
+++ b/src/osx/graphics/quartz/Brush.cpp
@@ -1,7 +1,7 @@
#include "cru/osx/graphics/quartz/Brush.hpp"
namespace cru::platform::graphics::osx::quartz {
-QuartzSolidColorBrush::QuartzSolidColorBrush(IGraphFactory* graphics_factory,
+QuartzSolidColorBrush::QuartzSolidColorBrush(IGraphicsFactory* graphics_factory,
const Color& color)
: QuartzBrush(graphics_factory), color_(color) {
cg_color_ =
diff --git a/src/osx/graphics/quartz/Font.cpp b/src/osx/graphics/quartz/Font.cpp
index e6c1dc91..c35f53fa 100644
--- a/src/osx/graphics/quartz/Font.cpp
+++ b/src/osx/graphics/quartz/Font.cpp
@@ -4,7 +4,7 @@
#include "cru/osx/graphics/quartz/Resource.hpp"
namespace cru::platform::graphics::osx::quartz {
-OsxCTFont::OsxCTFont(IGraphFactory* graphics_factory, const String& name,
+OsxCTFont::OsxCTFont(IGraphicsFactory* graphics_factory, const String& name,
float size)
: OsxQuartzResource(graphics_factory) {
CFStringRef n = Convert(name);
diff --git a/src/osx/graphics/quartz/Geometry.cpp b/src/osx/graphics/quartz/Geometry.cpp
index 79e6fbb1..4ad9a7f3 100644
--- a/src/osx/graphics/quartz/Geometry.cpp
+++ b/src/osx/graphics/quartz/Geometry.cpp
@@ -3,7 +3,7 @@
#include <memory>
namespace cru::platform::graphics::osx::quartz {
-QuartzGeometry::QuartzGeometry(IGraphFactory *graphics_factory,
+QuartzGeometry::QuartzGeometry(IGraphicsFactory *graphics_factory,
CGPathRef cg_path)
: OsxQuartzResource(graphics_factory), cg_path_(cg_path) {}
@@ -14,7 +14,7 @@ bool QuartzGeometry::FillContains(const Point &point) {
kCGPathFill);
}
-QuartzGeometryBuilder::QuartzGeometryBuilder(IGraphFactory *graphics_factory)
+QuartzGeometryBuilder::QuartzGeometryBuilder(IGraphicsFactory *graphics_factory)
: OsxQuartzResource(graphics_factory) {
cg_mutable_path_ = CGPathCreateMutable();
}
@@ -42,7 +42,7 @@ void QuartzGeometryBuilder::QuadraticBezierTo(const Point &control_point,
}
std::unique_ptr<IGeometry> QuartzGeometryBuilder::Build() {
- return std::make_unique<QuartzGeometry>(GetGraphFactory(),
+ return std::make_unique<QuartzGeometry>(GetGraphicsFactory(),
CGPathCreateCopy(cg_mutable_path_));
}
} // namespace cru::platform::graphics::osx::quartz
diff --git a/src/osx/graphics/quartz/TextLayout.cpp b/src/osx/graphics/quartz/TextLayout.cpp
index 19fbf57c..d6a19264 100644
--- a/src/osx/graphics/quartz/TextLayout.cpp
+++ b/src/osx/graphics/quartz/TextLayout.cpp
@@ -7,7 +7,7 @@
#include <limits>
namespace cru::platform::graphics::osx::quartz {
-OsxCTTextLayout::OsxCTTextLayout(IGraphFactory* graphics_factory,
+OsxCTTextLayout::OsxCTTextLayout(IGraphicsFactory* graphics_factory,
std::shared_ptr<OsxCTFont> font,
const String& str)
: OsxQuartzResource(graphics_factory),
diff --git a/src/ui/Helper.cpp b/src/ui/Helper.cpp
index 88ead993..90b384c4 100644
--- a/src/ui/Helper.cpp
+++ b/src/ui/Helper.cpp
@@ -4,10 +4,10 @@
#include "cru/platform/gui/UiApplication.hpp"
namespace cru::ui {
-using cru::platform::graphics::IGraphFactory;
+using cru::platform::graphics::IGraphicsFactory;
using cru::platform::gui::IUiApplication;
-IGraphFactory* GetGraphFactory() {
+IGraphicsFactory* GetGraphFactory() {
return IUiApplication::GetInstance()->GetGraphFactory();
}
diff --git a/src/ui/Helper.hpp b/src/ui/Helper.hpp
index 327f91ff..cf1140dc 100644
--- a/src/ui/Helper.hpp
+++ b/src/ui/Helper.hpp
@@ -12,6 +12,6 @@ struct IUiApplication;
} // namespace cru::platform
namespace cru::ui {
-cru::platform::graphics::IGraphFactory* GetGraphFactory();
+cru::platform::graphics::IGraphicsFactory* GetGraphFactory();
cru::platform::gui::IUiApplication* GetUiApplication();
} // namespace cru::ui
diff --git a/src/ui/UiManager.cpp b/src/ui/UiManager.cpp
index b0cc769a..85ca552c 100644
--- a/src/ui/UiManager.cpp
+++ b/src/ui/UiManager.cpp
@@ -20,7 +20,7 @@ using namespace cru::ui::style;
using namespace cru::ui::helper;
namespace {
-std::unique_ptr<ISolidColorBrush> CreateSolidColorBrush(IGraphFactory* factory,
+std::unique_ptr<ISolidColorBrush> CreateSolidColorBrush(IGraphicsFactory* factory,
const Color& color) {
auto brush = factory->CreateSolidColorBrush();
brush->SetColor(color);