X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fresources.cpp;h=8cdd0ad8f0b12066adf3b3dfeed9c2029ec304ee;hb=f0b600c3b1739f7e088da6ab8eb7c2e67adf592c;hp=11fc1fabe8a0a467ba82019337cc2d2851674e42;hpb=2b70e8801c43875ed3f4135bdd0141265cff0312;p=libs%2Fgltk.git diff --git a/source/resources.cpp b/source/resources.cpp index 11fc1fa..8cdd0ad 100644 --- a/source/resources.cpp +++ b/source/resources.cpp @@ -1,4 +1,3 @@ -#include #include #include "resources.h" @@ -7,61 +6,62 @@ using namespace std; namespace Msp { namespace GLtk { -Resources::Resources(): - path("."), - default_font(0) +Resources::Resources() { init(); } -Resources::Resources(const FS::Path &fn): - path(FS::dirname(fn)), - default_font(0) +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() { - add_keyword("graphic"); - add_keyword("texture"); - - add_creator(&Resources::create_font); - add_creator(&Resources::create_texture); + default_font = 0; + dir_src = 0; + add_type().keyword("graphic"); + add_type().keyword("texture").creator(&Resources::create_texture); + add_type().keyword("font"); + add_type