ó
©%�Tc           @   sÒ  d  d l  Z  d  d l Z d  d l Z y d  d l Z Wn d GHn Xd  d l Z d  d l Td a d g a e d „ Z d „  Z	 d „  Z
 d	 „  Z e d
 „ Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z  d „  Z! d  „  Z" d! „  Z# d" „  Z$ e e e e d# „ Z% d$ „  Z& d% „  Z' d& „  Z( d' „  Z) e d( „ Z* d) „  Z+ e d* „ Z, e d+ „ Z- d, „  Z. d- „  Z/ d. „  Z0 d/ „  Z1 d0 „  Z2 d1 „  Z3 d2 „  Z4 d3 „  Z5 d4 „  Z6 d d e d5 „ Z7 e a8 d6 „  Z9 d7 „  Z: d8 „  Z; d9 „  Z< d: „  Z= d; „  Z> d< „  Z? d= „  Z@ d> „  ZA d? d@ g dA dB g dC dD g dE dF g dG dH g dI dJ g dK dL g dM dN g dO dP g dQ dR g dS dT g dU dV g dW dX g dY dZ g d[ d\ g d] d^ g d_ d` g da db g dc dd g de df g g aB dg „  ZC eD dh ƒ \ ZE ZF ZG ZH ZI ZJ ZK ZL eL aM e aN e aO di „  ZP dj „  ZQ dk „  ZR dl „  ZS dm „  ZT dn „  ZU do „  ZV d  d lW ZW dp „  ZX e aY dq aZ dq dr „ Z[ ds „  Z\ dt e du „ Z] dv „  Z^ dw „  Z_ g  a` dx „  Za g  ab dy ac dz „  Zd d{ „  Ze d| „  Zf d} „  Zg d~ „  Zh d „  Zi d€ „  Zj d� „  Zk e al d‚ „  Zm dƒ „  Zn d„ „  Zo ep d… „ Zq ep d† „ Zr d‡ „  Zs et ƒ  d S(ˆ   iÿÿÿÿNs   WARNING:: no gobject available(   t   *i    t    c            s   d d  l  ‰	 d d  l ‰ d d  l } t r3 t ‰ n  ‡ ‡ f d †  } ‡ ‡ f d †  } ‡  f d †  ‰ ‡  f d †  ‰ ‡ ‡ f d †  ‰ ‡ ‡ f d †  ‰ ‡ ‡ f d †  ‰ ‡ ‡ ‡ f d	 †  ‰ ‡ ‡ ‡ f d
 †  } ‡ ‡ f d †  ‰
 ‡ ‡ ‡ ‡	 ‡
 ‡ f d †  } t j t j ƒ ‰ ˆ j d ƒ t j	 ƒ  ‰ ˆ j
 ƒ  ‰ t j ƒ  } t j ƒ  ‰  t j ƒ  } ˆ  j | ƒ t j t j ƒ } xJ t ƒ  D]? }	 |	 g d }
 |
 d t |
 ƒ !d k s‰| j |	 g ƒ q‰q‰W| j d t j ƒ | j | ƒ | j d ƒ t j d ƒ } t j t d ƒ } t j t d ƒ } t j d ƒ } t j j d ƒ } ˆ j  d d ƒ ˆ j! | ƒ | j" d ƒ | j# | t t d ƒ | j# ˆ  t t d ƒ | j# | t t d ƒ | j! ˆ ƒ | j! | ƒ | j$ t j% t j& ƒ | j' | t t d ƒ ˆ  j( d ƒ ˆ  j) t ƒ ˆ  j* d | ˆ  ƒ ˆ  j* d | ˆ  ˆ ˆ ƒ ˆ j* d | ƒ | j* d | ƒ ˆ j) t ƒ ˆ j+ t ƒ ˆ j* d | ƒ ˆ j, ƒ  } ˆ j- d d ƒ } ˆ j. | d | ƒ ˆ j/ t j0 t j j1 d ƒ ƒ ˆ j2 ƒ  ˆ rüt j3 ƒ  n  d  S(    Niÿÿÿÿc             s!   ˆ j  ƒ  ˆ  r t j ƒ  n  t S(   N(   t   destroyt   gtkt	   main_quitt   False(   t   args(   t   own_gtk_maint   window(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   delete_event:   s    
c            s”   | j  t j j t j j f k rH | j d ƒ ˆ ƒ  t j | j ƒ nH | j  t j j	 t j j
 f k r� | j d ƒ ˆ  ƒ  t j | j ƒ n  d  S(   Nt   key_press_event(   t   keyvalR   t   keysymst   KP_Upt   Upt   emit_stop_by_namet   gobjectt   idle_addt
   grab_focust   KP_Downt   Down(   t   widgett   eventt   entryt
   textbuffert   text(   t   historyDownt	   historyUp(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt	   hist_func@   s    !!c             s¢   t  d k rž ˆ  j ƒ  }  t |  ƒ d k rG |  d d k rG |  d }  n  t |  ƒ d k rv |  d d k rv |  d  }  n  |  t t  <t  d a  ˆ  j t t  ƒ n  d  S(   Ni    s   
i   iÿÿÿÿ(   t   histpost   get_textt   lent   historyt   set_text(   t   l(   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR   L   s    " " 

c             s¬   t  t t ƒ d k  r¨ ˆ  j ƒ  }  t |  ƒ d k rQ |  d d k rQ |  d }  n  t |  ƒ d k r€ |  d d k r€ |  d  }  n  |  t t  <t  d a  ˆ  j t t  ƒ n  d  S(   Ni   i    s   
iÿÿÿÿ(   R   R   R    R   R!   (   R"   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR   W   s    " " 

c             s3   ˆ j  ƒ  }  ˆ j |  ƒ ˆ  j ˆ j ƒ  ƒ t j S(   N(   t   get_end_itert   place_cursort   scroll_mark_onscreent
   get_insertR   t   FALSE(   t   end(   R   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   scroll_to_endb   s    c            s<   ˆ j  ƒ  } ˆ j | t |  ƒ ˆ j d d ƒ ƒ ˆ  ƒ  d  S(   Nt
   foregroundt   black(   R#   t   insert_with_tagst   strt
   create_tag(   t   sR(   (   R)   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   insert_normal_texth   s    %c            s0   ˆ j  ƒ  } ˆ j | t | ƒ |  ƒ ˆ  ƒ  d  S(   N(   R#   R,   R-   (   t   taggR/   R(   (   R)   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   insert_tag_textm   s    c             s!   ˆ j  ƒ  }  ˆ  d ƒ ˆ ƒ  d  S(   Ns   coot >> (   R#   (   R(   (   R0   R)   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   insert_promptr   s    
c            sn   | j  t j j @r d  Sˆ j d d d t j ƒ } ˆ | d ƒ ˆ  ƒ  x t j ƒ  re t j t	 ƒ qI Wd  Sd  S(   NR*   t   redt   weights.   Don't type here.  Type in the white entry bar
(
   t   stateR   t   gdkt   CONTROL_MASKR.   t   pangot   WEIGHT_BOLDt   events_pendingt   main_iterationR   (   R   R   t   tag1(   R3   R2   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   warning_eventw   s    c            s¼  ˆ j  |  d |  j  d ƒ !d ƒ d k s@ ˆ j  |  d ƒ d k r¯ˆ j ˆ j |  d ƒ d ƒ } ˆ j | ƒ } ˆ j | d d d ƒ } g  | d d +| } xœ e e | ƒ ƒ D]ˆ } y e | | ƒ | | <Wq¬ e k
 r3y e	 | | ƒ | | <Wq4e k
 r/y | | j
 d ƒ | | <Wq0d GHq0Xq4Xq¬ Xq¬ W| d	 } y e | ƒ } Wn* e k
 rw| e ƒ  Ud  } e Se SX| d  k	 r¸d
 G| GHˆ  e | ƒ d ƒ e Sn	 d GHe Sd  S(   Ni    t   (t   -t   )t   _i   t   "s&   BL WARNING:: unknown type of argument!s   (*arg)s   BL DEBUG:: result iss   
s   This is not a guile command!(   t   findt   rstript   lstript   splitt   replacet   rangeR   t   intt
   ValueErrort   floatt   stript   evalt   SyntaxErrort   localst   Nonet   TrueR   R-   (   t   py_funct   tmpt   tmp_listt   tmp_commandt   argt   it   python_functiont   res(   R0   t   string(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   test_and_translate_guile‡   s@    @
	c            sS  | j  ƒ  } d G| GH| d  k rA ˆ ˆ j d d ƒ | d ƒ n  x e j ƒ  r` e j e ƒ qD We } d  } y e | ƒ } e } WnÊe	 k
 r¾y¢ | j
 d ƒ } e | ƒ d k r| d j ƒ  e ƒ  k re e | d j ƒ  ƒ ƒ rd | d j ƒ  d	 } ˆ  | ƒ e } e } n | e ƒ  Ud  } e } WqPˆ | ƒ } | r_d
 GHˆ  d ƒ q»ˆ  d ƒ ˆ j ƒ  d  \ } }	 e |	 ƒ }
 ˆ  d ƒ ˆ  |
 d ƒ ˆ  e | ƒ d ƒ qPXn’ | d  k rGˆ | ƒ } | rìˆ  d ƒ qLˆ  d ƒ ˆ j ƒ  d  \ } }	 e |	 ƒ }
 ˆ  d ƒ ˆ  |
 d ƒ ˆ  e | ƒ d ƒ qPd GHn X| d  k	 r|d G| GHˆ  e | ƒ d ƒ n  | r| d } e | ƒ d k r»| d d k r»| d } n  e e ƒ d a e | ƒ d k rî| d  e t <n
 | e t <t d 7a e j d ƒ n  | j d ƒ d } ˆ ƒ  t rOˆ j j ƒ  ˆ j j ƒ  n  d  S(   Ns   BL INFO:: command input is: R*   R4   s   
t   =i   i    sC   BL WARNING:: you tried to assign a value to the
build-in function: s   !
This is not allowed!!
s#   BL INFO::  We have a guile command!s›   BL INFO:: Detected guile scripting!
             You should use python commands!!
             But I'm a nice guy and translated it for you, this time...!
se   BL WARNING:: Python syntax error!
             (Or you attempted to use an invalid guile command...)
i   s   Python error:
s�   BL INFO:: Detected guile scripting!
You should use python commands!!
But I'm a nice guy and translated it for you, this time...!
sQ   BL WARNING:: Python error!
(Or you attempted to use an invalid guile command...)
s   BL WARNING:: None inputs   BL INFO:: result isiÿÿÿÿR   (   R   RQ   R.   R   R;   R<   R   RR   RN   RO   RG   R   RM   t   globalst   callablet   exc_infoR-   R    R   t   appendR!   t
   have_mingwt   stderrt   flusht   stdout(   R   R   t
   entry_textt   hisRZ   t
   test_equalt   warning_textt   guile_functiont
   type_errort   error_valuet   errorR"   (   R0   R3   R2   t   sysR\   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   do_function³   sŠ    	

	




		
" 

s   Coot Python Scriptingi    iýÿÿÿt   _pys	     Close  s	   Command: t   fixedi�  iú   i   R   t   activateR
   R	   t   clickedR*   R+   s   coot >> s   #bfe6bf(4   Rn   R[   t   ret   coot_listener_socketRR   R   t   Windowt   WINDOW_TOPLEVELt	   set_titlet   TextViewt
   get_buffert   ScrolledWindowt   Entryt   EntryCompletiont   set_completiont	   ListStoreR   t   TYPE_STRINGR^   R   Ra   t   set_sort_column_idt   SORT_ASCENDINGt	   set_modelt   set_text_columnt   Buttont   VBoxR   t   HBoxt   LabelR7   t   Fontt   set_default_sizet   addt   set_border_widtht
   pack_startt
   set_policyt   POLICY_AUTOMATICt   POLICY_ALWAYSt   pack_endR!   t   set_editablet   connectt   set_cursor_visibleR#   R.   R,   t   modify_baset   STATE_NORMALt   color_parset   show_allt   main(   R   Rt   R	   R   R>   Ro   t   scrolled_wint
   completiont	   liststoreRX   RT   t   close_buttont   vboxt   hboxt   labelt   ifontR(   t   tag(    (   R   R   R   R0   R3   R2   R   R)   R[   Rn   R\   R   R   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   coot_gui1   s|    	,\
c         C   s)   |  j  ƒ  } | j  ƒ  } t | | ƒ d  S(   N(   R   t   new_molecule_by_smiles_string(   t	   tlc_entryt   smiles_entryt   tlc_textt   smiles_text(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   handle_smiles_goL  s    c          C   sF   d „  }  t  ƒ  r |  ƒ  n& t t d d ƒ r8 |  ƒ  n
 t d ƒ d  S(   Nc             s  ‡ f d †  ‰  ‡  f d †  }  d „  } t  j t  j ƒ ‰ ˆ j d ƒ t  j t d ƒ } t  j t d ƒ } t  j t d ƒ } t  j d ƒ } t  j d d ƒ } | j	 d	 ƒ t  j d
 ƒ } t  j ƒ  } t
 ƒ  rà t  j d ƒ }	 n t  j d ƒ }	 t  j d ƒ }
 | j | t t d ƒ | j | t t d ƒ | j |	 t t d ƒ | j |
 t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ ˆ j | ƒ | j d ƒ | j d | | | ˆ ƒ |
 j d |  | | ˆ ƒ ˆ j d ˆ  ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   t   smiles_window(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   W  s    
c            s"   t  | | ƒ | j ƒ  ˆ  ƒ  d  S(   N(   R©   R   (   R   R¥   R¦   Rª   (   R	   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   go_button_pressed[  s    
c         S   s-   | j  d k r) t | | ƒ | j ƒ  n  d  S(   Niÿ  (   R   R©   R   (   R   R   R¥   R¦   Rª   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   smiles_connect`  s    s
   SMILES GUIi    s     3-letter code t   maxi   R   s   SMILES string s-     [SMILES interface works by using Pyrogen]  s5     [SMILES interface works by using CCP4's LIBCHECK]  s     Go  i   i   i   s   key-press-eventRs   R	   (   R   Rv   Rw   Rx   R†   R   R‡   Rˆ   R|   R!   t   enhanced_ligand_coot_pR…   R�   RR   R‹   RŒ   R“   R˜   (   R«   R¬   Rž   t   hbox1t   hbox2t	   tlc_labelR¥   t   smiles_labelR¦   R   t	   go_button(    (   R	   Rª   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   smiles_gui_internalV  s>    		t   CCP4_BINt   PATHs5   You need to setup CCP4 (specifically LIBCHECK) first.(   R®   t   find_exet   libcheck_exet   info_dialog(   R´   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt
   smiles_guiT  s    	1	

c            så  ‡ f d †  ‰  ‡  ‡ f d †  } ‡  ‡ f d †  } t  j t  j ƒ ‰ t  j t d ƒ } t  j t d ƒ } t  j t d ƒ } t  j t d ƒ }	 t  j |  ƒ }  t  j ƒ  }
 t  j d ƒ } t  j | ƒ } | j	 | t t d ƒ | j	 | t t d ƒ | j	 |	 t t d ƒ |	 j	 | t
 t
 d ƒ |	 j	 | t
 t
 d ƒ | j	 |  t t d ƒ | j	 |
 t
 t
 d ƒ ˆ j | ƒ | j d ƒ t | t j ƒ rœ|
 j | ƒ n d GH| j d	 ˆ  ƒ | j d	 | |
 ƒ |
 j d
 | |
 ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   ˜  s    
c            s   ˆ | j  ƒ  ƒ ˆ  ƒ  d  S(   N(   R   (   R   R¦   R   (   R	   t   handle_go_function(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   go_function_eventœ  s    c            s-   | j  d k r) ˆ | j ƒ  ƒ ˆ  ƒ  n  d  S(   Niÿ  (   R   R   (   R   R   R¦   R   (   R	   R»   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR
      s    i    s
     Cancel  i   i   s1   BL WARNING:: entry_1_default_text was no string!!Rs   R
   (   R   Rv   Rw   R†   R   R‡   Rˆ   R|   R…   R�   RR   R‹   RŒ   t
   isinstancet   typest   StringTypesR!   R“   R˜   (   t   function_labelt   entry_1_default_textt   go_button_labelR»   R¼   R
   Rž   R¯   R°   t   hbox3R¦   t   cancel_buttonR³   (    (   R	   R»   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_single_entry–  s8    c	            só  ‡ f d †  ‰ ‡ ‡ ‡ ‡ ‡ f d †  }	 ‡ ‡ f d †  }
 t  j t  j ƒ ‰ t  j t d ƒ } t  j t d ƒ } t  j t d ƒ } t  j t d ƒ } t  j |  ƒ } t  j ƒ  ‰ t  j | ƒ } t  j ƒ  ‰ t  j ƒ  } t  j	 d ƒ } t  j	 | ƒ } | j
 | t t d ƒ | j
 | t t d ƒ | j
 | t t d ƒ | j
 | t t d ƒ | j
 | t t d ƒ | j
 ˆ t t d ƒ | j
 | t t d ƒ | j
 ˆ t t d ƒ t | ƒ t k r‡  ‡ f d †  } t  j | ƒ ‰  | j
 ˆ  t t d ƒ ˆ  j d	 | ƒ ˆ  ‰ n t ‰ | j
 | t t d
 ƒ | j
 | t t d ƒ ˆ j | ƒ | j d ƒ t | t j ƒ rvˆ j | ƒ n d GHt | t j ƒ r�ˆ j | ƒ n d GH| j d |	 ƒ | j d ˆ ƒ ˆ j d |
 ˆ ˆ ˆ ƒ ˆ j ƒ  | rïˆ Sd  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   Ù  s    
c             sO   ˆ  r+ ˆ ˆ j  ƒ  ˆ j  ƒ  ˆ  j ƒ  ƒ n ˆ ˆ j  ƒ  ˆ j  ƒ  ƒ ˆ ƒ  d  S(   N(   R   t
   get_active(   R   (   t   check_buttonR	   R»   R¦   R¥   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   Ý  s    %c            sa   | j  d k r] | r: ˆ | j ƒ  | j ƒ  | j ƒ  ƒ n ˆ | j ƒ  | j ƒ  ƒ ˆ  ƒ  n  d  S(   Niÿ  (   R   R   RÆ   (   R   R   R¥   R¦   RÇ   (   R	   R»   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR
   ä  s
    %i    s
     Cancel  i   c             s   ˆ  j  ƒ  } ˆ | ƒ d  S(   N(   RÆ   (   R   t   active_state(   t   c_buttont   handle_check_button_function(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   check_callback  s    i   t   toggledi   s1   BL WARNING:: entry_1_default_text was no string!!s1   BL WARNING:: entry_2_default_text was no string!!Rs   s   key-press-event(   R   Rv   Rw   R†   R   R‡   Rˆ   R|   t
   HSeparatorR…   R�   RR   t   typet
   StringTypet   CheckButtonR“   R‹   RŒ   R½   R¾   R¿   R!   R˜   (   t   label_1t   label_2RÁ   t   entry_2_default_textt   check_button_labelRÊ   RÂ   R»   t   return_widgetR¼   R
   Rž   R¯   R°   RÃ   R±   R²   t   h_sepRÄ   R³   RË   (    (   RÉ   RÇ   R	   RÊ   R»   R¦   R¥   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_double_entryÓ  s\    	
c            sž  ‡ f d †  ‰ ‡ ‡ ‡ ‡ f d †  } t  j t  j ƒ ‰ t  j t d ƒ } t  j t d ƒ } t  j ƒ  } t  j d ƒ } t  j | ƒ }	 g  ‰ xº |  D]² }
 |
 d } |
 d } t  j t d ƒ } t  j | ƒ } t  j	 ƒ  } ˆ j
 | ƒ t | ƒ t k r
| j | ƒ n  | j | t d ƒ | j | t d ƒ | j | t t d ƒ q” Wd Gˆ GHt |  ƒ t k ott ˆ ƒ d k s…d GHt ‰ np t ˆ d ƒ t k rï‡  ‡ f d	 †  } t  j ˆ d ƒ ‰  | j ˆ  t t d ƒ ˆ  j d
 | ƒ ˆ  ‰ n t ‰ d Gˆ GH| j | t t d ƒ | j | t t d ƒ ˆ j | ƒ | j d ƒ | j |	 t t d ƒ | j | t t d ƒ | j d ˆ ƒ |	 j d | ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   :  s    
c             sR   d Gˆ  GHˆ  r1 ˆ t  d „  ˆ ƒ ˆ  j ƒ  ƒ n ˆ t  d „  ˆ ƒ ƒ ˆ ƒ  d  S(   Ns'   Here.................. check-button is c         S   s
   |  j  ƒ  S(   N(   R   (   R   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   <lambda>A  s    c         S   s
   |  j  ƒ  S(   N(   R   (   R   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   C  s    (   t   mapRÆ   (   R   (   RÇ   R	   t   entriesR»   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   >  s
    	"i    s
     Cancel  i   s   debug:: check-button-info: i   s-   check_button_info failed list and length testc             s   ˆ  j  ƒ  } | ˆ d <d  S(   Ni   (   RÆ   (   R   RÈ   (   RÉ   t   check_button_info(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRË   h  s    RÌ   s=   Here check button creation.................. check-button is i   i   Rs   (   R   Rv   Rw   R†   R   R‡   RÍ   R…   Rˆ   R|   Ra   RÎ   RÏ   R!   R�   t   ListTypeR   RÐ   R“   RR   R‹   RŒ   R˜   (   t   entry_info_listRÛ   RÂ   R»   R¼   Rž   RÃ   RÖ   RÄ   R³   t
   entry_infot   entry_1_hint_textRÁ   R¯   R    R   RË   (    (   RÉ   RÇ   RÛ   R	   RÚ   R»   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt*   generic_multiple_entries_with_check_button8  sT    

	$			c             sõ   ‡  f d †  }  d „  } t  j t  j ƒ ‰  t  j d ƒ } t  j t d ƒ } ˆ  j | ƒ | j | ƒ | j d ƒ xr t ƒ  D]g } t	 | ƒ r| t
 | ƒ } t | ƒ d | } t  j | ƒ } | j d | | | ƒ | j | ƒ q| q| Wˆ  j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   …  s    
c         S   s(   d | } t  | ƒ t t | ƒ Œ  d  S(   Ns   Centred on (   t   add_status_bar_textt   set_rotation_centret   molecule_centre(   R   t   molecule_numberR    R/   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   callback_func‰  s    

s   Molecule Centresi   i   t    Rs   (   R   Rv   Rw   t   FrameR†   R   R‹   RŒ   t   molecule_number_listt   is_valid_model_moleculet   molecule_nameR-   R…   R“   R˜   (   R	   Rå   t   frameRž   Rä   t   nameR    t   button(    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   molecule_centres_guiƒ  s     	
c         C   sN   t  |  d ƒ } | j ƒ  } x" | D] } d | k r" d GHq" q" W| j ƒ  d  S(   Nt   rs   WARNING: no such keyword :FILEsL   BL WARNING:: libcheck didn't seem to run ok! Please check output carefully!!(   t   opent	   readlinest   close(   t   logfile_namet   fpt   linest   line(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   check_libcheck_logfileµ  s    c          C   s“   d d  l  }  d d  l } d } t |  j  ƒ  ƒ } | | } | d k r� | d k r[ d } n' | j d d ƒ d k r| d } n d } t | ƒ n  d  S(   Niÿÿÿÿið- Pi    i˜!  s.   You've got an Old Coot!

It's time to upgrade.i
   s5   (Nothing says "patriotism" like an Ireland shirt...)
(   t   timet   randomRJ   t   randintR¹   (   Rø   Rù   t   new_release_timet   current_timet	   time_diffR/   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   old_coot_qmÃ  s    
		c         C   s   t  |  | ƒ d  S(   N(   t!   interesting_things_with_fix_maybe(   t   titlet   baddie_list(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   interesting_things_guiï  s    c            sí  d „  } d „  } ‡  f d †  } d „  } d „  } t  j t  j ƒ ‰  t  j ƒ  } t  j t d ƒ } t  j t d ƒ }	 ˆ  j d d ƒ ˆ  j |  ƒ |	 j d	 ƒ ˆ  j	 | ƒ | j	 | ƒ | j
 |	 ƒ | j t  j t  j ƒ x¤| D]œ}
 |
 d
 k rý d GHqã t  j t d ƒ } |
 d } t  j | ƒ } |	 j | t t d ƒ | j | t t d ƒ | |
 ƒ \ } } } | rÉ| r~| } n d } t  j | ƒ } | j | t t d ƒ | j ƒ  | j d | | ƒ n  | rt  j d k rî| j | ƒ qt j | | ƒ n  t |
 ƒ d	 k rD|
 d |
 d |
 d g } | j d | | ƒ qã |
 d } |
 d |
 d |
 d g } | j d | | | ƒ qã W| j d	 ƒ t  j d ƒ } | j | t t d ƒ | j d | ƒ ˆ  j d | ƒ ˆ  j ƒ  t  j ƒ  d  S(   Nc         S   sÆ  t  |  ƒ } | d k  r% t t t f S|  | d } |  | d } |  | d } t | t j ƒ r¦ t  | ƒ d k r¦ | d } t | ƒ r– | t t f St t t f Snt | t j ƒ rt  | ƒ d k rt | t j ƒ r| d } | } t | ƒ r| | t f St t t f Sn­ t | t j ƒ rµt  | ƒ d k rµt | t j ƒ rµt | t j ƒ rµ| d } | } | } t | ƒ rŒ| | | f S| d k r¥t t | f St t t f Sn t t t f Sd  S(   Ni   i   i   i   i    t   dummy(   R   R   R½   R¾   RÜ   R_   RÏ   (   t   baddieR"   t   func_maybe1t   func_maybe2t   func_maybe3t   func_maybe_stript   button_namet   tooltip_str(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   baddie_had_fix_qm  s<    $
$
$
c         S   s+   | d } | d t  | ƒ !} | | Œ  d  S(   Ni    i   (   R   (   R   t	   call_funcR  t	   func_args(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   fix_func_call1  s    
c             s   ˆ  j  ƒ  t j ƒ  t S(   N(   R   R   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   6  s    

c         S   s   t  | Œ  d  S(   N(   Râ   (   R   t   coords(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   callback_func1;  s    c         S   s¡   d | d | d | d f GHt  | ƒ t | Œ  } | d k r� t | d ƒ } t | d | d | ƒ } | d k r� d G| GHt | d | d d ƒ q� n  d  S(   Ns2   Attempt to go to chain: %s resno: %s atom-name: %si    i   i   s$   Failed to centre on demangled name: s    CA (   t   set_go_to_atom_moleculet&   set_go_to_atom_chain_residue_atom_namet   unmangle_hydrogen_name(   R   t   mol_not	   atom_infot   successt   new_namet   success2(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   callback_func2>  s    
	i   i    iú   i   R   t   Donei   s     Fix  Rs   i   i   i   s     OK  i   R   (   i   i   (   R   Rv   Rw   R{   R†   R   RŠ   Rx   RŒ   R‹   t   add_with_viewportRŽ   R�   R�   R‡   R…   R�   RR   R‘   t   showR“   t   pygtk_versiont   set_tooltip_textt   coot_tooltipst   set_tipR   R˜   R™   (   R   R  R  R  R	   R  R  Rš   t   outside_vboxt   inside_vboxt   baddie_itemsRŸ   R    Rí   t   fix_funcR	  R
  t   fix_button_namet
   fix_buttonR  R  R  t	   ok_button(    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRÿ   ú  sd    	0			
	


c         C   s¡   g  } t  ƒ  } x‹ t ƒ  D]€ } | | ƒ r t | ƒ } t | t j ƒ r‡ t | ƒ d | } |  j | ƒ |  j d ƒ | j	 | ƒ q™ d t
 | f GHq q W| S(   NRæ   i    s(   OOps molecule name for molecule %s is %s(   t   graphics_n_moleculesRè   Rê   R½   R¾   R¿   R-   t   append_textt
   set_activeRa   t	   mol_no_ls(   t   menut   filter_functiont   mol_lst   n_moleculesR  t	   label_strt
   mlabel_str(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt!   fill_option_menu_with_mol_options�  s    	c         C   s   t  |  t ƒ S(   N(   R2  t   valid_map_molecule_qm(   R,  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt%   fill_option_menu_with_map_mol_options°  s    c         C   s   t  |  t ƒ S(   N(   R2  t   valid_model_molecule_qm(   R,  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt-   fill_option_menu_with_coordinates_mol_options»  s    c         C   sf   x_ | D]W } t  | ƒ } |  j | ƒ | | k r | j | ƒ } |  j | ƒ d G| G| GHq q Wd  S(   Ns   setting menu active (   R-   R)  t   indexR*  (   R,  t   number_listt   default_option_valuet   numberR1  t   count(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt$   fill_option_menu_with_number_options¿  s    c         C   s’   |  j  ƒ  } |  j ƒ  } t | ƒ } | t | ƒ k r} y4 | | d } | j d d ƒ \ } } t | ƒ SWqŽ d GHt SXn d G| G| GHt Sd  S(   Ni    Ræ   i   s    INFO:: could not get active_items   Failed children length test : (   t	   get_modelRÆ   R   RG   RJ   R   (   t   option_menut   model_mol_listt   modelt   active_itemt   childrent	   all_modelt
   imol_modelt   junk(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_option_menu_active_moleculeÐ  s    c         C   s‰   |  j  ƒ  } |  j ƒ  } d } x | D] } | d 7} q% W| t | ƒ k rt y | | d } | SWq… d GHt SXn d G| G| GHt Sd  S(   Ni    i   s    INFO:: could not get active_items   Failed children length test : (   R=  RÆ   R   R   (   R>  t	   item_listR@  RA  RB  RX   RC  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_option_menu_active_itemç  s    c   
         sƒ  ‡ f d †  ‰ ‡  ‡ ‡ ‡ f d †  } t  j t  j ƒ ‰ t  j |  ƒ } t  j t d ƒ } t  j t d ƒ } t  j ƒ  ‰ t  j d ƒ } t  j d ƒ } t  j	 ƒ  }	 | ˆ ƒ ‰ ˆ j
 d d ƒ ˆ j | ƒ | j | t t d ƒ | j ˆ t t d	 ƒ | j |	 t t d
 ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j d | ˆ ˆ ƒ | j d ˆ ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	      s    
c             sf   t  ˆ ˆ ƒ } yD t | ƒ } d G| GHy ˆ  | ƒ Wn d Gˆ  j GHn Xˆ ƒ  Wn d GHn Xd  S(   Ns#   INFO: operating on molecule number s&   BL INFO:: problem in callback_functions!   Failed to get a (molecule) number(   RF  RJ   t	   func_name(   R   t   active_mol_no(   t   callback_functionR	   R?  R>  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   on_ok_clicked  s    	i   i   s     OK  s    Cancel ir  id   i    i   Rs   (   R   Rv   Rw   Rˆ   R†   R   R‡   t   combo_box_new_textR…   RÍ   RŠ   R‹   R�   RR   R“   R˜   (
   t   chooser_labelRK  t   option_menu_fill_functionRL  R    Rž   t   hbox_buttonsR'  RÄ   RÖ   (    (   RK  R	   R?  R>  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   molecule_chooser_gui_genericþ  s,    c         C   s   t  |  | t ƒ d  S(   N(   RQ  R6  (   RN  RK  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   molecule_chooser_gui6  s    c         C   s   t  |  | t ƒ d  S(   N(   RQ  R4  (   RN  RK  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   map_molecule_chooser_guiD  s    c            s  d d  l  } ‡ f d †  ‰ ‡  ‡ ‡ ‡ ‡ f d †  } t j t j ƒ ‰ t j |  ƒ } t j t d ƒ } t j t d ƒ } t j ƒ  ‰ t j | ƒ }	 t j t	 d ƒ }
 t j
 ƒ  ‰ t j d ƒ } t j d ƒ } t j ƒ  } t ˆ ƒ ‰ ˆ j d d	 ƒ ˆ j | ƒ | j | t t d
 ƒ | j ˆ t	 t	 d ƒ | j | t t d
 ƒ | j | t	 t d ƒ | j |
 t t d
 ƒ |
 j | t	 t d
 ƒ |
 j | t t d
 ƒ | j |	 t t d ƒ | j ˆ t	 t	 d ƒ ˆ j | ƒ | j d | ˆ ˆ ˆ  ƒ | j d ˆ ƒ ˆ j ƒ  d  S(   Niÿÿÿÿc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   Q  s    
c             s[   t  ˆ ˆ ƒ } y9 t | ƒ } d G| GHˆ j ƒ  } ˆ  | | ƒ ˆ ƒ  Wn d GHn Xd  S(   Ns#   INFO: operating on molecule number s!   Failed to get a (molecule) number(   RF  RJ   R   (   R   RJ  R   (   RK  R	   R   R?  R>  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   on_ok_button_clickedU  s    	i   i    s     OK  s    Cancel i�  id   i   i   Rs   (   t   operatorR   Rv   Rw   Rˆ   R†   R   R‡   R|   RR   RM  R…   RÍ   R6  RŠ   R‹   R�   R!   R“   R˜   (   RN  t   entry_hint_textt   default_entry_textRK  RU  RT  R    Rž   t   hbox_for_entryt   entry_labelRP  R'  RÄ   RÖ   (    (   RK  R	   R   R?  R>  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_chooser_and_entryM  s<    c            s&  d d  l  } ‡ f d †  ‰ ‡  ‡ ‡ ‡ ‡ ‡ f d †  } t j t j ƒ ‰ t j |  ƒ } t j t d ƒ }	 t j t d ƒ }
 t j ƒ  ‰ t j | ƒ } t j t	 d ƒ } t j
 ƒ  ‰ t j d ƒ } t j d ƒ } t j ƒ  } t ˆ | ƒ ‰ ˆ j d d	 ƒ ˆ j |	 ƒ |	 j | t t d
 ƒ |	 j ˆ t	 t	 d ƒ |	 j |
 t t d
 ƒ | j | t	 t d
 ƒ | j | t t d
 ƒ |
 j | t t d ƒ |
 j ˆ t	 t	 d ƒ ˆ j | ƒ t |	 | ƒ ‰ |	 j | t	 t d ƒ |	 j | t t d
 ƒ | j d | ˆ ˆ ˆ  ƒ | j d ˆ ƒ ˆ j ƒ  d  S(   Niÿÿÿÿc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   “  s    
c             sa   t  ˆ ˆ ƒ } y? t | ƒ } ˆ j ƒ  } ˆ j ƒ  } ˆ  | | | ƒ ˆ ƒ  Wn d GHn Xd  S(   Ns!   Failed to get a (molecule) number(   RF  RJ   R   (   R   RJ  R   t   file_sel_text(   RK  R	   R   t   file_sel_entryR?  R>  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRT  —  s    i   i    s     OK  s    Cancel i�  id   i   i   Rs   (   RU  R   Rv   Rw   Rˆ   R†   R   R‡   R|   RR   RM  R…   RÍ   R2  RŠ   R‹   R�   R!   t   file_selector_entryR“   R˜   (   RN  t   chooser_filterRV  RW  t   file_selector_hintRK  RU  RT  R    Rž   RX  RY  RP  R'  RÄ   RÖ   (    (   RK  R	   R   R\  R?  R>  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt'   generic_chooser_entry_and_file_selectorŠ  s>    c            s¹  d d  l  } ‡ f d †  ‰ ‡  ‡ ‡ ‡ ‡ f d †  } t j t j ƒ ‰ t j |  ƒ } t j t d ƒ } t j t d ƒ }	 t j t d ƒ }
 t j	 ƒ  ‰ t j
 d ƒ } t j
 d ƒ } t j ƒ  } t ˆ | ƒ ‰ ˆ j d d	 ƒ ˆ j | ƒ | j | t t d
 ƒ | j ˆ t t d ƒ |
 j | t t d
 ƒ |
 j | t t d
 ƒ t | | | ƒ ‰ | j | t t d ƒ | j |
 t t d
 ƒ | j d | ˆ ˆ  ƒ | j d ˆ ƒ ˆ j ƒ  d  S(   Niÿÿÿÿc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   ×  s    
c             sR   t  ˆ ˆ ƒ } y0 t | ƒ } ˆ j ƒ  } ˆ  | | ƒ ˆ ƒ  Wn d GHn Xd  S(   Ns!   Failed to get a (molecule) number(   RF  RJ   R   (   R   RJ  R[  (   RK  R	   R\  R?  R>  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRT  Û  s    i   i    s     OK  s    Cancel i�  id   i   Rs   (   RU  R   Rv   Rw   Rˆ   R†   R   R‡   RR   RM  R…   RÍ   R2  RŠ   R‹   R�   R]  R“   R˜   (   RN  R^  R_  t   default_file_nameRK  RU  RT  R    Rž   RX  RP  R'  RÄ   RÖ   (    (   RK  R	   R\  R?  R>  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt!   generic_chooser_and_file_selectorÏ  s6    	c            sÍ   yº d d  l  } | j ƒ  ‰  ‡  f d †  } t } x9 | ƒ  D]. } |  j d ƒ | k r: | d j ƒ  } q: q: W| rv | St j ƒ  } t j |  ƒ } | j | ƒ ˆ  j	 | ƒ | j
 ƒ  | SWn d GHn Xd  S(   Niÿÿÿÿc             s^   g  }  xQ ˆ  j  ƒ  D]C } g  } | j | j  ƒ  d j ƒ  ƒ | j | ƒ |  j | ƒ q W|  S(   Ni    (   t   get_childrenRa   R   (   t	   ac_lab_lst
   menu_childt   lab(   t   coot_main_menubar(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   menu_bar_label_list  s    RB   i   sv   BL WARNING:: could not import coot_python module!!

                    Some things, esp. extensions, may be crippled!(   t   coot_pythont   main_menubarR   RF   t   get_submenuR   t   Menut   MenuItemt   set_submenuRa   R  (   t
   menu_labelRi  Rh  t
   found_menut   fR,  t   menuitem(    (   Rg  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   coot_menubar_menu  s$    
c         C   sF   t  j ƒ  } t  j | ƒ } |  j | ƒ | j ƒ  | j d | ƒ d  S(   NRr   (   R   Rl  Rm  Ra   R  R“   (   R,  t   menu_item_labelt   activate_functiont   submenut   sub_menuitem(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_simple_coot_menu_menuitem5  s
    
c         C   s   t  |  d t |  ƒ ƒ d  S(   Ns   Residues with Alt Confs(   t   interesting_residues_guit   residues_with_alt_confs(   t   imol(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   alt_confs_guiC  s    	c         C   s   t  |  d t |  ƒ ƒ d  S(   Ns   Residues with missing atoms(   Ry  t   missing_atom_info(   R{  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   missing_atoms_guiJ  s    	c         C   sP   t  |  ƒ } | r" t d | ƒ n* d } | d 7} | t |  ƒ 7} t | ƒ d  S(   Ns"   Residues with zero occupancy atomss#   No atoms with zero occupancy found
s   in molecule (   t   atoms_with_zero_occR  R-   R¹   (   R{  t   atom_lsR/   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   zero_occ_atoms_guiQ  s    

c            s¦   d d l  m } g  } t ˆ  ƒ r™ | } xI | D]A } t | ƒ | k r` | j t ˆ  | Œ ƒ q/ | j t g ƒ q/ Wt | t ‡  f d †  | | ƒ ƒ n	 d Gˆ  GHd  S(   Niÿÿÿÿ(   RÜ   c            s†   | rm |  d d t  |  d ƒ d |  d d | d d | d ˆ  |  d |  d |  d | d | d g Sd d d d d d d g S(   Ni    Ræ   i   i   s   [oops - why did this happen?](   R-   (   t   residue_cpmdt   centre_atom(   R{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   o  s    ms   BL WARNING:: no valid molecule(	   R¾   RÜ   R5  RÎ   Ra   t   residue_spec2atom_for_centreR   R  RÙ   (   R{  R   t   interesting_residuesRÜ   t   centre_atomst   residuest   spec(    (   R{  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRy  a  s    c            s€  d d  l  ‰  y d d  l } Wn d GHt SX| j ƒ  } t } x* t ƒ  D] }	 |  |	 k rH |	 d } qH qH W| rz | }
 n¾ | rœ t j ƒ  }
 |
 j |  ƒ n t j d d  d |  ƒ }
 | j
 |
 d ƒ |
 j t ƒ | r	t j d k rö |
 j | ƒ q	t j |
 | ƒ n  ‡  ‡ f d †  } |
 j d	 | | ƒ |
 j ƒ  | r|y |
 j | ƒ Wq|y |
 j | ƒ Wqyd
 GHqyXq|Xn  |
 S(   Niÿÿÿÿs[   BL WARNING:: could not import coot_python module!!
      So we cannot make toolbar_buttons!i   t   icon_widgetR    i   i   c            s–   t  | ƒ ˆ  j k r" t | ƒ np g  } | } t  | ƒ ˆ  j k rZ | d } | d } n  ˆ rp | j |  ƒ n  t | ƒ r‰ | | Œ  n	 d G| GHd  S(   Ni    i   s+   BL ERROR:: cannot evaluate or call function(   RÎ   RÏ   RN   RÜ   Ra   R_   (   R   RK  R   t   function(   R¾   t
   use_button(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt
   cb_wrapper½  s    
Rs   s<   BL INFO::  icon name/widget given but could not add the icon(   i   i   (   R¾   Ri  R   t   main_toolbart   toolbar_label_listR   t   ToggleToolButtont	   set_labelt
   ToolButtonRQ   t   insertt   set_is_importantRR   R  R  R  R   R“   R  t   set_stock_idt   set_icon_widget(   t   button_labelt   cb_functiont	   icon_namet   tooltipt   toggle_buttonR‹  Ri  t   coot_main_toolbart   found_buttonRq  t
   toolbuttonRŒ  (    (   R¾   R‹  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   coot_toolbar_button�  sH    		
c          C   s•   y d d  l  }  Wn t SX|  j ƒ  } g  } xa | j ƒ  D]S } g  } y | j ƒ  } Wn q: X| j | j ƒ  ƒ | j | ƒ | j | ƒ q: W| S(   Niÿÿÿÿ(   Ri  R   R�  Rc  t	   get_labelRa   (   Ri  R›  t   button_label_lst   toolbar_childt   lsR    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRŽ  å  s     c            s‡  ‡  f d †  } t  j t  j ƒ ‰  t  j ƒ  } t  j t d ƒ } t  j t d ƒ } ˆ  j d d ƒ ˆ  j |  ƒ | j d ƒ ˆ  j	 | ƒ | j	 | ƒ | j
 | ƒ | j t  j t  j ƒ x| | D]t } | r¿ t | ƒ d k r¿ | d } | d } t  j | ƒ }	 | j |	 t t d ƒ |	 j d | ƒ |	 j ƒ  q¿ q¿ W| j d ƒ t  j d ƒ }
 | j |
 t t d	 ƒ |
 j d | ƒ ˆ  j ƒ  d  S(
   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	     s    
i   i    iú   i   i   Rs   s     OK  i   (   R   Rv   Rw   R{   R†   R   RŠ   Rx   RŒ   R‹   R  RŽ   R�   R�   R   R…   R�   R“   R  R˜   (   t   dialog_namet   button_listR	   Rš   R!  R"  t   button_itemR–  t   actionRí   R'  (    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_button_dialog  s2    

c         C   sŠ   t  |  ƒ r} t |  | ƒ } x( t t | ƒ ƒ D] } |  | | d <q. Wt t | ƒ } | r† t | t d „  | | ƒ ƒ q† n	 d G|  GHd  S(   Ni    c         S   sb   |  d d |  d d t  |  d ƒ d |  d d | d d | d g |  d t |  ƒ !| S(   Ni    Ræ   i   i   i   (   R-   R   (   t   interesting_residueRƒ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   9  s    s%   BL WARNING:: no valid model molecule (   R5  t   residues_matching_criteriaRI   R   RÙ   t   residue_specR  (   R{  t   gui_title_stringt   residue_test_funcR…  RX   R†  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_interesting_things/  s     	c            sº  ‡ f d †  ‰  ‡  ‡ ‡ ‡ f d †  } t  j t  j ƒ ‰ t  j t d ƒ } t  j t d ƒ } t  j t d ƒ } t  j | ƒ }	 t  j ƒ  }
 t  j	 | ƒ } t  j	 d ƒ } t  j
 ƒ  ‰ t ˆ ˆ | ƒ | j | t t d ƒ | j |	 t d ƒ | j ˆ t d ƒ | j |
 ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ ˆ j | ƒ | j d ƒ | j d ƒ | j d ƒ | j d | ˆ ˆ ˆ ƒ | j d ˆ  ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   L  s    
c             s=   t  t ˆ ˆ ƒ ƒ } y ˆ | ƒ Wn d GHn Xˆ  ƒ  d  S(   Ns   Failed to get execute function(   RJ   RH  (   R   t   active_number(   R	   t   go_functionR8  R>  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR«   P  s    	i    s
     Cancel  i   Rs   (   R   Rv   Rw   R†   R   R‡   RR   Rˆ   RÍ   R…   RM  R<  R�   R‹   RŒ   R“   R˜   (   R8  R9  t	   hint_textRÂ   R¯  R«   Rž   R¯   R°   RÀ   RÖ   R³   RÄ   (    (   R	   R¯  R8  R>  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_number_chooserI  s4    c   	      C   sæ   t  j t d ƒ } t  j ƒ  } t  j | ƒ } t  j | ƒ } | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j d | | ƒ | r§ | j	 | ƒ n  | j
 ƒ  | j
 ƒ  | j
 ƒ  | j
 ƒ  |  j | t t ƒ | S(   Ni    i   Rs   (   R   R‡   R   R|   R…   Rˆ   R�   RR   R“   R!   R  (	   Rž   R°  R–  t   button_press_funcRf   RŸ   R   Rí   R    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   entry_do_button~  s     



c         C   si   t  j ƒ  } t  j ƒ  } t  j | ƒ } t | ƒ } |  j | t t d ƒ |  j | t t d ƒ | | g S(   Ni   (   R   Rl  RM  Rˆ   R6  R�   R   RR   (   RŸ   R°  R,  R>  R    R?  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_molecule_chooser˜  s    c            s�   t  ƒ  d k s t j d k  r{ t j t d ƒ } ‡  f d †  } t | | d | | ƒ ‰  |  j | t t d ƒ | j ƒ  ˆ  St |  | | ƒ Sd  S(   Ni    i   i   iZ   c             s^   ‡ ‡  f d †  } t  j d ƒ ‰  ˆ  j j d | ƒ ˆ  j j d ‡  f d †  ƒ ˆ  j ƒ  d  S(   Nc             s,   ˆ j  ƒ  } | GHˆ  j | ƒ ˆ j ƒ  d  S(   N(   t   get_filenameR!   R   (   R   t   t(   R   t	   fs_window(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   file_ok_sel®  s    s   file selectionRs   c            s
   ˆ  j  ƒ  S(   N(   R   (   t   w(   R·  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ·  s    (   R   t   FileSelectionR'  R“   RÄ   R  (   R   R¸  (   R   (   R·  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt
   file_func1­  s    s     File...  (   i   i   iZ   (	   t   file_chooser_selector_stateR   R  R†   R   R³  R�   R  t   file_chooser_entry(   RŸ   R°  Ra  Rž   R»  (    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR]  §  s    		
c            sy   t  j d k rl t  j t d ƒ } ‡  f d †  } t | | d | | ƒ ‰  |  j | t t d ƒ | j ƒ  ˆ  Sd GHt Sd  S(	   Ni   i   iZ   i    c             s�   ‡ ‡  f d †  } t  j d d  t  j t  j t  j t  j t  j f ƒ ‰  ˆ  j ƒ  } | t  j k rp | ˆ  ˆ ƒ n | t  j k rŒ ˆ  j	 ƒ  n  d  S(   Nc             s,   ˆ j  ƒ  } | GHˆ  j | ƒ ˆ j ƒ  d  S(   N(   Rµ  R!   R   (   R   R¶  (   R   t	   fc_window(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¸  Ð  s    s   file selection(
   R   t   FileChooserDialogRQ   t   FILE_CHOOSER_ACTION_OPENt   STOCK_CANCELt   RESPONSE_CANCELt
   STOCK_OPENt   RESPONSE_OKt   runR   (   R   R¸  t   response(   R   (   R¾  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR»  Ï  s    	s     File...  s1   PyGtk 2.3.90 or later required for this function!(   i   i   iZ   (   R   R  R†   R   R³  R�   R  (   RŸ   R°  Ra  Rž   R»  (    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR½  É  s    
c           C   s&   t  t d d ƒ d d d d „  ƒ d  S(   Ni   i   i   s'    Estimated number of residues in strands     Go  c         S   s   t  |  d ƒ S(   Ni   (   t   place_strand_here(   t   n(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ò  s    (   R±  R8  (    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   place_strand_here_guií  s    c            sæ  ‡ f d †  } ‡ ‡ f d †  } d „  ‰  ‡  f d †  } t  ƒ  ‰ ˆ d k r] t ƒ  d GHn  t j t j ƒ ‰ t j t d ƒ } t j t d ƒ } t j ƒ  } t j t	 d ƒ } t j
 d ƒ } t j
 d	 ƒ }	 t |  ƒ }
 |
 sd
 t |  ƒ } | GHt | ƒ nß x4 |
 D], } | | ƒ } | j | d t t d ƒ q
W| j | t t d ƒ | j | t t d ƒ | j | t	 t d ƒ | j | t	 t d ƒ | j |	 t	 t d ƒ |	 j d | ƒ | j d | |  ƒ ˆ j | ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   ø  s    
c   
         sÉ   d GHd GHt  | ƒ } | r¶ | d } | d } | d } | d } | d } | d } t ˆ  | | | | | | g ƒ } d	 G| GH| d k rÅ d
 d d }	 ˆ j ƒ  t |	 ƒ qÅ n d GHˆ j ƒ  d  S(   Ns   apply the sequence info here
s   then cootaneer
i    i   i   i   i   i   s   Cootaneering status:s4   Insufficiently confident in alignment to make a fit.s   
s2   Perhaps you could improve or extend this fragment.s!   BL WARNING:: no close atom found!(   t   closest_atomt	   cootaneerR   R¹   (
   R   R{  t   n_atomt   chain_idt   resnot   inscodet   at_namet   alt_conft   cootaneer_resultsR/   (   t   imol_mapR   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   ü  s(    





	
c         S   s<   |  j  ƒ  } |  j d d d d d ƒ|  j | | d ƒ d  S(   NR¢   R*   R+   t
   backgrounds   #c0e6c0(   t   get_start_iterR.   t   insert_with_tags_by_name(   t   text_boxt   descriptiont   start(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_text_to_text_box  s    c            s  t  j ƒ  } t  j t d ƒ } t  j ƒ  } t  j ƒ  } | j t  j ƒ | j ƒ  } t  j	 d ƒ } t  j	 d ƒ } | j
 | ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ ˆ  | |  d ƒ | j |  d ƒ | | | g S(   Ni   s   Chain IDt   Sequencei   i   i    (   R   Rç   R†   R   R|   Ry   t   set_wrap_modet   WRAP_WORD_CHARRz   Rˆ   R‹   R�   R!   (   t   seq_infoRë   Rž   R   t   textviewR×  t   chain_id_labelt   sequence_label(   RÚ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   entry_text_pair_frame$  s     iÿÿÿÿs0   BL DEBUG:: probably should wait here for input!?i   s     Cootaneer!  s
     Cancel  s)   No sequence assigned for molecule number i    i   Rs   (   t   imol_refinement_mapt   show_select_map_dialogR   Rv   Rw   R†   R   RÍ   R‡   RR   R…   t   sequence_infoR-   R¹   R�   R“   R‹   R˜   (   R{  R	   R¼   Râ  R!  R"  RÖ   t   buttons_hboxR³   RÄ   t   seq_info_lsR/   RÞ  t   seq_widgets(    (   RÚ  RÓ  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   cootaneer_guiö  s@     		c             s5   d „  }  d „  ‰  t  d |  ƒ  d ‡  f d †  ƒ d  S(   Nc          S   s¾   d }  x± |  s |  d k r¹ d } |  d k rD | d t  |  ƒ } n  d } xi | s_ | d k rµ t | ƒ } | t ƒ  k r~ | S| t k rŽ | S| | k r¨ |  d 7}  PqM | d 7} qM Wq	 W| S(   Ni    t   ViewR@   i   (   R-   t	   view_namet   n_viewsR   (   t
   view_countt   strrt   jviewt
   jview_name(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   local_view_namee  s"      
c         S   s   t  |  ƒ } t |  | ƒ d  S(   N(   t   add_view_heret   add_view_to_views_panel(   R   t   new_view_number(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_view_local_funcx  s    s   View Name: s
    Add View c            s
   ˆ  |  ƒ S(   N(    (   R   (   Rõ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   |  s    (   RÅ   (   Rñ  (    (   Rõ  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   view_saver_guic  s    		c            sU   t  rQ t j |  ƒ } | j d ‡  f d †  ƒ t  j | t t d ƒ | j ƒ  n  d  S(   NRs   c            s   t  ˆ  d ƒ S(   Ni    (   t   go_to_view_number(   t   func(   t   view_number(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ‚  s    i   (   t   views_dialog_vboxR   R…   R“   R�   R   R  (   Rë  Rù  Rí   (    (   Rù  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRó  ~  s
    c         C   s   t  |  | | | t t t ƒ S(   N(   t'   dialog_box_of_buttons_with_check_buttonR   (   t   window_namet   geometryt   buttonst   close_button_label(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   dialog_box_of_buttonsˆ  s    	c            sÌ  d „  } t  j t  j ƒ ‰ t  j ƒ  } t  j t d ƒ }	 t  j ƒ  }
 t  j t d ƒ ‰ ˆ j | d | d ƒ ˆ j |  ƒ ˆ j	 d ƒ ˆ j
 |	 ƒ | rt  j | ƒ ‰  ˆ ˆ  ˆ ƒ ˆ  j d ‡  ‡ ‡ f d †  ƒ | rí ˆ  j t ƒ n  |	 j ˆ  t t d ƒ n  |	 j | t t d ƒ | j ˆ ƒ | j t  j t  j ƒ x | D] } t | ˆ ƒ qFW|	 j	 d ƒ |	 j |
 t t d ƒ t  j | ƒ } |	 j | t t d ƒ | j d ‡ f d †  ƒ ˆ j ƒ  ˆ S(	   Nc         S   sH   |  j  ƒ  } | j ƒ  } | j d d d d d ƒ| j | | d ƒ d  S(   NR¢   R*   R+   RÔ  s   #c0e6c0(   Rz   RÕ  R.   RÖ  (   R×  RØ  R   RÙ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_text_to_text_widget¢  s
    i   i    i   RÌ   c            s   ˆ ˆ  ˆ ƒ S(   N(    (   Rø  (   RÇ   t   check_button_funcR"  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   º  s    Rs   c            s
   ˆ  j  ƒ  S(   N(   R   (   R¹  (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   Ë  s    (   R   Rv   Rw   R{   R†   R   RÍ   RŠ   Rx   RŒ   R‹   RÐ   R“   R*  RR   R�   R  RŽ   R�   R�   t&   add_button_info_to_box_of_buttons_vboxR…   R‘   R˜   (   Rü  Rý  Rþ  Rÿ  RÔ   R  t!   check_button_is_initially_on_flagR  Rš   R!  RÖ   t   button_infoR'  (    (   RÇ   R  R"  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRû  ›  s:    	
c   
      C   se  d „  } |  d } | d k r@ t  |  ƒ d k r@ t j ƒ  } n|  d } t  |  ƒ d k re t } n
 |  d } t j | ƒ } t | ƒ t k r¯ d „  } | j d | | ƒ nA t | ƒ t k rà d „  } | j d | | ƒ n | j d | ƒ | rAt j	 ƒ  } | j
 t ƒ | j ƒ  }	 | |	 | ƒ | j | t t d ƒ n  | j | t t d ƒ | j ƒ  d  S(	   Nc         S   s<   |  j  ƒ  } |  j d d d d d ƒ|  j | | d ƒ d  S(   NR¢   R*   R+   RÔ  s   #c0e6c0(   RÕ  R.   RÖ  (   t   text_bufferRØ  RÙ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_text_to_text_bufferÖ  s    i    t   HSepi   i   c         S   s   t  | ƒ d  S(   N(   RN   (   Rí   t   call(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRå   ê  s    Rs   c         S   s   x | D] } t  | ƒ q Wd  S(   N(   RN   (   Rí   R	  t   item(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRå   î  s    (   R   R   RÍ   R   R…   RÎ   RÏ   R“   RÜ   Ry   R’   Rz   R�   R  (
   R  Rž   R  R–  Rí   t   callbackRØ  Rå   t	   text_viewt   buff(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR  Ô  s0    	

	
		c            s  t  j t  j ƒ ‰  t  j ƒ  } t  j t d ƒ } t  j t d ƒ } ˆ  j | d | d ƒ ˆ  j | ƒ | j d ƒ ˆ  j	 | ƒ | j
 | t t d ƒ | j | ƒ | j t  j t  j ƒ x| D]ý } t | ƒ t k rÁ | d d }	 | d d }
 | d d } | d d } t  j |	 ƒ } t  j t d ƒ } d „  } | j d | |
 ƒ | j
 | t t d ƒ | r¥t  j | ƒ } | j d | | ƒ | j
 | t t d ƒ n  | j
 | t t d ƒ qÁ qÁ W| j d ƒ t  j | ƒ } | j | t t d ƒ | j d ‡  f d †  ƒ ˆ  j ƒ  d  S(   Ni   i    i   c         S   s   t  | ƒ d  S(   N(   RN   (   Rí   R	  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRå   &  s    Rs   c            s
   ˆ  j  ƒ  S(   N(   R   (   R¹  (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   4  s    (   R   Rv   Rw   R{   R†   R   RŠ   Rx   RŒ   R‹   R�   RR   R  RŽ   R�   R�   RÎ   RÜ   R…   R‡   R“   R‘   R˜   (   R{  Rü  Rý  Rþ  Rÿ  Rš   R!  R"  R  t   button_label_1t
   callback_1t   button_label_2t
   callback_2t   button_1t   h_boxRå   t   button_2R'  (    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   dialog_box_of_pairs_of_buttons  s@    	c            s�  d „  } t  j t  j ƒ ‰  t  j ƒ  } t  j t d ƒ } t  j t d ƒ } t  j ƒ  }	 ˆ  j | d | d ƒ ˆ  j |  ƒ | j	 d ƒ ˆ  j
 | ƒ | j | t t d ƒ | j | ƒ | j t  j t  j ƒ x9| D]1}
 |
 d } |
 d } t |
 ƒ d k rt } n
 |
 d } t  j | ƒ } t | ƒ t k rUd „  } | j d | | ƒ nA t | ƒ t k r†d „  } | j d | | ƒ n | j d | ƒ t | ƒ t k rñt  j ƒ  } | j t ƒ | | | ƒ | j | t t d ƒ | j ƒ  n  | j | t t d ƒ qÖ W| j |	 t t d ƒ | j | t t d ƒ | j	 d ƒ t  j | ƒ } | j | t t d ƒ | j d ‡  f d †  ƒ ˆ  j ƒ  d  S(	   Nc         S   sH   |  j  ƒ  } | j ƒ  } | j d d d d d ƒ| j | | d ƒ d  S(   NR¢   R*   R+   RÔ  s   #c0e6c0(   Rz   RÕ  R.   RÖ  (   R×  RØ  R   RÙ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR  =  s
    i   i    i   c         S   s   t  | ƒ d  S(   N(   RN   (   Rí   R	  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRå   ^  s    Rs   c         S   s   x | D] } t  | ƒ q Wd  S(   N(   RN   (   Rí   R	  R
  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRå   b  s    c            s
   ˆ  j  ƒ  S(   N(   R   (   R¹  (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   {  s    (   R   Rv   Rw   R{   R†   R   RÍ   RŠ   Rx   RŒ   R‹   R�   RR   R  RŽ   R�   R�   R   R…   RÎ   RÏ   R“   RÜ   Ry   R’   t   realizeR‘   R˜   (   Rü  Rý  Rþ  t   extra_widgetRÿ  R  Rš   R!  R"  RÖ   R  R–  R  RØ  Rí   Rå   R×  R'  (    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt!   dialog_box_of_buttons_with_widget9  sR    	

	
		c            s]  ‡ ‡ f d †  } ‡  ‡ f d †  }	 t  j t  j ƒ ‰ t  j ƒ  }
 t  j t d ƒ } t  j t d ƒ } t  j t d ƒ } ˆ j | d | d ƒ ˆ j |  ƒ | j	 d ƒ ˆ j
 | ƒ | j |
 t t d ƒ |
 j | ƒ |
 j t  j t  j ƒ d  } g  } x˜ | D]� } | d } | d } t  j | | ƒ } t | ƒ t k r`d „  } | j d | | ƒ n | j d | ƒ | j | t t d ƒ | j | ƒ qW| j	 d ƒ t  j | ƒ } | j | t t d ƒ | j | t t d ƒ | j d	 | | ƒ | r0t  j | ƒ } | j | t t d ƒ | j d	 |	 ƒ n  | | j t ƒ | | j ƒ  ˆ j ƒ  d  S(
   Nc            s   t  ˆ  ƒ ˆ j ƒ  t S(   N(   RN   R   R   (   R   t	   button_ls(   t   go_button_functionR   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   �  s    

c            s!   ˆ  r t  ˆ  ƒ n  ˆ j ƒ  t S(   N(   RN   R   R   (   R   (   t   cancel_functionR   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   cancel_function_cb•  s    
i   i    i   c         S   s   t  | ƒ d  S(   N(   RN   (   Rí   R	  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRå   ´  s    RÌ   i   Rs   (   R   Rv   Rw   R{   R†   R   R‡   RŠ   Rx   RŒ   R‹   R�   RR   R  RŽ   R�   R�   RQ   t   RadioButtonRÎ   RÏ   R“   Ra   R…   R*  RÌ   R˜   (   Rü  Rý  Rþ  RÂ   R  t   selected_buttont   cancel_button_labelR  R¼   R  Rš   R!  R"  t   button_hboxRí   R  R  R–  R  Rå   R³   RÄ   (    (   R  R  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   dialog_box_of_radiobuttonsŠ  sL    

	c             sÊ   t  ƒ  }  g  } xP t |  ƒ D]B } t | ƒ } t | ƒ } | j | d t | ƒ d | g ƒ q Wt | ƒ d k r¥ d „  ‰  d ‡  f d †  g } | j d | ƒ n  t d d	 d
 g | d ƒ } | a	 d  S(   Ns   go_to_view_number(s   ,0)i   c          S   s.   d d  l  }  t d ƒ |  j d ƒ t ƒ  d  S(   Niÿÿÿÿi   (   Rø   t   go_to_first_viewt   sleept
   play_views(   Rø   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   view_button_funcß  s    
s     Play Views c            s   ˆ  ƒ  S(   N(    (   Rø  (   R%  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ä  s    i    t   ViewsiÈ   iŒ   s	     Close  (
   Rì  RI   Rë  t   view_descriptionRa   R-   R   R’  R   Rú  (   t   number_of_viewsRþ  t   button_numberR–  t
   desciptiont   view_buttont
   views_vbox(    (   R%  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   views_panel_guiÒ  s    	(	c             s¤   d ‰ ‡ f d †  ‰  d ‡  f d †  g d ‡  f d †  g d ‡  f d †  g d	 ‡  f d
 †  g d ‡  f d †  g d ‡  f d †  g g }  t  d d d g |  d ƒ d  S(   Ng{®Gáz”?c            sg   ˆ  t  ƒ  } t ƒ  } | d k r5 | |  c | 7<n$ | d k rT | |  c | 8<n d GHt | Œ  d  S(   Ni    i   s$   BL WARNING:: something went wrong!!!(   t   zoom_factort   rotation_centreRâ   (   t   axist   operandt   nudget   rc(   t   zsc(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   nudge_screen_funcô  s    	s   Nudge +Xc            s   ˆ  d d ƒ S(   Ni    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   	  s    s   Nudge -Xc            s   ˆ  d d ƒ S(   Ni    i   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   	  s    s   Nudge +Yc            s   ˆ  d d ƒ S(   Ni   i    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   	  s    s   Nudge -Yc            s   ˆ  d d ƒ S(   Ni   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   	  s    s   Nudge +Zc            s   ˆ  d d ƒ S(   Ni   i    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   	  s    s   Nudge -Zc            s   ˆ  d d ƒ S(   Ni   i   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   	  s    s   Nudge Screen CentreiÈ   ið   s     Close (   R   (   Rþ  (    (   R5  R4  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   nudge_screen_centre_paule_guiï  s    c             s¤   d ‰ ‡ f d †  ‰  d ‡  f d †  g d ‡  f d †  g d ‡  f d †  g d	 ‡  f d
 †  g d ‡  f d †  g d ‡  f d †  g g }  t  d d d g |  d ƒ d  S(   Ng{®Gáz”?c            s²   ˆ  t  ƒ  } t ƒ  } t ƒ  } g  } x/ t |  |  d d ƒ D] } | j | | ƒ q< W| d k r{ t d „  | | ƒ } n) | d k rŸ t d „  | | ƒ } n d GHt | Œ  d  S(   Ni   i   i    c         S   s   |  | S(   N(    (   t   xt   y(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   	  s    i   c         S   s   |  | S(   N(    (   R7  R8  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ    	  s    s$   BL WARNING:: something went wrong!!!(   R.  R/  t   view_matrix_transpRI   Ra   RÙ   Râ   (   R0  R1  t   nudge_factorR3  t   matt   nudge_vectorRX   (   R4  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR5  	  s    		s   Nudge +Xc            s   ˆ  d d ƒ S(   Ni    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   '	  s    s   Nudge -Xc            s   ˆ  d d ƒ S(   Ni    i   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   (	  s    s   Nudge +Yc            s   ˆ  d d ƒ S(   Ni   i    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   )	  s    s   Nudge -Yc            s   ˆ  d d ƒ S(   Ni   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   *	  s    s   Nudge +Zc            s   ˆ  d d ƒ S(   Ni   i    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   +	  s    s   Nudge -Zc            s   ˆ  d d ƒ S(   Ni   i   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ,	  s    s   Nudge Screen CentreiÈ   ið   s     Close (   R   (   Rþ  (    (   R5  R4  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   nudge_screen_centre_gui	  s    c    
         s"  d ‰ ‡ f d †  ‰ d ‡ f d †  g d ‡ f d †  g d ‡ f d †  g d	 ‡ f d
 †  g d ‡ f d †  g d ‡ f d †  g g }  t  j t d ƒ } ‡  f d †  } ‡ f d †  } t  j d ƒ } t  j d d d d d d ƒ ‰  t  j ˆ  ƒ } | j | t t d ƒ | j | t t d ƒ | j ƒ  | j ƒ  ˆ  j d | ƒ t  j	 ƒ  } | j | t t d ƒ t
 ƒ  } t  j d ƒ } t  j | | d | d d d | ƒ ‰ t  j ˆ ƒ }	 | j | t t d ƒ | j |	 t t d ƒ | j ƒ  |	 j ƒ  ˆ j d | ƒ t d  d! d" g |  | d# ƒ d  S($   Ng{®Gáz”?c            s²   ˆ  t  ƒ  } t ƒ  } t ƒ  } g  } x/ t |  |  d d ƒ D] } | j | | ƒ q< W| d k r{ t d „  | | ƒ } n) | d k rŸ t d „  | | ƒ } n d GHt | Œ  d  S(   Ni   i   i    c         S   s   |  | S(   N(    (   R7  R8  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   @	  s    i   c         S   s   |  | S(   N(    (   R7  R8  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   B	  s    s$   BL WARNING:: something went wrong!!!(   R.  R/  R9  RI   Ra   RÙ   Râ   (   R0  R1  R:  R3  R;  R<  RX   (   R4  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR5  8	  s    		s   Nudge +Xc            s   ˆ  d d ƒ S(   Ni    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   I	  s    s   Nudge -Xc            s   ˆ  d d ƒ S(   Ni    i   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   J	  s    s   Nudge +Yc            s   ˆ  d d ƒ S(   Ni   i    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   K	  s    s   Nudge -Yc            s   ˆ  d d ƒ S(   Ni   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   L	  s    s   Nudge +Zc            s   ˆ  d d ƒ S(   Ni   i    (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   M	  s    s   Nudge -Zc            s   ˆ  d d ƒ S(   Ni   i   (    (   Rø  (   R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   N	  s    i    c             s   t  ˆ  j ƒ t ˆ  j ƒ d  S(   N(   t   set_clipping_frontt   valuet   set_clipping_back(   R   (   t	   clipp_adj(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   change_clippT	  s    c             s   t  ˆ  j ƒ t ƒ  d  S(   N(   t   set_zoomR?  t   graphics_draw(   R   (   t   zoom_adj(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   change_zoomX	  s    t   Clippingg        g      $Àg      4@gš™™™™™©?g      @g333333$@t   value_changedi   t   Zoomg      À?i   g{®Gáz„?g      à?s   Nudge Screen Centre with ExtrasiÈ   i�  s     Close (   R   R†   R   Rˆ   t
   Adjustmentt   HScaleR�   R  R“   RÍ   R.  R  (
   Rþ  Rž   RB  RF  t   clipp_labelt   clipp_scaleRÖ   t   zoomt
   zoom_labelt
   zoom_scale(    (   RA  R5  RE  R4  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   nudge_screen_centre_extra_gui2	  s@    

	&

c             sg  ‡ f d †  ‰  ‡  ‡ ‡ ‡ ‡ ‡ f d †  }  t  j t  j ƒ ‰ t  j t d ƒ } t  j ƒ  } t  j d ƒ } t  j d ƒ } t  j d ƒ } t  j t d ƒ } t  j t d ƒ } t  j	 ƒ  ‰ t  j	 ƒ  ‰ t  j d ƒ } t  j
 ƒ  ‰ t  j d	 ƒ }	 t  j d
 ƒ }
 t ˆ ƒ ‰ t ˆ ƒ ‰ ˆ j | ƒ | j | t t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j | t t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j | t t d ƒ | j | t t d ƒ | j |	 t t d ƒ | j |
 t t d ƒ ˆ j d ƒ |	 j d |  ƒ |
 j d ˆ  ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   	  s    
c            s|   d GHt  ˆ ˆ ƒ } t  ˆ ˆ ƒ } ˆ j ƒ  } t } y t | ƒ } Wn d G| GHn X| rq t | | | ƒ n  ˆ  ƒ  d  S(   Ns   make diff map here
s   can't decode scale(   RF  R   R   RL   t   difference_map(   R   t   active_mol_no_reft   active_mol_no_sect
   scale_textt   scale(   R	   t   map_molecule_list_reft   map_molecule_list_sect   option_menu_ref_molt   option_menu_sec_molt   scale_entry(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   ƒ	  s    i   s   Make a Difference Maps   Reference Map:s   Substract this map:i   t   Scales      OK   s    Cancel s   1.0Rs   (   R   Rv   Rw   R†   R   RÍ   Rˆ   R‡   RR   RM  R|   R…   R4  R‹   R�   R!   R“   R˜   (   R¼   t   diff_map_vboxRÖ   R   t	   ref_labelt	   sec_labelt   second_map_hboxRæ  t   scale_labelR'  RÄ   (    (   R	   RW  RX  RY  RZ  R[  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   make_difference_map_gui}	  sF    c            s]   d „  ‰  ‡  f d †  } t  |  ƒ } | g  k r= t d ƒ n | |  | ƒ } t d | ƒ d  S(   Nc         S   sL   |  g  k r t  Sx5 |  D]- } | d d } | d k r d G| GH| Sq Wd  S(   Ni    s    CA s   BL DEBUG:: returning (   R   (   t	   atom_listt   atomt	   atom_name(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_ca¿	  s    	c      	      sÂ  g  } xµ| D]­} | d } | d } | d } t  |  | d d !Œ } t  |  | d d !Œ } ˆ  | ƒ }	 ˆ  | ƒ }
 | d } |	 rÔ |
 rÔ | j d | d d t | d ƒ |  | | d | d d d	 g ƒ q |	 d } |
 d } t d
 „  | | ƒ } t | ƒ } t | ƒ d k  r$| } n | d d !} d | d t | d ƒ d t |  | d d !Œ d t | d ƒ d t |  | d d !Œ d | } | } | j d | ƒ | j | ƒ q W| S(   Ni    i   i   i   s   Cis Pep (atom failure) Ræ   i   t   CAR   c         S   s   |  | d S(   Ng       @(    (   R7  R8  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   Þ	  s    i   s	   Cis Pep: s    - s      (   t   residue_infoRa   R-   RÙ   R   t   residue_nameR’  (   R{  t   list_of_cis_pepst   rett   cis_pep_spect   r1t   r2t   omegat   atom_list_r1t   atom_list_r2t   ca_1t   ca_2RÍ  t   p1t   p2t   post   tors_s1t   tors_stringt   messR¢  (   Rf  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   make_list_of_cis_pepsÊ	  s4    



#$

	_s   No Cis Peptides founds   Cis Peptides:(   t   cis_peptidesR¹   R  (   R{  Rz  t   cis_pepst   list_of_cis_peptides(    (   Rf  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   cis_peptides_gui½	  s    	%c             s¬  ‡ f d †  }  ‡  ‡ ‡ ‡ f d †  } d „  } t  j t  j ƒ ‰ d } t  j t d ƒ } t  j t d ƒ } t  j d ƒ } t  j d ƒ } d d	 } t  j | ƒ }	 t  j ƒ  }
 | d
 ƒ ‰ | d ƒ ‰  t  j t d ƒ } t  j d ƒ } t  j	 ƒ  ‰ ˆ j
 | ƒ | j | t t d ƒ | j ˆ t t d ƒ | j | t t d ƒ | j | t t d ƒ ˆ j | ƒ | j ˆ d t t d ƒ | j ˆ  d t t d ƒ | j | t t d ƒ | j |	 t t d ƒ | j |
 t t d ƒ | j | t t d ƒ ˆ d j d ƒ ˆ d j d ƒ ˆ d j d ƒ ˆ  d j d ƒ ˆ  d j d ƒ ˆ  d j d ƒ ˆ j d ƒ | j d |  ƒ | j d | ƒ ˆ j ƒ  t t ƒ  ƒ s¨t ƒ  n  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   ú	  s    
c             sÜ  t  ˆ d ˆ d ƒ } t  ˆ  d ˆ  d ƒ } ˆ d j ƒ  } ˆ d j ƒ  } ˆ d j ƒ  } ˆ  d j ƒ  } ˆ  d j ƒ  } ˆ  d j ƒ  } ˆ j ƒ  }	 t ƒ  }
 t } yF t | ƒ } t | ƒ } t | ƒ } t | ƒ } t |	 ƒ } t } Wn d GHn X| rÎt |
 ƒ sd GHqÎt | ƒ } t	 | | | | | | | | |
 t
 ƒ  | ƒ } t | d t t | ƒ ƒ ƒ d	 t |
 ƒ d
 t | ƒ } t | d	 t |
 ƒ d
 t | ƒ ƒ t | d ƒ t | d ƒ n  ˆ j ƒ  d  S(   Ni   i   i   i   i   s7   BL ERROR:: conversion from input text to numbers faileds   Must set the refinement maps   Transformed copy of s   Transformed map: from map s    by matrix that created coords i    (   RF  R   Rã  R   RJ   RL   RR   R3  t   copy_moleculet   transform_map_using_lsq_matrixR/  t   set_molecule_namet
   strip_pathRê   R-   t   set_mol_activet   set_mol_displayedR   (   R   t   active_mol_reft   active_mol_movt   chain_id_reft   resno_1_ref_textt   resno_2_ref_textt   chain_id_movt   resno_1_mov_textt   resno_2_mov_textt   radius_textRÓ  t   contt   resno_1_reft   resno_2_reft   resno_1_movt   resno_2_movt   radiust	   imol_copyt   new_map_numberR/   (   t   frame_info_movt   frame_info_reft   radius_entryR   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRT  þ	  sJ    	
		c         S   so  t  j |  ƒ } t  j ƒ  } t | ƒ } t  j t d ƒ } t  j t d ƒ } t  j d ƒ } t  j d ƒ } t  j d ƒ } t  j ƒ  }	 t  j ƒ  }
 t  j ƒ  } | j	 | ƒ | j
 | t t d ƒ | j
 | t t d ƒ | j
 | t t d ƒ | j
 |	 t t d ƒ | j
 | t t d ƒ | j
 |
 t t d ƒ | j
 | t t d ƒ | j
 | t t d ƒ | | | |	 |
 | g S(   Ni   s
    Chain ID s    Resno Start s    Resno End (   R   Rç   RM  R6  R†   R   R‡   Rˆ   R|   R‹   R�   (   t   atom_sel_typeRë   R>  R?  t   atom_sel_vboxt   atom_sel_hboxRà  t   resno_1_labelt   resno_2_labelt   chain_id_entryt   resno_1_entryt   resno_2_entry(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   atom_sel_frame3
  s*    s   Map Transformationi   s
     Cancel  s     Transform  s9   Note that this will transform the current refinement map s   to around the screen centret	   Referencet   Movings	     Radius i   i    i   i   t   At   1i   t   10t   Bs   8.0Rs   (   R   Rv   Rw   R†   R   R‡   R…   Rˆ   RÍ   R|   Rx   R�   R‹   R!   R“   R˜   R3  Rã  Rä  (   R	   RT  R¡  R£  t	   main_vboxRæ  RÄ   R'  t   usaget   usage_labelRÖ   t   radius_hboxt   radius_label(    (   R–  R—  R˜  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt"   transform_map_using_lsq_matrix_guiø	  sT    5	
c       	      sN  ‡	 f d †  ‰ ‡  ‡ ‡ ‡ ‡ ‡ ‡ ‡ ‡ f	 d †  }  t  j t  j ƒ ‰	 t  j t d ƒ } t  j d ƒ } t  j d ƒ } t  j t d ƒ } t  j d ƒ } t  j ƒ  ‰ t  j d ƒ } t  j t d ƒ } t  j ƒ  } t  j t	 d ƒ }	 t  j d	 ƒ }
 t  j d
 ƒ } t  j d ƒ } t  j ƒ  ‰  t  j ƒ  ‰ t  j ƒ  ‰ t  j
 d ƒ } t  j
 d ƒ } t  j ƒ  ‰ t  j ƒ  ‰ t ˆ ƒ ‰ t ˆ ƒ ‰ ˆ	 j | ƒ | j | t t d ƒ | j | t t d ƒ | j ˆ t	 t d ƒ | j | t t d ƒ | j | t t d ƒ | j ˆ t	 t d ƒ | j | t t d ƒ | j | t t d ƒ | j |	 t t d ƒ |	 j | t	 t d ƒ |	 j | t	 t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j |
 t t d ƒ | j ˆ  t t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j t  j d ƒ t t d ƒ ˆ  j d d ƒ ˆ j d d ƒ ˆ j d d ƒ ˆ j d d ƒ ˆ j d ƒ ˆ  j d ƒ ˆ j d ƒ d d d d d } d } t  j d k r ˆ j | ƒ ˆ j | ƒ n  t j ˆ | ƒ t j ˆ | ƒ | j d |  ƒ | j d ˆ ƒ ˆ	 j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   €
  s    
c            s  d GHt  ˆ ˆ ƒ } t  ˆ ˆ ƒ } ˆ  j ƒ  } ˆ j ƒ  } t } t } y t ˆ j ƒ  ƒ } Wn d Gˆ j ƒ  GHn Xˆ j ƒ  } y t | ƒ } Wn% | d k r­ | } qº d G| GHn X| r	| r	t | ƒ d G| G| G| G| G| G| GHt | | | | | | ƒ n  ˆ ƒ  d  S(   Ns   ncs ligand function here
s   can't decode resno_startR   s   can't decode resno_ends   ncs ligand with(   RF  R   R   RJ   t   make_ncs_ghosts_maybet
   ncs_ligand(   R   RS  t   active_mol_no_ligt   chain_id_ligR‡  t   resno_startt	   resno_endt   resno_end_t(	   t   chain_id_lig_entryt   chain_id_ref_entryR	   t   molecule_list_ligt   molecule_list_reft   option_menu_lig_molRY  t   resno_end_entryt   resno_start_entry(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR  „
  s<    	
	
i   s   Find NCS-Related Ligandss   Protein with NCS:s   NCS Master Chains   Molecule containing ligandi   s
   Chain ID: s    Residue Number s     to  s      Find Candidate Positions  s       Cancel    i   Ræ   i    iÿÿÿÿi2   R¤  R¥  s7   'A' is a reasonable guess at the NCS master chain id.  s?   If your ligand (specified below) is NOT bound to the protein's s<   'A' chain, then you will need to change this chain and also s>   make sure that the master molecule is specified appropriately s&   in the Draw->NCS Ghost Control window.s    Leave blank for a single residuei   Rs   (   i   i   (   R   Rv   Rw   R†   R   Rˆ   R‡   R|   RÍ   RR   R…   RM  R6  R‹   R�   t   set_size_requestR!   R  R  R  R   R“   R˜   (   R  t   ncs_ligands_vboxR   R^  t   ref_chain_hboxt   chain_id_ref_labelt	   lig_labelt
   specs_hboxRÖ   Ræ  t   chain_id_lig_labelt   resno_start_labelt   to_labelR'  RÄ   t	   chain_tipt	   resno_tip(    (
   Rµ  R¶  R	   R·  R¸  R¹  RY  Rº  R»  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   ncs_ligand_gui~
  s€    '$c             sÒ  ‡ f d †  ‰ ‡  ‡ ‡ ‡ ‡ ‡ ‡ f d †  }  t  j t  j ƒ ‰ t  j d ƒ } t  j t d ƒ } t  j t d ƒ } t  j d ƒ } t  j ƒ  ‰ t  j d ƒ } t  j ƒ  ‰ t  j t d ƒ } t  j d ƒ } t  j ƒ  ‰  t  j d ƒ } t  j ƒ  ‰ t  j ƒ  }	 t  j t	 d ƒ }
 t  j
 d ƒ } t  j
 d	 ƒ } ˆ j | ƒ | j | t t d ƒ t | d
 ƒ ‰ | j | t t d ƒ t | d ƒ ‰ | j | t t d ƒ | j |	 t t d ƒ | j |
 t t d ƒ |
 j | t	 t d ƒ |
 j | t	 t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j | t t d ƒ | j ˆ  t t d ƒ | j | t t d ƒ | j ˆ t t d ƒ | j d |  ƒ | j d ˆ ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   û
  s    
c            sÍ   t  ˆ Œ  } t  ˆ Œ  } ˆ j ƒ  } ˆ  j ƒ  } t } t } y t ˆ j ƒ  ƒ } Wn d Gˆ j ƒ  GHn Xy t ˆ j ƒ  ƒ } Wn d Gˆ j ƒ  GHn X| rÂ | rÂ t | | | | | | ƒ n  ˆ ƒ  d  S(   Ns   can't decode reference resnos   can't decode moving resno(   RF  R   R   RJ   t   overlay_my_ligands(   R   t   active_mol_no_ref_ligt   active_mol_no_mov_ligR‡  RŠ  t	   resno_reft	   resno_mov(   t   chain_id_mov_entryR¶  R	   t   option_menu_mov_mol_pairt   option_menu_ref_mol_pairt   resno_mov_entryt   resno_ref_entry(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR  ÿ
  s$    s   Superpose Ligandsi   s   Ligand Chain ID: s    Residue Number i   s      Superpose 'em  s       Cancel    s   Model with reference ligands   Model with moving ligandi   Rs   (   R   Rv   Rw   Rˆ   R†   R   R‡   R|   RÍ   RR   R…   R‹   R�   R´  R“   R˜   (   R  R   t   ligands_vboxR¾  R¿  t   resno_ref_labelt   mov_chain_hboxt   chain_id_mov_labelt   resno_mov_labelRÖ   Ræ  R'  RÄ   (    (   RÍ  R¶  R	   RÎ  RÏ  RÐ  RÑ  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   superpose_ligand_guiù
  sP    !s   ^gs   keyboard-go-to-residues   ^ss   quick-save-ass   ^is   residue infos   ^zt   undos   ^yt   redot   as   refine with auto-zonet   bs   toggle baton swivelt   cs   toggle cross-hairst   ds   reduce depth of fieldRq  s   increase depth of fieldt   us   undo last navigationRX   s   toggle spin modeR"   s   label closest atomt   ms   zoom outRÈ  s   zoom int   os   other NCS chaint   ps   update position to closest atomR/   s   update skeletont   .s   up in button listt   ,s   down in button listc             sé  ‡  f d †  }  d „  } t  j t  j ƒ ‰  t  j ƒ  } t  j t d ƒ } t  j t d ƒ } d } t  j t d ƒ } t  j d ƒ } t  j d ƒ } t  j d ƒ }	 t  j t d ƒ }
 t  j t d ƒ } | j	 d	 |  ƒ ˆ  j
 d
 d ƒ ˆ  j | ƒ | j d ƒ ˆ  j | ƒ | j | ƒ | j | ƒ | j t  j t  j ƒ | j | t t d ƒ | j |	 t t d ƒ | j |
 ƒ |	 j | ƒ t } t ƒ  rft d ƒ } t | t ƒ rfx¶ | D]« } | \ } } } } g  | D] } | d ^ qÐ} g  | D] } | d ^ qí} | | k r=| | k r=| d d | d <| j | ƒ q±| d d | d <| j | ƒ q±Wqfn  x | D] } | | | t ƒ qmWx% t D] } | d g | |
 t ƒ qŽW| j | t t d ƒ | j | t t d ƒ ˆ  j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   t  s    
c   	         sG  t  j t d ƒ } t |  d ƒ } t  j d | d ƒ } t  j |  d ƒ } | rd | d |  d } t  j | ƒ } | j | t t d ƒ | j | t t d ƒ |  d ‰  t ˆ  ƒ så d ‰ ˆ d 7‰ ˆ d 7‰ ‡ f d	 †  ‰  n  | j	 d
 ‡  f d †  ƒ nB | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ d  S(   Ni   i   s      i    i   s(   Cannot call given function with button,
s   probably a scheme function.
s&   The shortcut should still work though.c              s   t  ˆ  ƒ d Gˆ  GHd  S(   Ns   INFO::(   R¹   (    (   R/   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   binding_func�  s    
Rs   c            s
   t  ˆ  ƒ S(   N(   t   apply(   Rø  (   Rä  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ‘  s    (
   R   R‡   R   R-   Rˆ   R…   R�   RR   R_   R“   (	   R
  R"  t   buttonize_flagt   binding_hboxt   txtt	   key_labelt
   name_labelR–  Rí   (    (   Rä  R/   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   box_for_bindingx  s&    


i   i    s   Key Bindingss	     Close  s   Standard Key Bindings:s   User-defined Key Bindings:Rs   iú   i^  i   s   *key-bindings*i   s    (scm)s    (scm + doublicate key)R  i   (   R   Rv   Rw   R{   R†   R   R‡   R…   Rç   R“   RŠ   Rx   RŒ   R‹   R  RŽ   R�   R�   R�   t   key_bindingst   coot_has_guilet   run_scheme_commandR½   t   listRa   RR   t   std_key_bindingsR‘   R˜   (   R	   Rë  Rš   R!  R"  R£  Ræ  R�   t	   std_framet	   usr_framet   std_frame_vboxt   usr_frame_vboxt   py_and_scm_keybindingst   scm_key_bindingsR
  t   scm_codet   scm_keyR   RT   t   elemt   py_keyst   py_codest   items(    (   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   key_bindings_guiq  sZ    	"	i   c    
         sY  d d  l  } d d  l } d d d ‰ d „  } d „  } d „  ‰ ‡ ‡ f d †  ‰  d	 „  } ‡  f d
 †  } d „  ‰ ‡ f d †  } ‡ f d †  } t |  ƒ d k r|  d }	 |	 t k rÄ | ƒ  n  |	 t k rÔ t S|	 t k rê | ƒ  n  |	 t k r | ƒ  n  |	 t k r| ƒ  qn  t |  ƒ d k rU|  d t	 k rU|  d a
 |  d a qUn  d  S(   Niÿÿÿÿs   http:s!   //www.biop.ox.ac.uk/coot/softwares(   /binaries/pre-releases/PRE-RELEASE-NOTESc          S   s?   d d  l  }  |  j d ƒ d d d d d d d d } | S(   Niÿÿÿÿi   s+   assssssssssssssssssssssssssssssssssssssss

s   
-----
s-   bill asssssssssssssssssssssssssssssssssssss

s-   fred asssssssssssssssssssssssssssssssssssss

s.   george sssssssssssssssssssssssssssssssssssss

(   Rø   R#  (   Rø   Rk  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   test_stringï  s
    c           S   s   d  S(   N(    (    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   stopü  s    c         S   s‚   |  j  d ƒ } | d k r% d d g S|  d | !} |  | d !j d ƒ } | j  d ƒ } | d k rm | d g S| | d | !g Sd  S(   Ns   -----iÿÿÿÿt   nothingi    R@   (   RD   RF   (   R/   t   sm_pret   pre_newst   post_pret   sm_std(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt	   trim_news   s    

c             sY   d d  l  }  y? |  j ˆ ƒ j ƒ  } ˆ  | ƒ } | d a | d a t a Wn n Xd  S(   Niÿÿÿÿi   i    (   t   urllibt   urlopent   readt   news_string_1t   news_string_2t   NEWS_IS_READYt   news_status(   R  R/   t	   both_news(   R  t   url(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_news_thread  s    


c         W   s   d |  | f GHd  S(   Ns%   error: news: error in %s with args %s(    (   t   keyR   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   coot_news_error_handle  s    c              s   t  ˆ  d ƒ d  S(   N(    (   t   run_python_thread(    (   R  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_news  s    c         S   s,   d } | j  ƒ  } | j | t |  ƒ ƒ d  S(   Ns   #c0e6c0(   R#   R’  R-   (   R/   R   t   background_colourR(   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   insert_string#  s    c              s   ˆ  t  t ƒ ˆ  t t ƒ d  S(   N(   R	  t   text_1R
  t   text_2(    (   R  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   insert_news(  s    c              s   ˆ  d t  ƒ ˆ  d t ƒ d  S(   Ns
     No news
s      Yep - there really is no news
(   R  R  (    (   R  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   insert_no_news.  s    i   i    i   i   (   t	   threadingR  R   t   STOPt   STATUSR  t   INSERT_NEWSt   INSERT_NO_NEWSt   GET_NEWSt   SET_TEXTR  R  (
   R   R  R  Rþ  Rÿ  R  R  R  R  RW   (    (   R  R  R  R  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   coot_news_infoæ  s:    					




c             s¦  t  a t  a t  ‰ d a d ‰ ‡  f d †  }  ‡ f d †  ‰  ‡ ‡ f d †  } t j t j ƒ ‰ t j t  d ƒ } t j t  d ƒ } t j ƒ  } t j ƒ  } t j	 d ƒ } t j
 ƒ  } t j
 ƒ  } | j t j t j j d ƒ ƒ | j t j t j j d ƒ ƒ | j ƒ  a | j ƒ  a t j ƒ  }	 t j d	 ƒ }
 t j ƒ  } t j	 d
 ƒ } t j	 d ƒ } t j	 d ƒ ‰ ˆ j d d ƒ | j | t  t  d ƒ | j ˆ t  t  d ƒ | j | t t d ƒ | j | | ƒ | j | | ƒ | j |	 t  t  d ƒ | j |
 t  t  d ƒ ˆ j | ƒ t t t t ƒ t t ƒ | j | ƒ | j | ƒ | j t j t j ƒ | j t j t j ƒ |
 j d |  ƒ t j  ˆ | ƒ ˆ j! ƒ  d  S(   Ni    iÈ   c             s   t  t ƒ ˆ  |  Œ  d  S(   N(   R!  R  (   R   (   R	   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   on_close_button_clickedL  s    
c             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   P  s    
c             sŽ   t  d 7a  t t  ˆ  d ƒ d }  ˆ j d d ƒ ˆ j |  ƒ t  d k rf ˆ j d ƒ t t ƒ t St t ƒ t k r† t t	 ƒ t St
 Sd  S(   Ni   g     @�@R/   g¸…ëQ¸î?g      à?id   t   Timeout(   R;  R-   t   set_alignmentR!   R!  R  R   R  R  R  RR   (   t   timer_string(   t   ms_stept   timer_label(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   check_for_new_newsT  s    


i   s   Lastest Coot Release Infos   #bfe6bfs      Close   s   Pre-releaset   Releases   0.0si  i�  i
   i   Rs   ("   R   R  R  R;  R   Rv   Rw   R†   R{   Rˆ   Ry   R•   R–   R7   R—   Rz   RÍ   R…   t   NotebookRŠ   R�   RR   t   append_pageR‹   R!  R   R  RŽ   R�   R�   R“   R   t   timeout_addR˜   (   R"  R(  Rž   R"  t   scrolled_win_1t   scrolled_win_2R    t   text_view_1t   text_view_2RÖ   R�   t   notebookt   notebook_label_pret   notebook_label_std(    (   R	   R&  R'  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   whats_new_dialogC  sX    
c             s”  t  d g a ‡ f d †  ‰ ‡ f d †  }  ‡ ‡ ‡ ‡ ‡ ‡ f d †  } ‡ ‡ ‡ ‡	 ‡
 f d †  } ‡ ‡ ‡ ‡ ‡	 ‡
 f d †  } d „  ‰  ‡  ‡ ‡ ‡ ‡ f d †  ‰ ‡ ‡	 ‡
 f d	 †  } d  d  ‡ ‡	 ‡
 f d
 † ‰ ‡ ‡	 f d †  ‰ ‡	 ‡
 f d †  ‰ t ƒ  } | d k rt ƒ  n  t j t j ƒ ‰ ˆ j d ƒ t j	 d ƒ } t j
 t  d ƒ } t j ƒ  ‰ t ˆ t ƒ ‰ t j
 t  d ƒ } t j d d t ƒ ‰	 t j t  d ƒ }	 t j	 d ƒ }
 t j d d d d d d ƒ } t j | d d ƒ ‰
 t j d ƒ ‰ t j ƒ  } t j ƒ  } t j t  d ƒ } t j d ƒ } t j d ƒ } t j d% k rd| j d ƒ n t j | d ƒ t j d ƒ } t j d ƒ } ˆ j d d ƒ ˆ j | ƒ | j | t  t  d ƒ | j ˆ t  t  d ƒ |	 j |
 t  t  d ƒ |	 j ˆ
 t  t  d ƒ |	 j ˆ t  t  d ƒ | j |	 t  t  d ƒ | j | t  t  d ƒ | j ˆ	 ƒ ˆ d ƒ | ƒ  | j | t  t  d ƒ t | d ƒ } | j | t  t  d  ƒ | j | t  t  d  ƒ | j | t  t  d  ƒ | j | t  t  d  ƒ | j | t  t  d ƒ | j | t  t  d ƒ | j d! | | ƒ | j d! ˆ ƒ | j d! | ƒ | j d! ˆ | ƒ | j d" | ƒ ˆ j d# |  ƒ ˆ j d$ | ƒ ˆ j  ƒ  d  S(&   Ni    c             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   š  s    
c            s#   ˆ  j  ƒ  } | r d GHn d GHd  S(   Ns   INFO:: refinement ons   INFO:: refinement off(   RÆ   (   R   t   status(   t   refine_check_button(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   refine_function_eventž  s    c      	      s1  d GHd GHt  ˆ ˆ ƒ } t | ƒ } t ƒ  } ˆ  | ƒ } | r-t | ƒ } x· | D]¯ } t | | d ƒ } t | | d ƒ } t | | d ƒ }	 d }
 t | | | |	 ƒ d } t | | | | |	 | |
 g ƒ } | d k rö d d d } t	 | ƒ n  ˆ j
 ƒ  } qS Wˆ j ƒ  | r#t | ƒ n  ˆ ƒ  n  d  S(   Ns   apply the sequence info here
s   then cootaneer
i    R   s4   Insufficiently confident in alignment to make a fit.s   
s2   Perhaps you could improve or extend this fragment.(   RF  RJ   Rã  t	   chain_idst   resname_from_serial_numbert   seqnum_from_serial_numbert!   insertion_code_from_serial_numberR„  RË  R¹   RÆ   t   hidet   fit_protein(   R   RJ  R{  RÓ  t   do_itt   chain_lsRÍ  t   res_namet   res_not   ins_codeRÑ  RÐ  t   cootaneer_resultR/   t	   refine_qm(   t   assign_sequences_to_molR	   R?  R>  R6  R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   ¦  s2    	
c            sM  t  d } t ˆ ˆ ƒ } t | ƒ } g  } | j ƒ  } | rDt | t | ƒ ƒ t | ƒ } t | ƒ } | s§ ˆ j ƒ  } x | D] }	 ˆ j	 |	 ƒ q� Wt
 | ƒ }
 n! t ˆ j ƒ  ƒ } t
 | | ƒ }
 t | g a  ˆ j | ƒ ˆ j | d ƒ xU |
 D]E } ˆ  | | ƒ } ˆ j | d d d | | d ƒ | d j ƒ  qø Wn d GHd  S(   Ni    i   s   BL WARNING:: no filename(   t   imported_sequence_file_flagsRF  RJ   R   t   assign_sequence_from_fileR-   Rå  R   Rc  t   removeRI   t	   get_valueRR   t	   set_valuet   resizet   attachR˜   (   R   t   selector_entryt   imported_sequence_file_qmRJ  R{  Rç  t   seq_file_namet   no_of_sequencest   table_childrent   childt   widget_ranget   spin_lenRX   t
   seq_widget(   t!   entry_text_pair_frame_with_buttonR?  R>  t	   seq_tablet   spin_button(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   import_function_eventÎ  s0    
!c    
         sö   t  ˆ ˆ ƒ } t | ƒ } t | ƒ } | rë t | ƒ } t | g a ˆ j | ƒ ˆ j | d ƒ ˆ j ƒ  } x | D] } ˆ j	 | ƒ qu Wt
 | ƒ } xW | D]E } ˆ | | ƒ }	 ˆ j |	 d d d | | d ƒ |	 d j ƒ  qŸ Wn ˆ  ƒ  d  S(   Ni   i    (   RF  RJ   Rå  R   RR   RF  RJ  RK  Rc  RH  RI   RL  R˜   (
   R   RJ  R{  Rç  RP  RQ  RR  RS  RX   RU  (   t   clear_function_eventRV  R?  R>  RW  RX  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   fill_table_with_sequencesó  s"    !c         S   s<   |  j  ƒ  } |  j d d d d d ƒ|  j | | d ƒ d  S(   NR¢   R*   R+   RÔ  s   #c0e6c0(   RÕ  R.   RÖ  (   R  RØ  RÙ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR    s    c            s  ‡ ‡  ‡ ‡ ‡ ‡ f d †  } ‡  f d †  } t  j ƒ  } t  j t d ƒ } t  j t d ƒ } t  j ƒ  ‰ t  j ƒ  } | j t  j ƒ | j	 t
 ƒ | j d d ƒ | j t j d ƒ ƒ | j ƒ  } t  j d ƒ } t  j d ƒ }	 t  j t d ƒ }
 t  j d	 ƒ } t  j d
 ƒ ‰  | j | ƒ | j | t t d ƒ | j ˆ t t d ƒ | j |	 t t d ƒ | j | t
 t d ƒ ˆ | |  d ƒ ˆ j |  d ƒ | j | t t d ƒ |
 j ˆ  t t d ƒ |
 j | t t d ƒ | j |
 t t d ƒ | j d | ƒ ˆ  j d | ƒ | ˆ | g S(   Nc            s»  t  ˆ ˆ ƒ } t | ƒ } t ƒ  } d GHd GHˆ  | ƒ } | r²t | ƒ } | rª| d } | d } | d } | d } | d }	 | d }
 t | | | | | |	 |
 g ƒ } | d k rÖ d	 d
 d } t | ƒ q¯ˆ j ƒ  } ˆ j ƒ  r‘| } ˆ j ƒ  } t | | d ƒ } t | | t	 | | ƒ d ƒ } t
 | | | d | | ƒ \ } } | d k rg| } q‘| r„| d 7} | | 7} n  t | ƒ n  | r¯t | | ƒ q¯q·d GHn d GHd  S(   Ns   apply the sequence info here
s   then cootaneer
i    i   i   i   i   i   s4   Insufficiently confident in alignment to make a fit.s   
s2   Perhaps you could improve or extend this fragment.s)   
Refinement proceeded with old=new chain s!   BL WARNING:: no close atom found!s6   BL ERROR:: something went wrong assigning the sequence(   RF  RJ   Rã  RÊ  RË  R¹   RÆ   R   R:  t   chain_n_residuest   change_chain_id_with_result_pyt	   fit_chain(   R   RJ  R{  RÓ  R>  RÌ  RÍ  RA  RB  RÐ  RÑ  RC  R/   RD  t   from_chain_idt   to_chain_idt   start_resnot	   end_resnot   istatt   message(   RE  t   chain_check_buttonR   R?  R>  R6  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   fragment_go_event  sL    	





!	
c            s#   ˆ  j  ƒ  } | r d GHn d GHd  S(   Ns   BL INFO:: assign chain_id toos    BL INFO:: do not assign chain_id(   RÆ   (   R   R5  (   Re  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   chain_toggledR  s    i   i,  iÿÿÿÿs
   Courier 11s   Chain IDRÛ  s     Sequence closest fragment  s   Assign Chain ID as well?i   i   i    i   Rs   RÌ   (   R   Rç   R†   R   R‡   R|   Ry   RÜ  RÝ  R’   RR   R¼  t   modify_fontR9   t   FontDescriptionRz   Rˆ   R…   RÐ   R‹   R�   R!   R“   (   RÞ  Rf  Rg  Rë   Rž   RŸ   Rß  R  Rà  Rá  t   vbox_for_buttonst   fragment_button(   R  RE  R?  R>  R6  (   Re  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRV    s>    9c            s  t  ˆ j ƒ  ƒ } t d } t d } ˆ j ƒ  } t | ƒ } | r¬ t | | ƒ } | | k r� g  } g  } ˆ j | ƒ | } qÄ | | k r– g  } qÄ t d | | ƒ } n t | ƒ } t | ƒ } x% | D] } | | }	 ˆ j |	 ƒ qË Wx | D] }
 ˆ  |
 ƒ qó Wˆ j | d ƒ d  S(   Ni    i   (	   RJ   RI  RF  Rc  R   RI   RJ  RH  RK  (   R   t   no_of_framesRN  RP  RQ  t   no_of_childrent   redraw_ranget   child_ranget   jRR  RX   (   t	   make_cellRW  RX  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   spin_button_changed|  s.    

		
c            sw   t  d g a ˆ j d d ƒ ˆ j ƒ  } x | D] } ˆ j | ƒ q/ Wˆ  d ƒ ˆ j d ƒ | rs | j d ƒ n  d  S(   Ni    i   R   (   R   RF  RK  Rc  RH  RJ  R!   (   R   R\  RQ  RR  (   Rq  RW  RX  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRZ  ¨  s    
c            sE   ˆ  d d g ƒ } ˆ j  | d d d |  |  d ƒ | d j ƒ  d  S(   NR   s8   Cut and Paste Sequence to here or import a sequence filei    i   (   RL  R˜   (   Rö   RU  (   RV  RW  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRq  ¸  s    !c            së  t  ˆ j ƒ  ƒ } ˆ  j ƒ  } g  } t } xÓ t | ƒ D]Å } | | } | j ƒ  d } | j ƒ  d } | j ƒ  }	 |	 d j ƒ  }
 |	 d j ƒ  } | j ƒ  \ } } | j | | ƒ } |
 | g } t |
 ƒ d k sá d | k rï d GHt	 } n  | j
 | ƒ q7 W| rÙxÌ | D]Ä } | d } | d j ƒ  } t |  ƒ } | ryx7 | D], } | d } | | k rFt |  | ƒ qFqFWn  | j d d ƒ } | j d d ƒ } | j d	 d ƒ } | j d
 d ƒ } t |  | | ƒ qWt St d ƒ t	 Sd  S(   Ni    i   i   s8   Cut and Paste Sequence to here or import a sequence files;   ERROR:: the input contains an invalid chain and/or sequenceRæ   R   s   s   
s   
s)   Invalid chain_id and/or sequence provided(   RJ   RI  Rc  RR   RI   R   Rz   t
   get_boundsR   R   Ra   t   upperRå  t   delete_sequence_by_chain_idRH   t   assign_sequence_from_stringRá   (   R{  t	   no_of_seqt
   frame_listt   seq_allt   write_sequenceRX   t   fframet   hhboxt   vvboxt
   child_listRÍ  t   seq_textbuffert	   startitert   enditert   seq_int   pairt   elementt   chain_id_newt   seqRÞ  t   infot   chain_id_old(   RW  RX  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRE  ¿  sJ    
	


iÿÿÿÿs   Sequencing GUIs   Molecule to be sequencedi   i   s   Number of Sequences:i
   i   s!   Auto-fit-refine after sequencing?s+     Import and associate sequence from file  s     Sequence all fragments!  i   s$   This currently ignores all chain IDss
     Cancel  s     Clear all  i�  iÈ   i   s   Select PIR filei   Rs   RH  RÌ   t   changed(   i   i   (!   R   RF  RQ   Rã  Rä  R   Rv   Rw   Rx   Rˆ   R†   RM  R2  R5  t   TableRR   R‡   RJ  t
   SpinButtonRÐ   RÍ   R…   R  R  R  R   RŠ   R‹   R�   R‘   R]  R“   R˜   (   R7  R¼   RY  R[  Rr  RÓ  R    Rž   R"  t   hbox_for_spint
   spin_labelt   spin_adjRÖ   t   h_sep2Ræ  t   import_buttonR³   RÄ   t   clear_buttonR\  (    (   R  RE  RZ  R	   RV  Rq  R?  R>  R6  RW  RX  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   cootaneer_gui_bl“  s„    (%	e,/	

c            s/   d d  l  } ‡  ‡ f d †  } | j | ƒ d  S(   Niÿÿÿÿc              s4   t  j j ƒ  z ˆ ˆ  Œ  t SWd  t  j j ƒ  Xd  S(   N(   R   R7   t   threads_enterR   t   threads_leave(    (   R   RŠ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt	   idle_func<  s
    
(   R   R   (   RŠ  R   R   R•  (    (   R   RŠ  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   run_with_gtk_threading:  s    c            sK   ‡  ‡ f d †  } t  j | ƒ ‰  |  j ˆ  t t d ƒ ˆ  j d | ƒ ˆ  S(   Nc             s/   ˆ  j  ƒ  } d } | r! d } n  ˆ | ƒ d  S(   Ni    i   (   RÆ   (   R   RÈ   t	   set_state(   RÇ   RÊ   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRË   H  s
    	i   RÌ   (   R   RÐ   R�   R   R“   (   Rž   t
   label_textRÊ   RË   (    (   RÇ   RÊ   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   generic_check_buttonG  s
    c             sV  d „  ‰ ‡ f d †  }  ‡  ‡ ‡ f d †  } t  j t  j ƒ ‰ t  j t d ƒ } t  j t d ƒ } t  j ƒ  } t  j ƒ  } t  j ƒ  } t  j d ƒ } t  j d ƒ } ˆ j | ƒ t	 | d d ˆ ƒ ‰  ˆ  j
 t t ƒ  ƒ ƒ | j | t t d	 ƒ t | d
 d „  ƒ }	 t ƒ  d k r'|	 j t ƒ n |	 j t ƒ t | d d „  ƒ }
 t ƒ  d k rh|
 j t ƒ n |
 j t ƒ t | d d „  ƒ } t ƒ  d k r©| j t ƒ n | j t ƒ | j | t t d	 ƒ t | d d „  ƒ } t ƒ  d k r | j t ƒ n | j t ƒ t | d d „  ƒ } t ƒ  d k rA| j t ƒ n | j t ƒ t | d d „  ƒ } t ƒ  d k r‚| j t ƒ n | j t ƒ t | d d „  ƒ } t ƒ  d k rÃ| j t ƒ n | j t ƒ | j | t t d	 ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j d | ƒ | j d |  ƒ ˆ j ƒ  d  S(   Nc         S   sR   | j  ƒ  } y. t | ƒ } d | } t | ƒ t | ƒ Wn t d ƒ n Xd  S(   Ns   Matrix set to s   Failed to read a number(   R   RL   t
   set_matrixRá   (   Rí   R   R   R¶  R/   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   set_matrix_funcW  s    

c             s   ˆ  j  ƒ  t S(   N(   R   R   (   t   rags(   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   a  s    
c             s   ˆ d ˆ  ƒ ˆ j  ƒ  t S(   NR  (   R   R   (   R   (   t   matrix_entryR›  R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   e  s    
i    s      Ok   s
     Cancel  s+   set matrix: (smaller means better geometry)t   Seti   s   Use Torsion Restraints?c         S   s
   t  |  ƒ S(   N(   t"   set_refine_with_torsion_restraints(   R6   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ~  s    i   s   Use Planar Peptide Restraints?c         S   s   |  d k r t  ƒ  St ƒ  S(   Ni    (   t    remove_planar_peptide_restraintst   add_planar_peptide_restraints(   R6   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ‡  s    s   Use Ramachandran Restraints?c         S   s
   t  |  ƒ S(   N(   t   set_refine_ramachandran_angles(   R6   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   �  s    s)   Real Space Refine after Auto-fit Rotamer?c         S   s
   t  |  ƒ S(   N(   t#   set_rotamer_auto_fit_do_post_refine(   R6   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ›  s    s,   Real Space Refine after Mutate and Auto-fit?c         S   s
   t  |  ƒ S(   N(   t"   set_mutate_auto_fit_do_post_refine(   R6   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ¤  s    s-   Real Space Refine after Add Terminal Residue?c         S   s
   t  |  ƒ S(   N(   t'   set_add_terminal_residue_do_post_refine(   R6   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ­  s    s7   Reset B-Factors to Default Value after Refinement/Move?c         S   s
   t  |  ƒ S(   N(   t   set_reset_b_factor_moved_atoms(   R6   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ¶  s    i   Rs   (   R   Rv   Rw   R†   R   R‡   RÍ   R…   R‹   R³  R!   R-   t   matrix_stateR�   R™  t$   refine_with_torsion_restraints_stateR*  RR   t   planar_peptide_restraints_statet    refine_ramachandran_angles_statet%   rotamer_auto_fit_do_post_refine_statet$   mutate_auto_fit_do_post_refine_statet)   add_terminal_residue_do_post_refine_statet$   get_reset_b_factor_moved_atoms_stateR“   R˜   (   R	   R¼   Rž   RŸ   RÖ   R�  t   h_sep3R³   RÄ   t   torsion_restraints_buttont   planar_restraints_buttont   rama_restraints_buttont   rotamer_autofit_buttont   mutate_autofit_buttont   terminal_autofit_buttont   reset_b_factor_button(    (   R�  R›  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   refinement_options_guiU  s„    	
	c         C   s  t  j j ƒ  d „  } d „  } t  j t  j ƒ } | j d ƒ | j d ƒ | j d d ƒ t  j t	 d ƒ } | j d ƒ | j
 | ƒ t  j ƒ  } | j ƒ  | j |  ƒ | j | t	 t	 d ƒ t j d	 | | ƒ } | j d
 | | ƒ | j ƒ  | a t  j ƒ  d  S(   Nc         S   s   |  j  ƒ  t S(   N(   t   pulseRR   (   t   pbar(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   progress_runË  s    
c         S   s!   t  j | ƒ d } t j ƒ  t S(   Ni    (   R   t   source_removeR   R   R   (   R   t   timer(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt
   destroy_cbÏ  s    
s   External Program Progressi    i,  i2   i   i
   id   R   (   R   R7   t   threads_initRv   Rw   Rx   RŒ   RŠ   R†   R   R‹   t   ProgressBarR¸  R!   R�   R   R,  R“   R˜   t   python_returnR™   (   R   Rº  R½  R   Rž   R¹  R¼  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   show_progressbarÈ  s&    		

c          C   s1   t  }  t j |  d ƒ t j ƒ  d k r- t St S(   Ng     @�@i   (   t   python_thread_sleepRø   R#  R  t   activeCountR   RR   (   t
   sleep_time(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   python_thread_sleeperï  s
    i   c            sy   d d  l  } d t j f ‡  ‡ f d †  ƒ  Y} | d k sC | a n  t j ƒ  d k rh | j d t ƒ n  | ƒ  j ƒ  d  S(   Niÿÿÿÿt   MyThreadc              s#   e  Z d  „  Z ‡  ‡ f d †  Z RS(   c         S   s   t  j j |  ƒ d  S(   N(   R  t   Threadt   __init__(   t   self(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRÈ  	  s    c            s8   t  j ƒ  } | j ƒ  z ˆ ˆ  Œ  a Wd  | j ƒ  Xd  S(   N(   R  t   Lockt   acquiret   python_thread_returnt   release(   RÉ  t   python_return_lock(   R   RŠ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRÅ    s
    
(   t   __name__t
   __module__RÈ  RÅ  (    (   R   RŠ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRÆ    s   	i   i   i2   (   R   R  RÇ  RÂ  RÃ  R,  RÅ  RÙ  (   RŠ  R   RÄ  R   RÆ  (    (   R   RŠ  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR    s    "	c            s   t  j t  j ƒ } t  j t d ƒ } t  j t d ƒ } t  j d d d d d d ƒ ‰  t  j ˆ  ƒ } t  j d ƒ } t  j d ƒ } | j	 | t t d ƒ | j	 | t t d ƒ | j	 | t t d ƒ | j	 | t
 t
 d ƒ | j | ƒ | j d	 d
 ƒ ˆ  j d ‡  ‡ f d †  ƒ | j ƒ  d  S(   Ni   g        iâÿÿÿi<   gš™™™™™©?gš™™™™>@s   
Sharpen Map:s   Add B-factor: iô  id   RH  c            s   t  ˆ ˆ  j ƒ S(   N(   t   sharpenR?  (   Rø  (   t   adjR{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   .  s    (   R   Rv   Rw   R†   R   R‡   RJ  RK  Rˆ   R�   RR   R‹   R¼  R“   R˜   (   R{  R   Rž   RŸ   t   sliderR    t   lab2(    (   RÒ  R{  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   map_sharpening_gui  s    t   FASTAc            s@   ‡ ‡ f d †  ‰  t  d t d d d ˆ d ‡  f d †  ƒ d  S(   Nc            sc   ˆ d k r t  |  | | ƒ n- ˆ d k r> t |  | | ƒ n t d ƒ d  Sˆ  r_ t |  ƒ n  d  S(   NRÖ  t   PIRs&   BL INFO:: wrong sequence input format.(   t   associate_fasta_filet   associate_pir_fileR¹   t   alignment_mismatches_gui(   R{  RÍ  t   pir_file_name(   t   do_alignmentt   sequence_format(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   associate_func:  s    
s   Associate Sequence with Chain: s   Chain IDR   s   Select s    filec            s   ˆ  |  | | ƒ S(   N(    (   R{  RÍ  RÛ  (   RÞ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   L  s    (   R`  R5  (   RÝ  RÜ  (    (   RÞ  RÜ  RÝ  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt!   associate_sequence_with_chain_gui7  s    c            sÃ   ‡ f d †  ‰ t  ˆ ƒ ‰  ˆ  g  k r4 t d ƒ n‹ ˆ  sG t d ƒ nx ‡  ‡ ‡ f d †  } ‡  ‡ ‡ f d †  } ‡  ‡ f d †  } | ƒ  } | | ƒ  7} | | ƒ  7} t d d d g | d	 ƒ d  S(
   Nc            sz   |  d } |  d } |  d } t  ˆ  | | | ƒ } | s= d Sx& | D] } | d d d k rD d SqD W| d d d Sd  S(   Ni   i   i   s    CA i    (   Rh  (   t   res_infoRÍ  RA  RB  t   residue_atomst   atoms(   R{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_sensible_atom_nameZ  s    


s   No sequence mismatchess&   Sequence not associated - no alignmentc             sÍ   g  }  xÀ ˆ  d D]´ } | d } | d } | d } d | d t  | ƒ d t ˆ | | | ƒ d | d } d t  ˆ ƒ d	 d
 | d t  | ƒ d d ˆ | ƒ d g } |  j | | g ƒ q W|  S(   Ni    i   i   i   s   Mutate Ræ   s    to s   set_go_to_atom_molecule(RA   s(   set_go_to_atom_chain_residue_atom_name('s   ', s   , s   's   ')(   R-   Ri  Ra   (   t   ret_buttonsRà  RÍ  RA  RB  t   button_1_labelt   button_1_action(   t   amRã  R{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   mutate_buttonsu  s    


;1c             sª   g  }  x� ˆ  d D]‘ } | d } | d } | d } d | d t  | ƒ } d t  ˆ ƒ d d	 | d
 t  | ƒ d d ˆ | ƒ d g } |  j | | g ƒ q W|  S(   Ni   i   i   i   s   Delete Ræ   s   set_go_to_atom_molecule(RA   s(   set_go_to_atom_chain_residue_atom_name('s   ', s   , s   's   ')(   R-   Ra   (   Rä  Rà  RÍ  RA  RB  Rå  Ræ  (   Rç  Rã  R{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   delete_buttons‡  s    


1c             s¼   g  }  x¯ ˆ  d D]£ } | d } | d } | d } d | d t  | ƒ } d | d d | d	 d
 t  ˆ ƒ d | d	 t  | ƒ d d | d d g } |  j | | g ƒ q W|  S(   Ni   i   i   s   Insert Ræ   s   info_dialog('s   ')s(   set_go_to_atom_chain_residue_atom_name('s   ', s   nearest_residue_by_sequence(s   , 's   , s   's   ')[2], s   ' CA ')(   R-   Ra   (   Rä  Rà  RÍ  RA  RB  Rå  Ræ  (   Rç  R{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   insert_buttons—  s    


?
s   Residue mismatchesi,  s	     Close  (   t   alignment_mismatchesR¹   R   (   R{  Rè  Ré  Rê  Rþ  (    (   Rç  Rã  R{  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRÚ  U  s    	c         C   s6   t  |  ƒ } d G| GH| r( t |  ƒ n
 t t ƒ d  S(   Ns   BL DEBUG:: sequence_info(   Rå  RÚ  t$   associate_sequence_with_molecule_guiRR   (   R{  RÞ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt    wrapper_alignment_mismatches_gui¹  s
    	c            s[  g  ‰ d „  ‰ ‡ f d †  ‰ ‡ ‡ ‡ ‡ f d †  ‰ ‡ ‡ f d †  ‰ d „  ‰ ‡ f d †  ‰	 d „  ‰  ‡  ‡ ‡ f d †  } ‡ ‡	 ‡
 f d	 †  } ‡ ‡ ‡ ‡ ‡	 ‡
 f d
 †  } t  j t  j ƒ ‰
 t  j t d ƒ } t  j t d ƒ } ˆ | ƒ } t  j t d ƒ }	 t  j | ƒ }
 t  j d ƒ } t  j | ƒ } t  j	 ƒ  } | d } | g ‰ |	 j
 | t t d ƒ |	 j
 | t t d ƒ | j
 | t t d ƒ t r¬| t | | ƒ n  | j
 |
 t t d ƒ t | d ƒ ‰ | j
 | t t d ƒ | j
 | t t d ƒ | j
 |	 t t d ƒ ˆ
 j | ƒ | j d ƒ | j d | ƒ | j d | ƒ ˆ
 j ƒ  d  S(   Nc         S   s   |  j  ƒ  } t | ƒ } | S(   N(   Rc  R   (   t   residue_range_widgets_vboxR¢  t   length(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   n_residue_range_vboxesá  s    c            s<   x( ˆ  D]  } |  | d k r | } Pq q Wˆ  j  | ƒ d  S(   Ni    (   RH  (   R   R¢  t   rem(   t   residue_range_widgets(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt    remove_from_residue_range_widgetè  s
    c            s   ‡ ‡ ‡ f d †  } ‡ ‡  ‡ ‡ f d †  } t  j ƒ  } t  j t d ƒ ‰  t  j t d ƒ } t  j d ƒ } t  j d ƒ } t  j d ƒ } t  j ƒ  } t  j ƒ  }	 t  j ƒ  }
 t  j d ƒ } t  j d ƒ } | j | t t d	 ƒ | j | t t d	 ƒ | j | t t d	 ƒ | j |	 t t d	 ƒ | j | t t d	 ƒ | j |
 t t d	 ƒ ˆ  j | t t d ƒ | j | ƒ ˆ  j | t t d ƒ ˆ  j | t t d ƒ | j	 d
 | ƒ | j	 d
 | ƒ t
 d „  | ˆ  | | | | | |	 |
 | | g ƒ ˆ  | |	 |
 g S(   Nc             sE   ˆ  ˆ ƒ } ˆ j  | d t t d ƒ | d j ƒ  ˆ j | ƒ d  S(   Ni    i   (   R�   R   R  Ra   (   R   t   rr_frame(   t   make_residue_range_framet   residue_range_vboxRò  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   plus_button_cbò  s    c             s3   ˆ  ˆ ƒ } | d k r/ ˆ ˆ ƒ ˆ j  ƒ  n  d  S(   Ni   (   R   (   R   RÈ  (   Rð  t   outside_hboxRó  Rö  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   minus_button_cbú  s    
i   s     Chain-ID:s     Resno Start:s     Resno End:t   +s    - i    Rs   c         S   s
   |  j  ƒ  S(   N(   R  (   R7  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ     s    (   R   Rç   R‡   R   Rˆ   R|   R…   R�   R‹   R“   RÙ   (   Rö  R÷  Rù  Rë   RŸ   R  R  t   text_3t   entry_1t   entry_2t   entry_3t   plus_buttont   minus_button(   Rõ  Rð  Ró  Rò  (   Rø  Rö  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRõ  ð  s8    c             s   t  ˆ  ˆ ƒ }  |  S(   N(   RÙ   (   R¢  (   t   make_residue_rangeRò  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   make_residue_ranges$  s    c   	      S   s‰   |  d } |  d } |  d } | j  ƒ  } | j  ƒ  } | j  ƒ  } y) t | ƒ } t | ƒ } | | | g SWn d | | f GHt SXd  S(   Ni   i   i   s<   did not understand %s and %s as numbers - fail residue range(   R   RJ   R   (	   t   residue_range_widgetRü  Rý  Rþ  RÍ  t   res_no_1_txtt   res_no_2_txtt   res_no_1t   res_no_2(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR  *  s    


c            s:   g  } x' |  D] } ˆ  | ƒ } | j  | ƒ q W| a d  S(   N(   Ra   t   saved_residue_ranges(   Rò  t   residue_rangesR  R¢  (   R  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   save_ranges;  s
    c         S   s|   d G|  GH| d } | d } | d } |  d } |  d } |  d } | j  | ƒ | j  t | ƒ ƒ | j  t | ƒ ƒ d  S(   Ns   fill_with_previous_range usingi   i   i   i    (   R!   R-   (   t
   range_infot	   vbox_infoRü  Rý  Rþ  RÍ  t   resno_1t   resno_2(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   fill_with_previous_rangeE  s    	





c            s´   d G|  d GH|  r4 |  d r4 ˆ  |  d | ƒ q4 n  t  |  ƒ d k r° xg |  d D]X } | rQ ˆ | ƒ } | j | d t t d ƒ d G| GHˆ j | ƒ ˆ  | | ƒ qQ qQ Wn  d  S(   Ns	   first onei    i   i   s   next one(   R   R�   R   Ra   (   t   previous_rangest   first_vbox_infoRö  t   rangR  (   R  Rõ  Rò  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt(   fill_residue_range_widgets_previous_dataS  s    
	c             s   ˆ ˆ  ƒ ˆ j  ƒ  t S(   N(   R   R   (   R   (   Rò  R
  R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   cancel_button_cbe  s    

c             sd   d d l  m } ˆ ˆ ƒ ˆ ƒ  } t ˆ Œ  } t | ƒ | k rQ ˆ  | | ƒ n d GHˆ j ƒ  t S(   Niÿÿÿÿ(   t   IntTypes#   BL INFO:: couldn't get valid imol!!(   R¾   R  RF  RÎ   R   R   (   R   R  R	  R{  (   Rø  R  t   mc_opt_menu_model_listRò  R
  R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   go_button_cbj  s    
	
i    i   s
     Cancel  i   s   Molecule for Ranges:Rs   (   R   Rv   Rw   R†   R   RR   R‡   Rˆ   R…   RÍ   R�   R  R´  R‹   RŒ   R“   R˜   (   Rø  t   function_textRÂ   R  R  R  Rž   Rö  t   residue_range_widget_infoRP  RÀ   RÄ   R³   RÖ   t   outside_vbox_residue_range(    (   R  Rø  R  Rõ  R  R  Rð  Ró  Rò  R
  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   residue_range_guiÜ  sP    	4	
	
	
	i2   c           C   s&   t  d d d d d d d d d	 d
 g
 S(   Nt   EDOt   GOLt   DMSt   ACTt   MPDt   CITt   SO4t   PO4t   TRSt   TAM(   t   additional_solvent_ligands(    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   solvent_ligand_list¨  s    c             sn  d „  ‰  ‡  f d †  ‰ ‡ f d †  }  ‡ ‡ ‡ ‡ ‡ f d †  } d „  ‰ t  j t  j ƒ ‰ t  j ƒ  } t  j t d ƒ } t  j t d ƒ ‰ t  j d ƒ } t  j ƒ  } t  j t d ƒ } t  j ƒ  ‰ t	 ˆ ƒ ‰ t  j
 d ƒ } t  j ƒ  } t  j
 d	 ƒ }	 ˆ j d
 d ƒ ˆ j d ƒ ˆ j d ƒ ˆ j | ƒ | j | t t d ƒ | j | ƒ | j ˆ t t d ƒ | j d ƒ | j | t t d ƒ | j | t t d ƒ | j ˆ ƒ | j t  j t  j ƒ | j | t t d ƒ | j | t t d ƒ | j |	 t t d ƒ x3 t ƒ  D]( }
 ˆ |
 ƒ } ˆ |
 | ˆ ˆ ˆ ƒ qW| j d | ƒ |	 j d |  ƒ ˆ j ƒ  d  S(   Nc         S   sì   d | |  f GHt  | ƒ } t | ƒ rè t |  ƒ r[ t |  ƒ s[ t | d d d d ƒ q[ n  t t ƒ  ƒ r§ d GHt | d d d t d ƒ t t	 | d d d d g ƒ n d GHt |  ƒ rè t
 | g |  ƒ t | d ƒ t | d ƒ qè n  d  S(	   Ns   Add a %s to molecule %s hereR¤  i   R   s   ========  jiggling!  ======== g      ð?s(   ======== not jiggling - no map ======== i    (   t   get_monomerR5  t   molecule_has_hydrogenst   delete_residue_hydrogensR3  Rã  t   fit_to_map_by_random_jigglet   random_jiggle_n_trialst   with_auto_acceptt   refine_zonet   merge_moleculesRƒ  R„  (   R{  t   tlct   imol_ligand(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_ligand_funcº  s     
c            s[   ‡ ‡  ‡ ‡ f d †  } t  j | ƒ } | j | t t d ƒ | j ƒ  | j d | ƒ d  S(   Nc             s    t  ˆ ˆ ƒ } ˆ  | ˆ ƒ d  S(   N(   RF  (   R   R{  (   R2  t   comp_idt
   model_listt   molecule_option_menu(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt	   button_cbÔ  s    	i   Rs   (   R   R…   R�   R   R  R“   (   R3  R–  R"  R5  R4  R6  Rí   (   R2  (   R3  R4  R5  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_solvent_buttonÒ  s
    
c             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   Þ  s    
c             s;   ‡ ‡ ‡ ‡ ‡ f d †  ‰  t  d d d ‡  f d †  ƒ d  S(   Nc            s-   t  j |  ƒ ˆ  |  ˆ |  ƒ ˆ ˆ ˆ ƒ d  S(   N(   R&  Ra   (   Rè  (   R7  t   comp_id2button_labelR"  R4  R5  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_button_funcä  s
    s   Add new 3-letter-code/comp-idR   s     Add  c            s
   ˆ  |  ƒ S(   N(    (   Rè  (   R9  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ì  s    (   RÅ   (   R   (   R7  R8  R"  R4  R5  (   R9  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   add_new_button_cbâ  s    c         S   s4   t  |  ƒ t |  ƒ } | r* |  d | n |  } | S(   Ns   : (   t   auto_load_dictionaryt   comp_id2name(   R3  t   comp_id_nameRk  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR8  ï  s    
i   s&   
Solvent molecules added to molecule: s     Add a new Residue Type...s	     Close  iÈ   ih  s   Solvent Ligandsi   i   i    i   Rs   (   R   Rv   Rw   R{   R†   R   Rˆ   Rç   RM  R6  R…   RÍ   RŠ   Rx   RŒ   R‹   R�   RR   R  RŽ   R�   R�   R'  R“   R˜   (   R	   R:  Rš   R!  R    t   frame_for_option_menut   vbox_for_option_menut   add_new_buttonRÖ   R�   R3  R–  (    (   R2  R7  R8  R"  R4  R5  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   solvent_ligands_gui¶  sN    		c            s¼   d „  ‰  ‡ f d †  ‰ ‡  ‡ f d †  ‰ d „  ‰ ‡ ‡ ‡ f d †  ‰ t  ƒ  r¸ t | ƒ ‰ ˆ ˆ d ƒ } ˆ ˆ d ƒ } | | } t d d	 d	 g | d
 d ‡ ‡ f d †  t ƒ n  d  S(   Nc         S   sD   |  d } |  d } |  d } |  d } |  d } | t  | ƒ | S(   Ni   i   i   i   i   (   R-   (   t	   atom_specRÍ  RA  RB  Re  RÑ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   atom_spec2string#  s    




c            sê   g  } xÝ |  D]Õ } | d } | d } | d } | d } | d } | d } | d }	 | d }
 | d } | d } | d | d t  |	 ƒ | d | d d	 | } t t ˆ  ƒ t t | |	 | ƒ g } | j | | g ƒ q W| S(
   Ni    i   i   i   i   i   Ræ   s    : s    score %2.2f(   R-   t   cmd2strR  R  Ra   (   t	   flip_listRk  t   flipRB  t   residue_typet   info_stringt
   set_stringt   scoreRÍ  RA  RB  Re  RÑ  R    Rø  (   R{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   make_flip_buttons,  s&    









)c            sÆ   g  } x¹ |  D]± } | d } | d } d d j  t ˆ  | ƒ ƒ d | } | d } | d } | d } | d }	 | d }
 | d } t t ˆ ƒ t t | | |
 ƒ g } | j | | g ƒ q W| S(	   Ni    i   s   No Adjustment Ræ   i   i   i   i   (   t   joinRÙ   RD  R  R  Ra   (   t   no_flip_listRk  t   no_flip_itemt   specsRH  R    RB  RÍ  RA  RB  Re  RÑ  Rø  (   RC  R{  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   make_no_adj_buttonsE  s"    







c   	      S   s‹   g  } x~ |  D]v } | d } | d } | d } | d } | d } t  | ƒ d k  rZ q | d d !} | d k r | j | ƒ q q W| S(   Ni    i   i   i   i   t   XFC(   R   Ra   (	   RE  Rk  RF  RB  RG  RH  RI  RJ  t   keep_letter(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   filter_buttons]  s    




c            sg   ˆ  j  ƒ  } t d „  | ƒ | s; ˆ | ƒ ˆ | ƒ } n ˆ ˆ | ƒ ƒ } t ‡  f d †  | ƒ d  S(   Nc         S   s
   |  j  ƒ  S(   N(   R   (   RÜ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   t  s    c            s   t  |  ˆ  ƒ S(   N(   R  (   R  (   Rž   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   |  s    (   Rc  RÙ   (   Rž   RE  t   no_adj_listt   filter_flagRB  Rþ  (   RS  RK  RP  (   Rž   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   clear_and_add_backq  s    	i    i   s    Flips i,  s	     Close  s    Clashes, Problems and Flips onlyc            sB   |  j  ƒ  r' ˆ  | ˆ d ˆ d t ƒ Sˆ  | ˆ d ˆ d t ƒ S(   Ni    i   (   RÆ   RR   R   (   RÇ   Rž   (   RV  t   flips(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   Š  s    '(   t	   using_guit	   user_modsRû  R   (   R{  t   pdb_file_namet   flip_buttonst   no_adj_buttonst   all_buttons(    (   RC  RV  RS  RW  R{  RK  RP  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   user_mods_gui   s    				
c          C   s;   t  ƒ  }  |  s t d ƒ n |  GHt d d d d „  ƒ d  S(   Ns   No Residue Heres   Rename this residuet   ALAt   Renamec         S   s   t  t d d d d |  ƒ S(   Nt   aa_imolt   aa_chain_idt	   aa_res_not   aa_ins_code(   t   using_active_atomt   set_residue_name(   R   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   –  s   (   t   active_residueR¹   RÅ   (   t   active_atom(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   rename_residue_gui_simple�  s    	c          C   s*   d d d „  ƒ  Y}  |  ƒ  } | j  ƒ  d  S(   Nt   mavc           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         S   s   g  |  _  d  S(   N(   t   mav_widgets(   RÉ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRÈ  ¦  s    c         S   sQ   t  } x+ |  j D]  } | d | k r | } Pq q W| rM |  j j | ƒ n  d  S(   Ni    (   R   Rk  RH  (   RÉ  R   t   to_be_removedR
  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   remove_from_mav_widgets­  s    c      	      sŒ  ‡ ‡ f d †  } ‡  ‡ f d †  } t  j t ƒ } t  j t d ƒ ‰  t  j d ƒ } t  j ƒ  } t  j ƒ  } t | ƒ } t  j d ƒ }	 t  j d ƒ }
 ˆ  j	 | t t d ƒ ˆ  j	 | t t d ƒ ˆ  j	 | t t d ƒ ˆ  j	 |	 t t d ƒ ˆ  j	 |
 t t d ƒ | j
 d d ƒ | j d	 ƒ |	 j d
 | ƒ |
 j d
 | ƒ ˆ j	 ˆ  t t d ƒ t d „  | ˆ  | | | |	 |
 g ƒ ˆ  | | | g S(   Nc             s1   ˆ j  ˆ  ƒ } | d j ƒ  ˆ j j | ƒ d  S(   Ni    (   t   add_average_molecule_widgetR  Rk  Ra   (   R   t   mav_bits(   t	   maps_vboxRÉ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR÷  º  s    c             s3   t  ˆ j ƒ d k r/ ˆ j ˆ  ƒ ˆ  j ƒ  n  d  S(   Ni   (   R   Rk  Rm  R   (   R   (   RŸ   RÉ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRù  ¿  s    i   s	   Weight:  Rú  s    - i(   iÿÿÿÿs   1.0Rs   c         S   s
   |  j  ƒ  S(   N(   R  (   R7  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   Ý  s    (   R   Rç   R   R‡   Rˆ   R|   RM  R4  R…   R�   R¼  R!   R“   RÙ   (   RÉ  Rp  R÷  Rù  Rë   R    R   t
   optionmenut   map_mol_listRÿ  R   (    (   RŸ   Rp  RÉ  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRn  ¸  s.    c            s|  ‡ f d †  } ‡  ‡ f d †  } t  j t  j ƒ ‰ t  j t d ƒ } t  j t d ƒ } t  j d ƒ } t  j ƒ  } t  j t d ƒ } ˆ  j | ƒ } t  j	 d ƒ }	 t  j	 d ƒ }
 ˆ j
 | ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j |
 t t d ƒ | j |	 t t d ƒ | g ˆ  _ |	 j d	 | ƒ |
 j d	 | ƒ ˆ j ƒ  d  S(
   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR  ê  s    
c    	         sœ   g  } xr ˆ  j  D]g } | d } | d } | d } d G| GHt | | ƒ } | j ƒ  } t | ƒ } | j | | g ƒ q Wd G| GHt | ƒ ˆ j ƒ  t S(   Ni   i   i   Rr  s   maps to average(   Rk  RF  R   RL   Ra   t   average_mapR   R   (	   R   t   maps_to_average_listRo  R>  Rr  R   t   map_selectedR   R5   (   RÉ  R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   ok_button_cbî  s    


		

i    s   Average Mapsi   s
     Cancel  s     Average Maps  i   Rs   (   R   Rv   Rw   R†   R   Rˆ   RÍ   R‡   Rn  R…   R‹   R�   R‘   Rk  R“   R˜   (   RÉ  R  Rv  t
   outer_vboxt
   inner_vboxR   RÖ   Ræ  t
   mav_widgetRÄ   R'  (    (   RÉ  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt	   main_lineè  s,    (   RÏ  RÐ  RÈ  Rm  Rn  Rz  (    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRj  ¥  s   			0(    (   Rz  (   Rj  t   gui(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   average_map_gui�  s    z	c             s—   t  ƒ  }  |  s t d ƒ nw |  d ‰ |  d ‰  |  d ‰ |  d ‰ d t ˆ ƒ d ˆ  t ˆ ƒ ˆ d } t | d	 d
 ‡  ‡ ‡ ‡ f d †  ƒ d  S(   Ns   No Residue Herei    i   i   i   s   Rename Residue [in molecule s   ]: s    to: R_  s   Rename Residuec            s   t  ˆ ˆ  ˆ ˆ |  ƒ S(   N(   Rf  (   R   (   Rb  Ra  Rd  Rc  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   6  s   	(   Rg  R¹   R-   RÅ   (   Rh  R    (    (   Rb  Ra  Rd  Rc  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   rename_residue_gui%  s    	



#c             s"  ‡ f d †  }  ‡ ‡ ‡ ‡ f d †  } ‡ ‡ ‡ ‡ f d †  } d „  ‰  d „  ‰ ‡ f d †  ‰ d „  ‰ t  j t  j ƒ ‰ t  j t d ƒ } t  j t d ƒ ‰ t  j d	 ƒ } t  j t d ƒ ‰	 t  j d
 ƒ } t  j ƒ  } d } t  j t d ƒ } t  j t d ƒ }	 t  j t d ƒ }
 t  j d ƒ } t | | ƒ } | d ‰ | d ‰
 t  j	 ƒ  } t  j	 ƒ  } t  j
 ƒ  ‰ t d d ƒ ‰ t  j d ƒ } t  j ƒ  ‰ t  j d ƒ } t  j d ƒ } t  j t d ƒ } ‡
 ‡ f d †  ‰ ‡ ‡ f d †  ‰ ‡ f d †  ‰ ‡	 ‡ f d †  ‰ ‡  ‡ ‡ ‡ ‡	 ‡ f d †  ‰ ˆ j | ƒ t ˆ ˆ d ƒ | j ˆ ƒ | j t  j t  j ƒ | j ˆ	 ƒ | j t  j t  j ƒ |	 j | t t d ƒ |	 j ˆ t t d ƒ | j | t t d ƒ |
 j | t t d ƒ |
 j ˆ t t d ƒ | j |
 t t d ƒ | j |	 t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ ˆ j d ƒ | j d |  ƒ ˆ j d | ƒ | j d | ƒ ˆ j ƒ  d  S(   Nc             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   J  s    
c             s8   ˆ ƒ  } ˆ ƒ  } ˆ  ƒ  } | r4 ˆ | | | ƒ n  d  S(   N(    (   R   RÈ  R{  RÝ  (   t   get_distancet   get_moleculet
   get_numbert   update_water_results(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   apply_cbN  s
    			c            sJ   | j  d k rF ˆ ƒ  } ˆ ƒ  } ˆ  ƒ  } | rF ˆ | | | ƒ qF n  d  S(   Niÿ  (   R   (   R   R   RÈ  R{  RÝ  (   R~  R  R€  R�  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR
   U  s    			c         S   s   d j  t t |  ƒ ƒ S(   NRæ   (   RL  RÙ   R-   (   RB  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   atom_spec2text]  s    c         S   s…   d d l  m } t |  | d | d | d ƒ } | d } t | ƒ | k r� x1 | D]& } | d d | k rT | d d SqT Wn  t S(   Niÿÿÿÿ(   RÜ   i   i   i   i   i    (   R¾   RÜ   Rh  RÎ   R   (   R{  RB  RÜ   Râ  t   input_atom_nameRd  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_ele`  s    
c            sS   | d } | d } d } x2 | D]* } ˆ  |  | ƒ } | d k r! d } q! q! W| S(   Ni    i   R   s    Cs    Bump(    (   R{  t
   water_infot   central_atomt   contact_listt   rvt   contactt   ele(   R…  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   make_bump_texto  s    

c         S   s
   |  | k S(   N(    (   RB  t   metal_results(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   is_a_metal_site_too_qmy  s    i    s   Other Coordinated Waterss   Potential Metals: s
   Molecule: s   Coordination Number: i   i   i
   s
   Max Dist: s	     Close  s	     Apply  i   c              s   t  ˆ ˆ  ƒ S(   N(   RF  (    (   R4  t   molecule_chooser_option_menu(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR  –  s    c              s   t  t ˆ ˆ  ƒ ƒ S(   N(   RJ   RH  (    (   R8  t   number_menu(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR€  ™  s    	c             s0   ˆ  j  ƒ  }  y t |  ƒ } Wn t } n X| S(   N(   R   RL   R   (   R¶  Rk  (   t
   dist_entry(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR~  œ  s    
c             s9   x2 ˆ ˆ  g D]$ }  |  j  ƒ  } t d „  | ƒ } q Wd  S(   Nc         S   s
   |  j  ƒ  S(   N(   R   (   R   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   §  s    (   Rc  RÙ   (   t	   this_vboxRB  RZ   (   t   metal_results_vboxt   results_vbox(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   clear_previous_results¤  s    c            st  t  |  | | ƒ } ˆ ƒ  d d  l } | j d ƒ | rp| d } | d } x— | D]� } | d } ˆ  | ƒ }	 ˆ |  | ƒ }
 t j |	 |
 ƒ } ˆ | | ƒ sS ˆ j | t t d ƒ | j ƒ  d „  } | j d | |  | ƒ qS qS Wx‡ | D]| } | d } ˆ  | d ƒ }	 |	 d | } t j | ƒ } ˆ j | t t d ƒ | j ƒ  d „  } | j d | |  | ƒ qí Wn  d  S(	   Niÿÿÿÿi   i   i    c         S   sF   | d } | d } | d } | d } t  | ƒ t | | | ƒ d  S(   Ni    i   i   i   (   R  R  (   R   R{  R†  t
   water_specRÍ  RA  Re  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt
   water_funcÀ  s    




Rs   s    Potential c         S   sF   | d } | d } | d } | d } t  | ƒ t | | | ƒ d  S(   Ni    i   i   i   (   R  R  (   R   R{  t
   metal_sitet
   metal_specRÍ  RA  Re  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt
   metal_funcÑ  s    




(	   t   highly_coordinated_watersRø   R#  R   R…   R�   R   R  R“   (   R{  RÈ  RÝ  t   resultsRø   t   coordination_resultsR�  R†  RB  R¶  t	   bump_textRí   R—  R˜  t
   metal_textt   button_textRš  (   Rƒ  R•  RŽ  RŒ  R“  R”  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR�  ®  s4    



	

	i   i   s   2.7Rs   R
   (   R   Rv   Rw   R†   R   Rˆ   RÍ   R‡   R´  R{   RM  RI   R|   R…   R‹   R<  R  RŽ   R�   R�   R�   RR   R!   R“   R˜   (   R	   R‚  R
   Rž   t   water_results_labelt   metal_results_labelRÖ   R°  t   hbox_choosert   hbox_max_distt   hbox_number_choosert   number_textt+   molecule_chooser_option_menu_and_model_listRš   t   metal_results_scrolled_wint
   dist_labelR�   t   apply_buttonRP  (    (   Rƒ  R•  R‘  R~  R…  R  R€  RŽ  RŒ  R“  R4  R�  R8  R�  R”  R�  R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   water_coordination_guiH  s|    		
	


,c         C   sÝ   |  GHt  } t  } t  } xœ |  D]” } | d } | d } | d } t | t ƒ rd | | k rj t  Sn | } | sy | } n | | k  rŽ | } n  | s� | } q | | k r | } q q W| rÕ | rÕ | rÕ | | | g St  Sd  S(   Ni   i   i   (   R   R½   R-   (   RO  t
   min_res_not
   max_res_noRÍ  Rˆ  t
   spec_modelt
   spec_chainRA  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt    min_max_residues_from_atom_specs  s.    


			c              s5   d „  ‰  t  t d d ƒ d d d ‡  f d †  ƒ d  S(   Nc         S   s   d „  } t  |  | ƒ d  S(   Nc       	      sS  t  t |  ƒ } |  d d ‰ t |  ƒ } t | t ƒ sE t d ƒ n
t ˆ | t ƒ  d t ƒ } | d d ‰ | d d ‰ | d } | d ‰ | d ‰ | d ‰  t	 ˆ d ƒ t
 ˆ ƒ rOt | ƒ d k rOt  ‡  ‡ ‡ ‡ f d †  | ƒ } d „  ‰ t d d	 d
 g d ‡  ‡ ‡ ‡ ‡ f d †  g d ‡ ‡ f d †  g g | d ƒ qOn  d  S(   Ni    i   s+   Picked atoms not in same molecule and chaini
   i   c            s3   t  ˆ  ƒ d t ˆ  ƒ ‡ ‡ ‡  ‡ ‡ f d †  g S(   NRæ   c            s   t  ˆ ˆ  ˆ ˆ  ˆ ˆ ƒ S(   N(   t   copy_residue_range(   Rø  (   RÍ  R{  t   loop_molt	   max_resnot	   min_resno(    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   O  s   	(   R-   Rê   (   R²  (   RÍ  R{  R³  R´  (   R²  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   M  s    c         S   s   t  |  ƒ t |  ƒ d  S(   N(   t   toggle_active_molt   toggle_display_mol(   R{  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   toggle_funcS  s    
s   Loop Candidatesih  iÈ   s   Original loopc            s   t  ˆ ˆ  ˆ ˆ  ˆ ˆ ƒ S(   N(   R±  (   Rø  (   RÍ  R{  t   imol_loop_origR³  R´  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   Y  s    	s   Toggle All Candidate Loopsc            s
   ˆ ˆ  ƒ S(   N(    (   Rø  (   t   imol_loops_consolidatedR·  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   ^  s    s    Close (   RÙ   t   atom_spec2residue_specR°  R½   Rï  R¹   t   protein_db_loopsRã  t   db_loop_preserve_residue_namesRƒ  R5  R   R   (   t
   atom_specst   residue_specst   min_max_and_chain_idt	   loop_molsRþ  (    (   RÍ  R{  R¸  R¹  R³  R´  R·  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt	   pick_func8  s4    	



			(   t   user_defined_click(   RÈ  RÁ  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   pick_loop_func7  s    	+i   i
   i   s   Number of residues for basiss   Pick Atoms...c            s
   ˆ  |  ƒ S(   N(    (   RÈ  (   RÃ  (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyRØ   i  s    (   R±  RI   (    (    (   RÃ  sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   click_protein_db_loop_gui4  s
    	.c      	      s…  t  |  | | | ƒ } y | j d ƒ Wn n Xt | ƒ d k rJ d GHn7t |  | | | ƒ } | d } d „  } | | | ƒ } ‡ f d †  ‰  ‡  f d †  }	 d „  }
 t j t j ƒ ‰ t j d	 ƒ } t j d
 ƒ } t j d | ƒ } t j | d d d d d ƒ } t j	 | ƒ } t j
 t d ƒ } t j t d ƒ } | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j d |
 ƒ ˆ j | ƒ t j ƒ  } t j t d ƒ } t j d ƒ } t j d ƒ } | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j | t t d ƒ | j d |	 | |  | | | | ƒ | j d ˆ  ƒ ˆ j ƒ  d  S(   NR   i   s*   INFO:: no (or too many) alt confs, no gui!i    c         S   sU   xN t  t |  ƒ ƒ D]: } |  | d d } | | k r |  | d d } | Sq Wd  S(   Ni    i   (   RI   R   (   R€  RÑ  RX   t   alt_conf_strt   occ(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   get_occ_for_alt_conf{  s
    c             s   ˆ  j  ƒ  t S(   N(   R   R   (   R   (   R   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR	   …  s    
c   	         sW   | j  } d G| GH| d | g | d d | g g } t | | | | | ƒ ˆ  ƒ  d  S(   Ns    BL INFO:: setting new occupancy i    i   (   R?  t   set_alt_conf_occ(	   R   t
   occ_adjustR{  RÍ  RA  RB  t	   alt_confst   new_occt   alt_conf_list(   R	   (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyR¼   ‰  s
    		$c          W   s   d  S(   N(    (   R   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt
   change_occ’  s    s   Adjust alt conf occupanciest	   Occupancys
   Alt Conf: gš™™™™™¹?g®Gáz®ï?g{®Gáz„?RH  i   s      OK   s    Cancel Rs   (   t   residue_alt_confsRH  R   Rh  R   Rv   Rw   Rˆ   RJ  RK  R†   R   R‡   R�   RR   R“   R‹   RÍ   R…   R˜   (   R{  RÍ  RA  RB  RÊ  Rà  RÑ  RÇ  t	   occ_startR¼   RÍ  R   t	   occ_labelt   alt_conf_labelt   occ_adjt	   occ_scaleRž   t
   scale_hboxRÖ   Ræ  R'  RÄ   (    (   R	   R   sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   scale_alt_conf_occ_guik  sP    
			c          C   s   d „  }  t  d |  ƒ d  S(   Nc          W   sO   |  d d } |  d d } |  d d } |  d d } t  | | | | ƒ d  S(   Ni    i   i   i   i   (   RÖ  (   R   R{  RÍ  RA  RB  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   helper_function½  s
    i   (   RÂ  (   R×  (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   select_atom_alt_conf_occ_gui»  s    	c         C   s�   |  r6 |  j  ƒ  r$ t t ƒ d GHqŒ t t ƒ d GHnV t ƒ  } | t k r] t t ƒ d GHn  | t k su | t k r‡ t t ƒ d GHn  d GHd S(   s‹   Toggle function to swtich on and off backrub rotamer fitting.
   
   Keyword arguments:
   widget -- can be passed from the toolbutton

   s%   BL INFO:: Using Backrub rotamers now!s.   BL INFO:: NOT using Backrub rotamers any more!s   BL WARNING:: no widgetN(   RÆ   t   set_rotamer_search_modet   ROTAMERSEARCHLOWRESt   ROTAMERSEARCHHIGHRESt   rotamer_search_mode_statet   ROTAMERSEARCHAUTOMATIC(   R   t   mode(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   toggle_backrub_rotamersÆ  s    

	

c         C   s   |  rv |  j  ƒ  rD y t ƒ  Wqs t k
 r5 d GHqs d GHqs Xq{ y t ƒ  Wq{ t k
 rg d GHq{ d GHq{ Xn d GHd S(   s…   a toggle function to connect and disconnect from a Wiimote

   Keyword arguments:
   widget -- can be passed from the toolbutton

   sN   BL WARNING:: setup_wii not defined! Did you compile with WII_INTERFACE_WIIUSE?s!   BL WARNING:: could not set up WiisM   BL WARNING:: stop_wii not defined! Did you compile with WII_INTERFACE_WIIUSE?s   BL WARNING:: could not stop wiis   BL WARNING:: no widgetN(   RÆ   t	   setup_wiit	   NameErrort   stop_wii(   R   (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   toggle_wiimoteé  s    c   	      C   sY  t  } d |  } x" | D] } | d 7} | | 7} q W| d 7} y¶ t j d d  t j t j Bt j t j t j t j	 f ƒ } t j
 j d ƒ } t j | ƒ } | j j | t t d ƒ | j ƒ  | j ƒ  } | t j k rä t } n t  } | j ƒ  Wn] | d 7} d } x" | j ƒ  d k r/t | ƒ } qW| j ƒ  d k rKt } qUt  } n X| S(   Ns    Couldn't find %s in default paths    and s"   

Shall we search the whole disk?
s   Search whole disk dialogRq   i    s   [y/N] >R   R8  t   yesRÈ  t   no(   R8  s   yesRÈ  Rå  (   R8  s   yes(   R   R   t   DialogRQ   t   DIALOG_MODALt   DIALOG_NO_SEPARATORt	   STOCK_YESt   RESPONSE_ACCEPTt   STOCK_NOt   RESPONSE_REJECTR7   R‰   Rˆ   Rž   R‘   RR   R˜   RÅ  R   t   lowert	   raw_input(	   t   program_namet   path_lsRk  R˜  t   patht   dialogR¡   R    t   result(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   search_disk_dialog  s:    



	
	
(u   t   pygtkR   R9   R   R¾   R   R    R   R£   R©   Rº   RÅ   R×   Rà   Rî   R÷   Rþ   R  Rÿ   R2  R4  R6  R<  RF  RH  RQ  RR  RS  RZ  R`  Rb  Rs  Rx  R|  R~  R�  Ry  Rž  RŽ  R§  R­  R±  R³  R´  R]  R½  RÉ  Ré  Rö  Ró  R   Rû  R  R  R  R!  Rú  R-  R6  R=  RQ  Rb  R~  R­  RÇ  R×  Rð  Rý  RI   R  R  R  R  R  R   R  t   NO_NEWSR  R	  R
  R!  R4  R’  R–  R™  R·  RÁ  R  RÅ  RÌ  RÂ  R  RÕ  Rß  RÚ  Rí  R  R  R&  R,  R'  RA  R^  Ri  R|  R}  R«  R°  R¼  RÄ  RÖ  RØ  RQ   Rß  Rã  Rô  t   set_found_coot_python_gui(    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/python2.7/site-packages/coot/coot_gui.pyt   <module>   s
  $	
	ÿ 		B	Aa	K	2		,		£							8				=	E	<	*					/T		-		7	"$			m		
		9	2	3	SA		"	!	K	@	;	†	{	c																				l$	]	P	ÿ ¨			s	$			d	"	Ç		j	o		ˆ	#	Ä	&	7	P	##	)