ó
æNXc           @   s®   d  Z  d d l Z d d l Z d d l m Z d d l m Z m Z m Z m	 Z	 m
 Z
 m Z m Z e e	 e
 e e f Z d „  Z d „  Z e ƒ  Z e e ƒ \ Z Z Z Z d S(   s¬   Import Qt in a manner suitable for an IPython kernel.

This is the import used for the `gui=qt` or `matplotlib=qt` initialization.

Import Priority:

if Qt has been imported anywhere else:
   use that

if matplotlib has been imported and doesn't support v2 (<= 1.0.1):
    use PyQt4 @v1

Next, ask QT_API env variable

if QT_API not set:
    ask matplotlib via rcParams['backend.qt4']
    if it said PyQt:
        use PyQt4 @v1
    elif it said PySide:
        use PySide

    else: (matplotlib said nothing)
        # this is the default path - nobody told us anything
        try:
            PyQt @v1
        except:
            fallback on PySide
else:
    use what QT_API says

iÿÿÿÿN(   t   check_version(   t   load_qtt
   loaded_apit   QT_API_PYSIDEt   QT_API_PYQTt   QT_API_PYQT5t   QT_API_PYQTv1t   QT_API_PYQT_DEFAULTc         C   s{   |  d  k r d  S|  j j d d  ƒ } | d  k r5 d  S| j ƒ  d k rN t g S| j ƒ  d k rg t g St d | ƒ ‚ d  S(   Ns   backend.qt4t   pysidet   pyqt4s3   unhandled value for backend.qt4 from matplotlib: %r(   t   Nonet   rcParamst   gett   lowerR   R   t   ImportError(   t   mplt   mpqt(    (    sV   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/external/qt_for_kernel.pyt   matplotlib_options4   s    c          C   sÇ   t  ƒ  }  |  d k	 r |  g St j j d d ƒ } | d k	 rW t | j d ƒ rW t g St j	 j d d ƒ } | d k rŽ t
 | ƒ p t t g S| t k r¼ t d | d j t ƒ f ƒ ‚ n | g Sd S(   sO   Return a list of acceptable QT APIs, in decreasing order of
    preference
    t
   matplotlibs   1.0.2t   QT_APIs'   Invalid Qt API %r, valid values are: %rs   , N(   R   R
   t   syst   modulesR   R    t   __version__R   t   ost   environR   R   t   _qt_apist   RuntimeErrort   join(   t   loadedR   t   qt_api(    (    sV   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/external/qt_for_kernel.pyt   get_optionsA   s    	(   t   __doc__R   R   t   IPython.utils.versionR    t   IPython.external.qt_loadersR   R   R   R   R   R   R   R   R   R   t   api_optst   QtCoret   QtGuit   QtSvgR   (    (    (    sV   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/external/qt_for_kernel.pyt   <module>   s   4				