ó
ÉÝ{Tc           @   só  d  Z  d d l Z d d l Z g  Z i  Z g  Z g  Z g  Z g  Z	 g  Z
 g  a d d „ Z d i  d d „ Z d i  d d „ Z d d d d „ Z d d d	 d
 „ Z d d „ Z d e j f d „  ƒ  YZ d	 e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d  e j f d! „  ƒ  YZ  d" e j f d# „  ƒ  YZ! d$ e j f d% „  ƒ  YZ" d& e j f d' „  ƒ  YZ# d( e j f d) „  ƒ  YZ$ d* e j f d+ „  ƒ  YZ% d, d< d- „  ƒ  YZ& d. d= d/ „  ƒ  YZ' d0 d> d1 „  ƒ  YZ( d2 d? d3 „  ƒ  YZ) d4 d@ d5 „  ƒ  YZ* d6 dA d7 „  ƒ  YZ+ d8 dB d9 „  ƒ  YZ, d: dC d; „  ƒ  YZ- d S(D   sª  
     python/ui/picture_definition_classes.py: CCP4MG Molecular Graphics Program
     Copyright (C) 2001-2008 University of York, CCLRC
     Copyright (C) 2009-2010 University of York
     Copyright (C) 2012 STFC

     This library is free software: you can redistribute it and/or
     modify it under the terms of the GNU Lesser General Public License
     version 3, modified in accordance with the provisions of the 
     license to address the requirements of UK law.
 
     You should have received a copy of the modified GNU Lesser General 
     Public License along with this library.  If not, copies may be 
     downloaded from http://www.ccp4.ac.uk/ccp4license.php
 
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU Lesser General Public License for more details.
iÿÿÿÿNt    c         C   s(   t  j d d ƒ } | r  | d Sd  Sd  S(   Nt   nameR    i    (   t   dataobjt   get_dataobjt   None(   R   t   rv(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR   !   s    t   MolDatac         C   si  d d  l  } |  se| j d ƒ re| d d r@ | d d } n | d d r_ | d d } n  t j j t j j | ƒ d ƒ d }  t j j | ƒ d d j ƒ  } d  } | d k rbt j j t j j | ƒ d ƒ d } | d k r_| d | d j ƒ  } | j | ƒ } | st	 S| d d r9| | d d <n | d d rX| | d d <n  t
 Sqbqen  t	 S(	   Niÿÿÿÿt   filenamei   i   i    t   gzR    t   .(   t   utilst   has_keyt   ost   patht   splitt   splitextt   lowerR   t   gunzipToNamedFilet   Falset   True(   R   t
   dataparamst   object_typeR
   t   fnamet   extt   extgzt   ext2(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyt   DataObj_isGZIPPED)   s.    & & c         C   s·   |  s³ | j  d ƒ r– | d d rT t j j t j j | d d ƒ d ƒ d }  q° | d d r° t j j t j j | d d ƒ d ƒ d }  q° q³ | t t t ƒ d ƒ }  n  |  S(   NR   i   i    iÿÿÿÿi   (   R   R   R   R   R   t   strt   lent   DataList(   R   R   R   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyt   DataObj_nameA   s    14c         C   s9  d d  l  } d  } |  r‹ t |  | j ƒ rI t j |  ƒ rˆ t |  } qˆ qÏ t |  t j ƒ rÏ x* t D] } | j |  k rb | } Pqb qb WqÏ nD | rÏ x; t D]0 } | j	 | k r˜ | j
 j | ƒ r˜ | } q˜ q˜ Wn  | s5t t ƒ d k r5xH t t t ƒ d d d ƒ D]' } t | j	 | k rt | } PqqWq5n  | S(   Niÿÿÿÿi    i   (   t   typesR   t
   isinstancet
   StringTypet
   DataLookupR   R   t   DataObjR   R   t   objnamest   countR   t   range(   t   parentR   R   R   t
   parent_objt   shadowt   objt   ii(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyt   DispObj_parentL   s,    !#
t   MolDispc         C   s  | rS |  j  j | ƒ } | rF t |  d ƒ rF |  j j  j | ƒ } n  | sS | Sn  t |  j  ƒ } t |  d ƒ rŠ | t |  j j  ƒ } n  d } xk | rý | d } |  j | t | ƒ } |  j  j | ƒ } | r“ t |  d ƒ r“ |  j j  j | ƒ } q“ q“ W| S(   NR   i   (   R$   R%   t   hasattrR   R   R   R   (   R(   R   R   t   exit   nt   contut   nname(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyt   DispObj_namef   s"      	
c         C   s:   y& t  |  ƒ } | j ƒ  } | j ƒ  Wn d } n X| S(   NR    (   t   opent   readt   close(   R   t   ft   text(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyt   ReadFilex   s    
c           B   s,   e  Z d  d  g  d g  d „ Z d  d „ Z RS(   R    i   c   
      K   sÏ   | | d <t  d | d | d d ƒ } t d | d | d d ƒ } | rS | | d <n  g  } x | D] } | j | ƒ q` Wg  }	 | |  _ t j j |  d | d d d | d |	 d | ƒt j |  ƒ |  t | <d  S(   Nt   visibleR   R   R   R   R$   t   objinsts(	   R   R   t   appendt	   referenceR   t   DataObjShadowt   __init__R   R"   (
   t   selfR   R=   R$   R:   t   display_objectsR   t   isGZt   itemR;   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   …   s    
 	.c         C   sF   t  |  d ƒ s |  j ƒ  n  t  |  d ƒ r> |  j j d | ƒ Sg  Sd  S(   NR   t   mode(   R.   t   restoreR   t   get(   R@   RD   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRF   œ   s
    (   t   __name__t
   __module__R?   RF   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR   ƒ   s   c           B   s&   e  Z d  d  d i  i  i  d d „ Z RS(   R    R-   i   c         K   s&  t  d | d | d d ƒ }	 |	 s> t j d | d | ƒ d  St d |	 d | d d ƒ } t j j |  d | d | d	 | d
 | d | d | d | ƒ|  j j d ƒ rí |  j	 |  j d ƒ }
 |
 d sÙ |
 d |  j d <qí | d |
 d GHn  |	 j
 j | ƒ s"|	 j
 j | ƒ |	 j j |  ƒ n  d  S(   NR'   R   R   R   s    Can not find parent DataObj for t    R(   R-   t	   selparamst	   colparamst   styleparamsR:   t   paramst	   selectioni    i   s    : (   R,   t   ERROR_MESSAGER<   R3   R   t   DispObjShadowR?   RM   R   t   convert_selectionR$   R%   R;   (   R@   R   R'   R   t   selection_parameterst   colour_parameterst   style_parametersR:   t   keywordsR(   R   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   ª   s    :
(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR-   §   s   t   HBondsc           B   s&   e  Z d  d  d i  i  i  d d „ Z RS(   R    RV   i   c   
      K   sÌ   t  d | d | d d ƒ }	 |	 s> t j d | d | ƒ d  St d |	 d | d d ƒ } t j j |  d | d | d	 | d
 | d | d | d | ƒ|	 j j | ƒ sÈ |	 j j | ƒ |	 j	 j |  ƒ n  d  S(   NR'   R   R   R   s    Can not find parent DataObj for RI   R(   RV   RJ   RK   RL   R:   RM   (
   R,   RO   R<   R3   R   RP   R?   R$   R%   R;   (
   R@   R   R'   R   RR   RS   RT   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   Æ   s    :(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRV   Ä   s   t   Contactsc           B   s&   e  Z d  d  d i  i  i  d d „ Z RS(   R    RW   i   c   
      K   sÌ   t  d | d | d d ƒ }	 |	 s> t j d | d | ƒ d  St d |	 d | d d ƒ } t j j |  d | d | d	 | d
 | d | d | d | ƒ|	 j j | ƒ sÈ |	 j j | ƒ |	 j	 j |  ƒ n  d  S(   NR'   R   R   R   s    Can not find parent DataObj for RI   R(   RW   RJ   RK   RL   R:   RM   (
   R,   RO   R<   R3   R   RP   R?   R$   R%   R;   (
   R@   R   R'   R   RR   RS   RT   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   Ú   s    :(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRW   Ø   s   t   AnisoUc           B   s&   e  Z d  d  d i  i  i  d d „ Z RS(   R    RX   i   c   
      K   sÌ   t  d | d | d d ƒ }	 |	 s> t j d | d | ƒ d  St d |	 d | d d ƒ } t j j |  d | d | d	 | d
 | d | d | d | ƒ|	 j j | ƒ sÈ |	 j j | ƒ |	 j	 j |  ƒ n  d  S(   NR'   R   R   R   s    Can not find parent DataObj for RI   R(   RX   RJ   RK   RL   R:   RM   (
   R,   RO   R<   R3   R   RP   R?   R$   R%   R;   (
   R@   R   R'   R   RR   RS   RT   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   î   s    :(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRX   ì   s   t
   Annotationc           B   s&   e  Z d  d  d i  i  i  d d „ Z RS(   R    RY   i   c   
      K   sÌ   t  d | d | d d ƒ }	 |	 s> t j d | d | ƒ d  St d |	 d | d d ƒ } t j j |  d | d | d	 | d
 | d | d | d | ƒ|	 j j | ƒ sÈ |	 j j | ƒ |	 j	 j |  ƒ n  d  S(   NR'   R   R   R   s    Can not find parent DataObj for RI   R(   RY   RJ   RK   RL   R:   RM   (
   R,   RO   R<   R3   R   RP   R?   R$   R%   R;   (
   R@   R   R'   R   RR   RS   RT   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?     s    :(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRY      s   t   SurfaceDispobjc           B   s&   e  Z d  d  d i  i  i  d d „ Z RS(   R    RZ   i   c   
      K   sÌ   t  d | d | d d ƒ }	 |	 s> t j d | d | ƒ d  St d |	 d | d d ƒ } t j j |  d | d | d	 | d
 | d | d | d | ƒ|	 j j | ƒ sÈ |	 j j | ƒ |	 j	 j |  ƒ n  d  S(   NR'   R   R   R   s    Can not find parent DataObj for RI   R(   RZ   R:   RJ   RK   RL   RM   (
   R,   RO   R<   R3   R   RP   R?   R$   R%   R;   (
   R@   R   R'   R   RR   RS   RT   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?     s    :(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRZ     s   t   CrystalDatac           B   s   e  Z d  g  d „ Z RS(   R[   c         K   s   d  S(   N(    (   R@   R   RA   R   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   *  s    (   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR[   (  s   t   Crystalc           B   s   e  Z d  d d d „ Z RS(   R    R\   i   c      
   K   se   | s# d t  t t ƒ d ƒ } n  t j j |  d | d | d | d | ƒ| ra t j |  ƒ n  d  S(   NR\   i   R   R   R:   RM   (   R   R   t   CrystalListR   RP   R?   R<   (   R@   R   R   R:   RU   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   3  s
     ( (   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR\   1  s   t   MapDatac           B   s   e  Z d  g  d d „ Z RS(   R^   i   c         K   s˜   | | d <t  d | d | d d ƒ } g  } x | D] } | j | ƒ q2 Wg  } t j j |  d | d d d | d | d | ƒt j |  ƒ |  t | <d  S(   NR:   R   R   R   R^   R$   R;   (   R   R<   R   R>   R?   R   R"   (   R@   R   RA   R:   R   R$   RC   R;   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   =  s    
 .(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR^   :  s   t   MapDispc           B   s   e  Z d  d  d d d „ Z RS(   R    R_   i   c      
   K   s¡   t  d | d | d d ƒ } | s% d  St d | d | d d ƒ } t j j |  d | d | d | d | ƒ| j j | ƒ s� | j j | ƒ | j j |  ƒ n  d  S(	   NR'   R   R   R^   R(   R_   R:   RM   (	   R,   R3   R   RP   R?   R$   R%   R<   R;   (   R@   R   R'   R   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   P  s     ((   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR_   M  s   t   VectorsDatac           B   s   e  Z d  g  d d „ Z RS(   R`   i   c         K   s˜   | | d <t  d | d | d d ƒ } g  } x | D] } | j | ƒ q2 Wg  } t j j |  d | d d d | d | d | ƒt j |  ƒ |  t | <d  S(   NR:   R   R   R   R`   R$   R;   (   R   R<   R   R>   R?   R   R"   (   R@   R   RA   R:   R   R$   RC   R;   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   a  s    
 .(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR`   _  s   t   VectorsDispobjc           B   s   e  Z d  d  d d d „ Z RS(   R    Ra   i   c      
   K   sº   t  d | d | d d ƒ } | s> t j d | d | ƒ d  St d | d | d d ƒ } t j j |  d | d | d	 | d
 | ƒ| j j | ƒ s¶ | j j | ƒ | j	 j |  ƒ n  d  S(   NR'   R   R   R`   s    Can not find parent DataObj for RI   R(   Ra   R:   RM   (
   R,   RO   R<   R3   R   RP   R?   R$   R%   R;   (   R@   R   R'   R   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   s  s    ((   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRa   q  s   t   Legendc           B   s   e  Z d  d d d „ Z RS(   R    Rb   i   c      
   K   s9   t  j j |  d | d | d | d | ƒt j |  ƒ d  S(   NR   R   R:   RM   (   R   RP   R?   t   twoDListR<   (   R@   R   R   R:   RU   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   ‡  s    ((   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRb   …  s   t   Imagec           B   s   e  Z d  d d d „ Z RS(   R    Rd   i   c      
   K   s9   t  j j |  d | d | d | d | ƒt j |  ƒ d  S(   NR   R   R:   RM   (   R   RP   R?   Rc   R<   (   R@   R   R   R:   RU   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   �  s    ((   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRd   Ž  s   t	   FieldDatac           B   s   e  Z d  g  d d „ Z RS(   Re   i   c         K   s˜   | | d <t  d | d | d d ƒ } g  } x | D] } | j | ƒ q2 Wg  } t j j |  d | d d d | d | d | ƒ|  t | <t j |  ƒ d  S(   NR:   R   R   R   Re   R$   R;   (   R   R<   R   R>   R?   R"   R   (   R@   R   RA   R:   R   R$   RC   R;   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   ™  s    
 .
(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRe   —  s   t	   FieldDispc           B   s   e  Z d  d  d d d „ Z RS(   R    Rf   i   c      
   K   sç   t  d | d | d d ƒ } | s> t j d | d | ƒ d  St d | d | d d ƒ } | s† | j d	 t t | j ƒ d
 ƒ } n  t j	 j
 |  d | d | d | d | ƒ| j j | ƒ sã | j j | ƒ | j j |  ƒ n  d  S(   NR'   R   R   Re   s    Can not find parent DataObj for RI   R(   Rf   R-   i   R:   RM   (   R,   RO   R<   R3   R   R   R   R$   R   RP   R?   R%   R;   (   R@   R   R'   R   R:   RU   R(   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   «  s     '((   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRf   ©  s   t   ParamsManagerc           B   s   e  Z g  Z d  d „ Z RS(   R    c         K   sP   | |  _  i  |  _ x' | j ƒ  D] \ } } | |  j | <q Wt j j |  ƒ d  S(   N(   R   RM   t   itemsRg   t   instsR<   (   R@   R   RU   t   keyt   value(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   Ã  s
    		(   RG   RH   Ri   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRg   Á  s   t   ColourSchemeManagerc           B   s   e  Z g  Z d  d „ Z RS(   R    c         K   sP   | |  _  i  |  _ x' | j ƒ  D] \ } } | |  j | <q Wt j j |  ƒ d  S(   N(   R   RM   Rh   Rl   Ri   R<   (   R@   R   RU   Rj   Rk   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   Î  s
    		(   RG   RH   Ri   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRl   Ì  s   t   Viewc           B   s   e  Z g  Z d  d „ Z RS(   R    c         K   sP   | |  _  i  |  _ x' | j ƒ  D] \ } } | |  j | <q Wt j j |  ƒ d  S(   N(   R   RM   Rh   Rm   Ri   R<   (   R@   R   RU   Rj   Rk   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   Ù  s
    		(   RG   RH   Ri   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRm   ×  s   t   Coloursc           B   s   e  Z g  Z i  d  „ Z RS(   c         K   s•   g  |  _  | rE xo | j ƒ  D]" \ } } |  j  j | | g ƒ q Wn< | r� x3 | j ƒ  D]" \ } } |  j  j | | g ƒ qX Wn  t j j |  ƒ d  S(   N(   RM   Rh   R<   Rn   Ri   (   R@   t   colour_definitionsRU   Rj   Rk   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   ã  s    	(   RG   RH   Ri   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRn   á  s   t   Wizardc           B   s   e  Z d  d  d „ Z RS(   R    c         J   s›  e  d | d d ƒ } | s d  S| j ƒ  d d k rB | j ƒ  n  d d  l } d d  l } | j ƒ  } | j | d d ƒ \ } }	 |	 r| re j j	 e j j
 | j | ƒ ƒ rÌ e j j
 | j | ƒ }
 n! e j j
 e j ƒ  d	 d
 | ƒ }
 | j d |	 d d d |
 ƒ } n  | j d | ƒ \ } } | d k r�x[ | D]P } | j d ƒ r9| j d ƒ ru| d e ƒ  | d <q‰d e ƒ  | d <q9q9Wn  d d  l } e | j d | j ƒ ƒ d k rà| j d | j ƒ d e ƒ  d <n | j e ƒ  d <| j d | d d ƒ \ } } | s†x' | j ƒ  D] \ } } | e ƒ  | <q!Wy i  } | e ƒ  | f d  UWq—e k
 r‚} t j d | ƒ q—Xn t j d | ƒ d  S(   NR'   R   R   i    t   INLINEiÿÿÿÿt   :i   t   datat   picture_wizard_filest   indexRD   t   mgpict   dirR   R   t   initialR    t   MolData1t   sectiont   SCRIPTs   ERROR handing Wizard s#   ERROR in Wizard reading script for (   R,   t   get_filenameRE   t   stringt   global_definitionst   PICTUREWIZARDR   R   R   t   existst   joint
   master_dirR
   t
   get_CCP4MGt   snapshot_filet   read_mgpic_file_choicesR   t   globalsR   R   R   t   read_mgpic_file_sectionRh   t   StandardErrorRO   R<   (   R@   Ry   t   drawing_styleRU   R(   R}   R~   t   wizardt   folderRu   t   theDirt
   mgpic_fileR   t   choicest   paramt   script_textRj   Rk   t   locst   e(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   î  sD     $!!!#(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyRp   í  s   t   Inlinec           B   s#   e  Z d  d  d „ Z d  d „ Z RS(   R    c         C   s#   | |  _  | |  _ t j |  ƒ d  S(   N(   R   Rs   t
   InlineListR<   (   R@   R   Rs   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?      s    		c         C   sÜ   d d  l  } | s* | j d |  j ƒ } n  | j | d |  j ƒ} | rV d d | g St j j |  j ƒ d d k rÕ d d  l } y< | j	 | ƒ } t	 | d d !d	 ƒ } | j
 | j ƒ  ƒ WqÕ d d
 | g SXn  d g S(   NiÿÿÿÿRq   R8   i   s!   Error saving inline data to file s   .gzi    iýÿÿÿt   wbs   Error uncompressing (   R
   R|   R   t   saveFileRs   R   R   R   t   gzipR4   t   writeR5   (   R@   t   targetR
   R   R—   t   it   o(    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyt   unpack&  s     (   RG   RH   R?   Rœ   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR“     s   t   SelectionSchemec           B   s   e  Z d  d  d  i  d „ Z RS(   R    c         K   sh   | |  _  | d k r! d |  _ n- t d | d d ƒ |  _ |  j sN d |  _ n  | |  _ t j |  ƒ d  S(   Nt   genericR'   R   R   (   R   R(   R,   RN   t   SelectionSchemeListR<   (   R@   R   t   contextRN   RJ   RU   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   ;  s    		 	(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR�   :  s   t   ColourSchemec           B   s   e  Z d  d  d  d „ Z RS(   R    c         K   sh   | |  _  | d k r! d |  _ n- t d | d d ƒ |  _ |  j sN d |  _ n  | |  _ t j |  ƒ d  S(   NRž   R'   R   R   (   R   R(   R,   t   colourst   ColourSchemeListR<   (   R@   R   R    R¢   RU   (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR?   G  s    		 	(   RG   RH   R?   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyR¡   F  s   (    (    (    (    (    (    (    (    (.   t   __doc__R   t   os.pathR   R   R"   R]   Rc   R”   RŸ   R£   RO   R   R   R   R,   R   R3   R9   R>   R   RP   R-   RV   RW   RX   RY   RZ   R[   R\   R^   R_   R`   Ra   Rb   Rd   Re   Rf   Rg   Rl   Rm   Rn   Rp   R“   R�   R¡   (    (    (    sQ   /opt/xtal/ccp4-6.5-linux32/lib/py2/ccp4mg/python/ui/picture_definition_classes.pyt   <module>   sP   $				
2