diff options
Diffstat (limited to 'src/example/loadfont.cpp')
-rw-r--r-- | src/example/loadfont.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/example/loadfont.cpp b/src/example/loadfont.cpp index ed67ffa..e459332 100644 --- a/src/example/loadfont.cpp +++ b/src/example/loadfont.cpp @@ -2,6 +2,7 @@ #include <crepe/api/Asset.h> #include <crepe/api/Text.h> #include <crepe/facade/Font.h> +#include <crepe/facade/FontFacade.h> #include <crepe/facade/SDLContext.h> #include <crepe/manager/Mediator.h> #include <crepe/manager/ResourceManager.h> @@ -14,24 +15,26 @@ int main() { // SDLFontContext font_facade; Mediator mediator; + FontFacade font_facade{}; SDLContext sdl_context{mediator}; // ComponentManager component_manager{mediator}; ResourceManager resource_manager{mediator}; try { // Correct way to create a unique pointer for Text std::unique_ptr<Text> label = std::make_unique<Text>( - 1, vec2(100, 100), vec2(0, 0), "OpenSymbol", Text::Data{}, "test text", Asset("")); + 1, vec2(100, 100), vec2(0, 0), "OpenSymbol", Text::Data{}, "test text"); // std::cout << "Path: " << label->font.get_path() << std::endl; - + Asset asset1 = font_facade.get_font_asset("OpenSymbol"); + std::cout << asset1.get_path() << std::endl; std::unique_ptr<Text> label2 = std::make_unique<Text>( 1, vec2(100, 100), vec2(0, 0), "fsaafdafsdafsdafsdasfdds", Text::Data{}); Asset asset = Asset("test test"); - label->font = asset; + label->font.emplace(asset); std::cout << label->font.value().get_path() << std::endl; // label2->font = std::make_optional(asset); // std::cout << "Path: " << label2->font.get_path() << std::endl; - // ResourceManager & resource_mgr = mediator.resource_manager; - // const Font & res = resource_manager.get<Font>(label->font); + ResourceManager & resource_mgr = mediator.resource_manager; + const Font & res = resource_manager.get<Font>(label->font.value()); // TTF_Font * test_font = res.get_font(); // if (test_font == NULL) { // std::cout << "error with font" << std::endl; |