1 | // LAF OS Library |
2 | // Copyright (c) 2019-2020 Igara Studio S.A. |
3 | // |
4 | // This file is released under the terms of the MIT license. |
5 | // Read LICENSE.txt for more information. |
6 | |
7 | #ifndef OS_FONT_STYLE_SET_H_INCLUDED |
8 | #define OS_FONT_STYLE_SET_H_INCLUDED |
9 | #pragma once |
10 | |
11 | #include "os/ref.h" |
12 | #include "os/typeface.h" |
13 | |
14 | namespace os { |
15 | |
16 | class FontStyle; |
17 | |
18 | class FontStyleSet : public RefCount { |
19 | protected: |
20 | virtual ~FontStyleSet() { } |
21 | public: |
22 | virtual int count() = 0; |
23 | virtual void getStyle(int index, |
24 | FontStyle& style, |
25 | std::string& name) = 0; |
26 | virtual Ref<Typeface> typeface(int index) = 0; |
27 | virtual Ref<Typeface> matchStyle(const FontStyle& style) = 0; |
28 | }; |
29 | |
30 | } // namespace os |
31 | |
32 | #endif |
33 | |