File: //lib64/python3.6/curses/__pycache__/__init__.cpython-36.pyc
3
  \&
  �               @   sb   d Z ddlT ddlZddlZdd� Zdd� Zye W n  e	k
rT   dd	lmZ Y nX d
d� Z
dS )z�curses
The main package for curses support for Python.  Normally used by importing
the package, and perhaps a particular module inside it.
   import curses
   from curses import textpad
   curses.initscr()
   ...
�    )�*Nc              C   st   dd l } dd l}ttjjdd�tjj� d� | j	� }x:| j
j� D ],\}}|dd� dks`|d	kr@t|||� q@W |S )
Nr   ZTERM�unknown)Zterm�fd�   ZACS_�LINES�COLS)r   r   )
�_curses�cursesZ	setupterm�_os�environ�get�_sys�
__stdout__�fileno�initscr�__dict__�items�setattr)r   r	   �stdscr�key�value� r   �'/usr/lib64/python3.6/curses/__init__.pyr      s    r   c              C   s@   dd l } dd l}| j� }t| d�r*| j|_t| d�r<| j|_|S )Nr   �COLORS�COLOR_PAIRS)r   r	   �start_color�hasattrr   r   )r   r	   Zretvalr   r   r   r   *   s    
r   �   )�has_keyc             O   sr   zDt � }t�  t�  |jd� y
t�  W n   Y nX | |f|�|�S dt� krl|jd� t�  t�  t�  X dS )a  Wrapper function that initializes curses and calls another function,
    restoring normal keyboard/screen behavior on error.
    The callable object 'func' is then passed the main window 'stdscr'
    as its first argument, followed by any other arguments passed to
    wrapper().
    r   Nr   r   )	r   ZnoechoZcbreakZkeypadr   �localsZechoZnocbreakZendwin)�func�args�kwdsr   r   r   r   �wrapper?   s    
r#   )�__doc__r   �osr
   �sysr
   r   r   r   �	NameErrorr#   r   r   r   r   �<module>   s