
    r                     r    d dl mZ d dlmZ ddlmZ ddlmZ dZ G d de	      Z
 ej                  e
       y	)
    )unicode_literals)Output   )Win32Output)Vt100_Output)ConEmuOutputc                       e Zd ZdZd Zd Zy)r   a  
    ConEmu (Windows) output abstraction.

    ConEmu is a Windows console application, but it also supports ANSI escape
    sequences. This output class is actually a proxy to both `Win32Output` and
    `Vt100_Output`. It uses `Win32Output` for console sizing and scrolling, but
    all cursor movements and scrolling happens through the `Vt100_Output`.

    This way, we can have 256 colors in ConEmu and Cmder. Rendering will be
    even a little faster as well.

    http://conemu.github.io/
    http://gooseberrycreative.com/cmder/
    c                 H    t        |      | _        t        |d       | _        y )Nc                       y )N r       8lib/third_party/prompt_toolkit/terminal/conemu_output.py<lambda>z'ConEmuOutput.__init__.<locals>.<lambda>   s    r   )r   win32_outputr   vt100_output)selfstdouts     r   __init__zConEmuOutput.__init__   s    '/(>r   c                 b    |dv rt        | j                  |      S t        | j                  |      S )N)get_sizeget_rows_below_cursor_positionenable_mouse_supportdisable_mouse_supportscroll_buffer_to_promptget_win32_screen_buffer_infoenable_bracketed_pastedisable_bracketed_paste)getattrr   r   )r   names     r   __getattr__zConEmuOutput.__getattr__    s9     I I 4,,d334,,d33r   N)__name__
__module____qualname____doc__r   r    r   r   r   r   r      s    ?4r   r   N)
__future__r   prompt_toolkit.rendererr   r   r   r   r   __all__objectr   registerr   r   r   <module>r*      s4    ' * % &
46 4:  r   