private void NewProperty( XmlTextReader xml, Property prop ) { string name = xml.GetAttribute( "Name" ); string switchPrefixOverride = xml.GetAttribute( "SwitchPrefix" ); string separator = xml.GetAttribute( "Separator" ); string includeInCmdLine = xml.GetAttribute( "IncludeInCommandLine" ); string subType = xml.GetAttribute( "Subtype" ); // Just need at least a valid name if ( name != null ) { // Choose correct switch prefix string prefix = m_switchPrefix; if ( switchPrefixOverride != null ) { prefix = switchPrefixOverride; } if ( prefix == null ) { prefix = string.Empty; } // Separator for string, int and stringlist properties if ( separator == null ) { separator = string.Empty; } if ( includeInCmdLine != null ) { if ( includeInCmdLine.ToLower() == "false" ) { // Ignore the ones that aren't meant to be in the cmdline return; } } // Will quote fix for files or folder params bool shouldQuoteFix = false; if (subType != null) { if ((subType.ToLower() == "file") || (subType.ToLower() == "folder")) { shouldQuoteFix = true; } } prop.Setup(xml, prefix, separator, shouldQuoteFix ); m_properties.Add( name, prop ); } }