Hi Boris,

Boris Kheyfets wrote, On 10/23/12 19:28:
>[...]
> But I want bk_hides_W to be a toggler. So I need a way to set a state of
> my defun.
> If I do
>
> def bk_toggles_W ():
> "Hides W molecules."
>      if cmd.get("bk_toggles_W"):
>          cmd.hide("all")
>          cmd.show("spheres", "not (resn W)")
>          cmd.set("bk_toggles_W", 0)
>      else:
>          cmd.show("spheres", "resn W")
>          cmd.set("bk_toggles_W", 1)
>
> pymol is upset -- I think it is because it doesn't know bk_toggles_W
> setting:

If you need a global variable, use pymol.stored:

from pymol import stored
stored.bk_toggles_W = 0
def bk_toggles_W ():
      "Hides W molecules."
      if stored.bk_toggles_W:
          cmd.hide("all")
          cmd.show("spheres", "not (resn W)")
          stored.bk_toggles_W = 0
      else:
          cmd.show("spheres", "resn W")
          stored.bk_toggles_W = 1

Cheers,
   Thomas

-- 
Thomas Holder
MPI for Developmental Biology
Spemannstr. 35
D-72076 Tübingen

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net)
Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users
Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net

Reply via email to