public virtual void GetObjectData(SerializationInfo info, StreamingContext context) {
PUtil.WriteBrush(brush, "brush", info);
// Serialize serializable members
Type pNodeType = this.GetType();
MemberInfo[] mi = FormatterServices.GetSerializableMembers(pNodeType, context);
for(int i = 0; i < mi.Length; i++) {
info.AddValue(mi[i].Name, ((FieldInfo)mi[i]).GetValue(this));
}
PStream.WriteConditionalObject(info, "parent", this.parent);
}
#endregion