<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">If you are writing any code that adds non-standard attributes to Atoms/Molecules/Residues/Bonds and you want those attributes preserved in sessions, you can now use the registerAttribute() function to do this.  I've appended more info below.
<div><br class="webkit-block-placeholder"></div><div>--Eric</div><br><br><div> <span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="5" style="font: 16.0px Helvetica"><span class="Apple-converted-space">                       <span class="Apple-converted-space"> </span></span>Eric Pettersen</font></p><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="5" style="font: 16.0px Helvetica"><span class="Apple-converted-space">                       <span class="Apple-converted-space"> </span></span>UCSF Computer Graphics Lab</font></p><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="5" style="font: 16.0px Helvetica"><span class="Apple-converted-space">                        </span><a href="http://www.cgl.ucsf.edu">http://www.cgl.ucsf.edu</a></font></p><br class="Apple-interchange-newline"></span> </div><p>Custom Molecular Attributes</p> <div>If you add non-standard attributes to Molecules/Residues/Bonds/Atoms that you want preserved in restored sessions, use SimpleSession's restoreAttribute() function, e.g,:</div> <div>  import chimera</div> <div>  from SimpleSession import registerAttribute</div> <div>  registerAttribute(chimera.Molecule, "qsarVal")</div> <div>Note that the Define Attribute tool automatically does this registration, so it's only attributes that you add directly from your own Python code that need to be registered as above. Also, only attributes whose values are recoverable from their repr() can be saved by this mechanism, so values that are C++ types (Atoms, MaterialColors, etc.) could not be preserved this way.</div></body></html>