-/* $Id$
-
-This file is part of libmspgltk
-Copyright © 2007 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
+#include <msp/core/maputils.h>
#include "logic.h"
using namespace std;
namespace GLtk {
Logic::Loader::Loader(Logic &l, const map<string, Widget *> &w):
- logic(l),
+ DataFile::ObjectLoader<Logic>(l),
widgets(w)
{
add("bind", &Loader::bind);
void Logic::Loader::bind(const string &wdg, const string &data)
{
- map<string, Widget *>::const_iterator i=widgets.find(wdg);
- if(i==widgets.end())
- throw KeyError("Unknown widget", wdg);
-
- string::size_type colon=data.find(':');
WidgetBinding act;
- act.wdg=i->second;
- act.type=data.substr(0, colon);
+ act.wdg = get_item(widgets, wdg);
+
+ string::size_type colon = data.find(':');
+ act.type = data.substr(0, colon);
if(colon!=string::npos)
- act.data=data.substr(colon+1);
- logic.bindings.push_back(act);
+ act.data = data.substr(colon+1);
+ obj.bindings.push_back(act);
}
} // namespace GLtk