internal override void ToASCIIGnuStep(StringBuilder ascii, int level) { Indent(ascii, level); ascii.Append(ASCIIPropertyListParser.DICTIONARY_BEGIN_TOKEN); ascii.Append(NEWLINE); foreach (string key in Keys) { NSObject val = ObjectForKey(key); Indent(ascii, level + 1); ascii.Append("\""); ascii.Append(NSString.EscapeStringForASCII(key)); ascii.Append("\" ="); Type objClass = val.GetType(); if (objClass.Equals(typeof(NSDictionary)) || objClass.Equals(typeof(NSArray)) || objClass.Equals(typeof(NSData))) { ascii.Append(NEWLINE); val.ToASCIIGnuStep(ascii, level + 2); } else { ascii.Append(" "); val.ToASCIIGnuStep(ascii, 0); } ascii.Append(ASCIIPropertyListParser.DICTIONARY_ITEM_DELIMITER_TOKEN); ascii.Append(NEWLINE); } Indent(ascii, level); ascii.Append(ASCIIPropertyListParser.DICTIONARY_END_TOKEN); }