aboutsummaryrefslogtreecommitdiff
path: root/src/FontLoader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/FontLoader.cpp')
-rw-r--r--src/FontLoader.cpp52
1 files changed, 0 insertions, 52 deletions
diff --git a/src/FontLoader.cpp b/src/FontLoader.cpp
deleted file mode 100644
index ca33377..0000000
--- a/src/FontLoader.cpp
+++ /dev/null
@@ -1,52 +0,0 @@
-#include "../include/FontLoader.hpp"
-#include <SFML/Graphics/Font.hpp>
-#include <array>
-#include <assert.h>
-
-static std::array<std::unique_ptr<sf::Font>, 3> font_cache;
-
-namespace QuickMedia::FontLoader {
- sf::Font* get_font(FontType font_type) {
- sf::Font *font = font_cache[(size_t)font_type].get();
- if(!font) {
- auto new_font = std::make_unique<sf::Font>();
- std::vector<std::string> noto_directories;
- std::string font_file_name;
- switch(font_type) {
- case FontType::LATIN: {
- noto_directories.push_back("/usr/share/fonts/noto");
- noto_directories.push_back("/usr/share/fonts/truetype/noto");
- font_file_name = "NotoSans-Regular.ttf";
- break;
- }
- case FontType::LATIN_BOLD: {
- noto_directories.push_back("/usr/share/fonts/noto");
- noto_directories.push_back("/usr/share/fonts/truetype/noto");
- font_file_name = "NotoSans-Bold.ttf";
- break;
- }
- case FontType::CJK: {
- noto_directories.push_back("/usr/share/fonts/noto-cjk");
- noto_directories.push_back("/usr/share/fonts/truetype/noto-cjk");
- font_file_name = "NotoSansCJK-Regular.ttc";
- break;
- }
- case FontType::EMOJI: {
- noto_directories.push_back("/usr/share/fonts/noto");
- noto_directories.push_back("/usr/share/fonts/truetype/noto");
- font_file_name = "NotoColorEmoji.ttf";
- break;
- }
- }
-
- for(const std::string &noto_dir : noto_directories) {
- if(new_font->loadFromFile(noto_dir + "/" + font_file_name))
- break;
- }
-
- font_cache[(size_t)font_type] = std::move(new_font);
- font = font_cache[(size_t)font_type].get();
- }
- return font;
- }
-} \ No newline at end of file