blob: 312dc0eaf388e6074b296b9e3be123b6aeb4e1f7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#pragma once
#include "cru/common/base.hpp"
#include "cru/common/ui_base.hpp"
#include <string>
#include <string_view>
namespace cru::platform {
struct SolidColorBrush;
struct GeometryBuilder;
struct FontDescriptor;
struct TextLayout;
struct GraphFactory : virtual Interface {
virtual SolidColorBrush* CreateSolidColorBrush(const ui::Color& color) = 0;
virtual GeometryBuilder* CreateGeometryBuilder() = 0;
virtual FontDescriptor* CreateFontDescriptor(const std::wstring_view& font_family) = 0;
virtual TextLayout* CreateTextLayout(std::shared_ptr<FontDescriptor> font, std::wstring text) = 0;
};
} // namespace cru::platform
|