1 2 3 4 5 6 7 8 9 10 11 12 13
use sdl2::ttf::{ Font, Sdl2TtfContext };
use common::FontDetails;
use managers::resource_manager::{ ResourceLoader, ResourceManager };
pub type FontManager<'l> = ResourceManager<'l, FontDetails, Font<'l, 'static>, Sdl2TtfContext>;
// Font Context knows how to load Fonts
impl<'l> ResourceLoader<'l, Font<'l, 'static>> for Sdl2TtfContext {
type Args = FontDetails;
fn load(&'l self, details: &FontDetails) -> Result<Font<'l, 'static>, String> {
self.load_font(&details.path, details.size)
}
}