예제 #1
0
void VCProjectConfiguration::writeProperties(pugi::xml_node& proto) const
{
  // Insert nodes after the bookmark
  pugi::xml_node parent = proto.parent();
  pugi::xml_node prevSibling = proto;

  for (auto platform : m_platforms) {
    std::string configCond = getVSConfigurationPlatformCond(m_name, platform.first);
    pugi::xml_node configPropsGroup = parent.insert_copy_before(proto, prevSibling);
    configPropsGroup.append_attribute("Condition") = configCond.c_str();

    pugi::xml_node tempNode = proto.parent().append_child("Temp");
    writePropertiesMap(platform.second->getProperties(), tempNode);
    mergeNodes(configPropsGroup, tempNode);

    prevSibling = configPropsGroup;
  }
}
예제 #2
0
void VCProject::writeUserMacros(pugi::xml_node& node) const
{
  pugi::xml_node tempNode = node.parent().append_child("Temp");
  writePropertiesMap(m_userMacros, tempNode);
  mergeNodes(node, tempNode);
}
예제 #3
0
void VCProjectItem::writeDescription(pugi::xml_node& parent) const {
    pugi::xml_node item = parent.append_child(m_itemName.c_str());
    item.append_attribute("Include") = m_includePath.c_str();
    writePropertiesMap(m_definitions, item);
}