当前位置: 首页>>代码示例>>C++>>正文


C++ config::add_child方法代码示例

本文整理汇总了C++中config::add_child方法的典型用法代码示例。如果您正苦于以下问题:C++ config::add_child方法的具体用法?C++ config::add_child怎么用?C++ config::add_child使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在config的用法示例。


在下文中一共展示了config::add_child方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1:

void team::team_info::write(config& cfg) const
{
	cfg["gold"] = gold;
	cfg["start_gold"] = start_gold;
	cfg["income"] = income;
	cfg["team_name"] = team_name;
	cfg["user_team_name"] = user_team_name;
	cfg["side_name"] = side_name;
	cfg["faction"] = faction;
	cfg["faction_name"] = faction_name;
	cfg["save_id"] = save_id;
	cfg["current_player"] = current_player;
	cfg["flag"] = flag;
	cfg["flag_icon"] = flag_icon;
	cfg["id"] = id;
	cfg["objectives"] = objectives;
	cfg["objectives_changed"] = objectives_changed;
	cfg["countdown_time"]= countdown_time;
	cfg["action_bonus_count"]= action_bonus_count;
	cfg["village_gold"] = income_per_village;
	cfg["village_support"] = support_per_village;
	cfg["recall_cost"] = recall_cost;
	cfg["disallow_observers"] = disallow_observers;
	cfg["allow_player"] = allow_player;
	cfg["chose_random"] = chose_random;
	cfg["no_leader"] = no_leader;
	cfg["defeat_condition"] = defeat_condition;
	cfg["hidden"] = hidden;
	cfg["suppress_end_turn_confirmation"] = no_turn_confirmation;
	cfg["scroll_to_leader"] = scroll_to_leader;
	cfg["controller"] = controller;
	cfg["recruit"] = utils::join(can_recruit);
	cfg["share_vision"] = share_vision;

	cfg["color"] = color;
	cfg["persistent"] = persistent;
	cfg["lost"] = lost;
	cfg["carryover_percentage"] = carryover_percentage;
	cfg["carryover_add"] = carryover_add;
	cfg["carryover_bonus"] = carryover_bonus;
	cfg["carryover_gold"] = carryover_gold;

	cfg.add_child("variables", variables);
	cfg.add_child("ai", ai::manager::to_config(side));
}
开发者ID:aquileia,项目名称:wesnoth,代码行数:45,代码来源:team.cpp

示例2: to_config

void wmi_container::to_config(config& cfg) const
{
	// Loop through our items.
	BOOST_FOREACH( const item_ptr & item, *this )
	{
		// Add this item as a child of cfg.
		item->to_config(cfg.add_child("menu_item"));
	}
}
开发者ID:ierton,项目名称:wesnoth,代码行数:9,代码来源:wmi_container.cpp

示例3: write

/**
 * Writes this into the provided config.
 */
void recruit_action::write(config & cfg) const
{
	undo_action::write(cfg);
	shroud_clearing_action::write(cfg);

	recruit_from.write(cfg.add_child("leader"));
	config & child = cfg.child("unit");
	child["type"] = u_type.base_id();
}
开发者ID:doofus-01,项目名称:wesnoth,代码行数:12,代码来源:undo_recruit_action.cpp

示例4: write_sourcespecs

void manager::write_sourcespecs(config& cfg) const
{
	for(positional_source_const_iterator i = sources_.begin(); i != sources_.end(); ++i) {
		assert(i->second);

		config& child = cfg.add_child("sound_source");
		child["id"] = i->first;
		i->second->write_config(child);
	}
}
开发者ID:Heark,项目名称:wesnoth,代码行数:10,代码来源:soundsource.cpp

示例5: utype_anim_replace_cfg_inernal

static void utype_anim_replace_cfg_inernal(const config& src, config& dst, const utils::string_map& symbols)
{
	BOOST_FOREACH (const config::any_child& c, src.all_children_range()) {
		config& adding = dst.add_child(c.key);
		BOOST_FOREACH (const config::attribute &i, c.cfg.attribute_range()) {
			adding[i.first] = utils::interpolate_variables_into_string(i.second, &symbols);
		}
		utype_anim_replace_cfg_inernal(c.cfg, adding, symbols);
	}
}
开发者ID:freeors,项目名称:War-Of-Kingdom,代码行数:10,代码来源:area_anim.cpp

示例6:

/**
 * Writes merged data to a config.
 * @param[out] out_cfg     The config that will receive the data.
 * @param[in]  child_name  If not empty, create and write to a child config with this tag.
 *                         This *will* be created even if there is no data to write.
 * @param[in]  fallback    If not nullptr, its data will be merged with ours for the write.
 */
void movetype::terrain_info::data::write(
	config & out_cfg, const std::string & child_name, const terrain_info * fallback) const
{
	// Get a place to write to.
	config & merged = child_name.empty() ? out_cfg : out_cfg.add_child(child_name);

	if ( fallback )
		fallback->write(merged, "", true);
	merged.merge_with(cfg_);
}
开发者ID:ArtBears,项目名称:wesnoth,代码行数:17,代码来源:movetype.cpp

示例7: write

/**
 * Writes to a config.
 */
void clearer_info::write(config & cfg) const
{
	// The key and tag names are intended to mirror those used by [unit]
	// (so a clearer_info can be constructed from a unit's config).
	cfg["underlying_id"] = underlying_id;
	cfg["vision"] = sight_range;
	if ( slowed )
		cfg.add_child("status")["slowed"] = true;
	costs.write(cfg, "vision_costs");
}
开发者ID:GregoryLundberg,项目名称:wesnoth,代码行数:13,代码来源:vision.cpp

示例8: write

void music_track::write(config &parent_node, bool append) const
{
	config& m = parent_node.add_child("music");
	m["name"] = id_;
	m["ms_before"] = ms_before_;
	m["ms_after"] = ms_after_;
	if(append) {
		m["append"] = true;
	}
}
开发者ID:8680-wesnoth,项目名称:wesnoth-fork-old,代码行数:10,代码来源:sound_music_track.cpp

示例9: install_addon

bool addons_client::install_addon(config& archive_cfg, const addon_info& info)
{
	const cursor::setter cursor_setter(cursor::WAIT);

	utils::string_map i18n_symbols;
	i18n_symbols["addon_title"] = info.title;

	if(!check_names_legal(archive_cfg)) {
		gui2::show_error_message(disp_.video(),
			vgettext("The add-on <i>$addon_title</i> has an invalid file or directory "
				"name and cannot be installed.", i18n_symbols));
		return false;
	}

	// Add local version information before unpacking

	config* maindir = &archive_cfg.find_child("dir", "name", info.id);
	if(!*maindir) {
		LOG_ADDONS << "downloaded add-on '" << info.id << "' is missing its directory in the archive; creating it\n";
		maindir = &archive_cfg.add_child("dir");
		(*maindir)["name"] = info.id;
	}

	LOG_ADDONS << "generating version info for add-on '" << info.id << "'\n";

	std::ostringstream info_contents;
	config wml;

	info_contents <<
		"#\n"
		"# File automatically generated by Wesnoth to keep track\n"
		"# of version information on installed add-ons. DO NOT EDIT!\n"
		"#\n";

	info.write_minimal(wml.add_child("info"));
	write(info_contents, wml);

	config file;
	file["name"] = "_info.cfg";
	file["contents"] = info_contents.str();

	maindir->add_child("file", file);

	LOG_ADDONS << "unpacking " << info.id << '\n';

	// Remove any previously installed versions
	if(!remove_local_addon(info.id)) {
		WRN_ADDONS << "failed to uninstall previous version of " << info.id << "; the add-on may not work properly!\n";
	}

	unarchive_addon(archive_cfg);
	LOG_ADDONS << "unpacking finished\n";

	return true;
}
开发者ID:ehsan,项目名称:wesnoth,代码行数:55,代码来源:client.cpp

示例10: save_hotkeys

void save_hotkeys(config& cfg)
{
	cfg.clear_children("hotkey");

	for (hotkey_ptr item : hotkeys_) {
		if ((!item->is_default() && item->active()) ||
			(item->is_default() && item->is_disabled())) {
			item->save(cfg.add_child("hotkey"));
		}
	}
}
开发者ID:doofus-01,项目名称:wesnoth,代码行数:11,代码来源:hotkey_item.cpp

示例11: write

void music_track::write(config &parent_node, bool append) const
{
    config& m = parent_node.add_child("music");
    m["name"] = id_;
    m["ms_before"] = ms_before_;
    m["ms_after"] = ms_after_;
    if(append) {
        m["append"] = true;
    }
    //default behaviour is to shuffle
    m["shuffle"] = shuffle_;
}
开发者ID:shikadilord,项目名称:wesnoth,代码行数:12,代码来源:sound_music_track.cpp

示例12: write

void team::write(config& cfg) const
{
	info_.write(cfg);
	cfg["auto_shroud"] = auto_shroud_updates_;
	cfg["shroud"] = uses_shroud();
	cfg["fog"] = uses_fog();
	cfg["gold"] = gold_;

	// Write village locations
	for(std::set<map_location>::const_iterator t = villages_.begin(); t != villages_.end(); ++t) {
		t->write(cfg.add_child("village"));
	}

	cfg["shroud_data"] = shroud_.write();
	cfg["fog_data"] = fog_.write();
	if ( !fog_clearer_.empty() )
		write_location_range(fog_clearer_, cfg.add_child("fog_override"));

	cfg["countdown_time"] = countdown_time_;
	cfg["action_bonus_count"] = action_bonus_count_;
}
开发者ID:aquileia,项目名称:wesnoth,代码行数:21,代码来源:team.cpp

示例13: write

void team::write(config& cfg) const
{
	info_.write(cfg);
	cfg["auto_shroud"] = auto_shroud_updates_;
	cfg["shroud"] = uses_shroud();
	cfg["fog"] = uses_fog();
	cfg["gold"] = gold_;

	// Write village locations
	for(const map_location& loc : villages_) {
		loc.write(cfg.add_child("village"));
	}

	cfg["shroud_data"] = shroud_.write();
	cfg["fog_data"] = fog_.write();
	if(!fog_clearer_.empty())
		write_location_range(fog_clearer_, cfg.add_child("fog_override"));

	cfg["countdown_time"] = countdown_time_;
	cfg["action_bonus_count"] = action_bonus_count_;
}
开发者ID:fluffbeast,项目名称:wesnoth-old,代码行数:21,代码来源:team.cpp

示例14: write_snapshot

void game_data::write_snapshot(config& cfg) const
{
	cfg["next_scenario"] = next_scenario_;

	cfg["can_end_turn"] = can_end_turn_;

	cfg["random_seed"] = rng_.get_random_seed_str();
	cfg["random_calls"] = rng_.get_random_calls();

	cfg.add_child("variables", variables_);

}
开发者ID:Martin9295,项目名称:wesnoth,代码行数:12,代码来源:game_data.cpp

示例15: to_config

void carryover::to_config(config& cfg){
	config& side = cfg.add_child("side");
	side["save_id"] = save_id_;
	side["gold"] = gold_;
	side["add"] = add_;
	side["current_player"] = current_player_;
	side["previous_recruits"] = get_recruits(false);
	side.add_child("variables", variables_);
	for(const config & u_cfg : recall_list_) {
		side.add_child("unit", u_cfg);
	}
}
开发者ID:GregoryLundberg,项目名称:wesnoth,代码行数:12,代码来源:carryover.cpp


注:本文中的config::add_child方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。