aboutsummaryrefslogtreecommitdiff
path: root/include/cru/win/graph
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/win/graph')
-rw-r--r--include/cru/win/graph/direct/Factory.hpp4
-rw-r--r--include/cru/win/graph/direct/Font.hpp3
-rw-r--r--include/cru/win/graph/direct/Resource.hpp4
-rw-r--r--include/cru/win/graph/direct/TextLayout.hpp11
4 files changed, 11 insertions, 11 deletions
diff --git a/include/cru/win/graph/direct/Factory.hpp b/include/cru/win/graph/direct/Factory.hpp
index 763d4b2b..e70454f5 100644
--- a/include/cru/win/graph/direct/Factory.hpp
+++ b/include/cru/win/graph/direct/Factory.hpp
@@ -38,11 +38,11 @@ class DirectGraphFactory : public DirectResource, public virtual IGraphFactory {
std::unique_ptr<IGeometryBuilder> CreateGeometryBuilder() override;
- std::unique_ptr<IFont> CreateFont(const std::string_view& font_family,
+ std::unique_ptr<IFont> CreateFont(std::u16string font_family,
float font_size) override;
std::unique_ptr<ITextLayout> CreateTextLayout(std::shared_ptr<IFont> font,
- std::string text) override;
+ std::u16string text) override;
private:
Microsoft::WRL::ComPtr<ID3D11Device> d3d11_device_;
diff --git a/include/cru/win/graph/direct/Font.hpp b/include/cru/win/graph/direct/Font.hpp
index ecf9fd81..2195f3e4 100644
--- a/include/cru/win/graph/direct/Font.hpp
+++ b/include/cru/win/graph/direct/Font.hpp
@@ -11,7 +11,7 @@ class DWriteFont : public DirectGraphResource,
public virtual IFont,
public virtual IComResource<IDWriteTextFormat> {
public:
- DWriteFont(DirectGraphFactory* factory, const std::string_view& font_family,
+ DWriteFont(DirectGraphFactory* factory, std::u16string font_family,
float font_size);
CRU_DELETE_COPY(DWriteFont)
@@ -27,6 +27,7 @@ class DWriteFont : public DirectGraphResource,
float GetFontSize() override;
private:
+ std::u16string font_family_;
Microsoft::WRL::ComPtr<IDWriteTextFormat> text_format_;
};
} // namespace cru::platform::graph::win::direct
diff --git a/include/cru/win/graph/direct/Resource.hpp b/include/cru/win/graph/direct/Resource.hpp
index d0a30dbd..6162ebd8 100644
--- a/include/cru/win/graph/direct/Resource.hpp
+++ b/include/cru/win/graph/direct/Resource.hpp
@@ -10,7 +10,7 @@ class DirectGraphFactory;
class DirectResource : public Object, public virtual INativeResource {
public:
- static constexpr std::string_view k_platform_id = "Windows Direct";
+ static constexpr std::u16string_view k_platform_id = u"Windows Direct";
protected:
DirectResource() = default;
@@ -22,7 +22,7 @@ class DirectResource : public Object, public virtual INativeResource {
~DirectResource() override = default;
public:
- std::string_view GetPlatformId() const final { return k_platform_id; }
+ std::u16string_view GetPlatformId() const final { return k_platform_id; }
};
class DirectGraphResource : public DirectResource,
diff --git a/include/cru/win/graph/direct/TextLayout.hpp b/include/cru/win/graph/direct/TextLayout.hpp
index 40c63dbe..c53cf655 100644
--- a/include/cru/win/graph/direct/TextLayout.hpp
+++ b/include/cru/win/graph/direct/TextLayout.hpp
@@ -15,7 +15,7 @@ class DWriteTextLayout : public DirectGraphResource,
public virtual IComResource<IDWriteTextLayout> {
public:
DWriteTextLayout(DirectGraphFactory* factory, std::shared_ptr<IFont> font,
- std::string text);
+ std::u16string text);
CRU_DELETE_COPY(DWriteTextLayout)
CRU_DELETE_MOVE(DWriteTextLayout)
@@ -28,8 +28,8 @@ class DWriteTextLayout : public DirectGraphResource,
}
public:
- std::string GetText() override;
- void SetText(std::string new_text) override;
+ std::u16string GetText() override;
+ void SetText(std::u16string new_text) override;
std::shared_ptr<IFont> GetFont() override;
void SetFont(std::shared_ptr<IFont> font) override;
@@ -41,12 +41,11 @@ class DWriteTextLayout : public DirectGraphResource,
// Return empty vector if text_range.count is 0. Text range could be in
// reverse direction, it should be normalized first in implementation.
std::vector<Rect> TextRangeRect(const TextRange& text_range) override;
- Point TextSinglePoint(gsl::index position, bool trailing) override;
+ Point TextSinglePoint(Index position, bool trailing) override;
TextHitTestResult HitTest(const Point& point) override;
private:
- std::string text_;
- std::wstring w_text_;
+ std::u16string text_;
std::shared_ptr<DWriteFont> font_;
float max_width_ = std::numeric_limits<float>::max();
float max_height_ = std::numeric_limits<float>::max();