Пример #1
0
wmi_container::wmi_container(const wmi_container& container)
	: wml_menu_items_()
{
	clear_wmi();
	std::map<std::string, wml_menu_item*>::const_iterator itor;
	for (itor = container.wml_menu_items_.begin(); itor != container.wml_menu_items_.end(); ++itor) {
		wml_menu_item*& mref = wml_menu_items_[itor->first];
		mref = new wml_menu_item(*(itor->second));
	}
}
Пример #2
0
void wmi_container::set_menu_items(const config& cfg){
	clear_wmi();
	BOOST_FOREACH(const config &item, cfg.child_range("menu_item"))
	{
		if(!item.has_attribute("id")){ continue; }

		std::string id = item["id"];
		wml_menu_item*& mref = wml_menu_items_[id];
		if(mref == NULL) {
			mref = new wml_menu_item(id, &item);
		} else {
			WRN_NG << "duplicate menu item (" << id << ") while loading from config\n";
		}
	}
}
Пример #3
0
 ~wmi_container() {
     clear_wmi();
 }