X-Git-Url: http://git.maemo.org/git/?p=simple-launcher;a=blobdiff_plain;f=misc%2FBasicItem.cc;h=ee6f817f897504bc634d3dc9e8d70f01fd8336bd;hp=f6ec384c33d0fea9c592df399686428943df36c2;hb=3b9a75073c3b5d98a57291cd4ec06a3f6eddfd30;hpb=4bc1647b536fa308093aae88d0d9a949fc7b78c0 diff --git a/misc/BasicItem.cc b/misc/BasicItem.cc index f6ec384..ee6f817 100644 --- a/misc/BasicItem.cc +++ b/misc/BasicItem.cc @@ -20,3 +20,22 @@ BasicItemFactory::BasicItemFactory() { registerFactory(factoryName(), this); } + +BasicItem *BasicItemFactory::create(const std::string& factoryName, const std::string& itemID) { + BasicItemFactory *factory = ourFactories.find(factoryName); + BasicItem *result = NULL; + + if (factory != NULL) { + result = factory->createItem(itemID); + + if (result != NULL) { + if (!result->load()) { + delete result; + + result = NULL; + } + } + } + + return result; +}