ó
ĉNXc           @   sL   d  Z  d d l Z d d l m Z d d l m Z d e f d     YZ d S(   sZ   
A context manager for handling sys.displayhook.

Authors:

* Robert Kern
* Brian Granger
i˙˙˙˙N(   t   Configurable(   t   Anyt   DisplayTrapc           B   sG   e  Z d  Z e   Z d d  Z d   Z d   Z d   Z	 d   Z
 RS(   sµ   Object to manage sys.displayhook.

    This came from IPython.core.kernel.display_hook, but is simplified
    (no callbacks or formatters) until more of the core is refactored.
    c         C   s5   t  t |   j d | d d   d  |  _ d |  _ d  S(   Nt   hookt   configi    (   t   superR   t   __init__t   Nonet   old_hookt   _nested_level(   t   selfR   (    (    sQ   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/core/display_trap.pyR   )   s    	c         C   s/   |  j  d k r |  j   n  |  j  d 7_  |  S(   Ni    i   (   R	   t   set(   R
   (    (    sQ   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/core/display_trap.pyt	   __enter__0   s    c         C   s/   |  j  d k r |  j   n  |  j  d 8_  t S(   Ni   (   R	   t   unsett   False(   R
   t   typet   valuet	   traceback(    (    sQ   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/core/display_trap.pyt   __exit__6   s    c         C   s1   t  j |  j k	 r- t  j |  _ |  j t  _ n  d S(   s   Set the hook.N(   t   syst   displayhookR   R   (   R
   (    (    sQ   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/core/display_trap.pyR   =   s    c         C   s   |  j  t _ d S(   s   Unset the hook.N(   R   R   R   (   R
   (    (    sQ   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/core/display_trap.pyR   C   s    N(   t   __name__t
   __module__t   __doc__R   R   R   R   R   R   R   R   (    (    (    sQ   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/core/display_trap.pyR       s   				(   R   R   t   traitlets.config.configurableR    t	   traitletsR   R   (    (    (    sQ   /data/av2000/mvv/env_mvv/lib/python2.7/site-packages/IPython/core/display_trap.pyt   <module>	   s   