X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fresources.cpp;h=e14934de03e89e94fe077452513a5ac542dcb07f;hb=cc966845eb995805e22d63600d8670328c4feae3;hp=3e0f851d701e3b961a38b564a1280507861f0d77;hpb=3d84860cb25cf05ed36ee6cbd07d9e58cee52422;p=libs%2Fgltk.git diff --git a/source/resources.cpp b/source/resources.cpp index 3e0f851..e14934d 100644 --- a/source/resources.cpp +++ b/source/resources.cpp @@ -6,15 +6,37 @@ using namespace std; namespace Msp { namespace GLtk { -Resources::Resources(): - default_font(0) +Resources::Resources() { + init(); +} + +Resources::Resources(const FS::Path &fn) +{ + init(); + + dir_src = new DataFile::DirectorySource; + dir_src->add_directory(FS::dirname(fn)); + add_source(*dir_src); + + DataFile::load(*this, fn.str()); +} + +void Resources::init() +{ + default_font = 0; + dir_src = 0; add_type().keyword("graphic"); - add_type().keyword("texture"); + add_type().keyword("texture").creator(&Resources::create_texture); add_type().keyword("font"); add_type