3 �Pf� � @ s@ d dl mZ G dd� de�ZG dd� de�ZG dd� de�ZdS ) � )�win32c @ s, e Zd ZdZdZdZdZdZdZdZ dZ d S ) �WinColor� r � � � � � � N)�__name__� __module__�__qualname__ZBLACKZBLUEZGREENZCYANZREDZMAGENTAZYELLOWZGREY� r r �/usr/lib/python3.6/winterm.pyr s r c @ s e Zd ZdZdZdZdS )�WinStyler � � N)r r r ZNORMAL�BRIGHT�BRIGHT_BACKGROUNDr r r r r s r c @ s� e Zd Zdd� Zdd� Zdd� Zd dd �Zd!dd�Zd"d d�Zd#dd�Z d$dd�Z dd� Zd%dd�Zd&dd�Z d'dd�Zd(dd�Zdd� ZdS ))�WinTermc C s> t jt j�j| _| j| j� | j| _| j| _ | j | _d| _d S )Nr ) r �GetConsoleScreenBufferInfo�STDOUTZwAttributes�_default� set_attrs�_fore� _default_fore�_back� _default_back�_style�_default_style�_light)�selfr r r �__init__ s zWinTerm.__init__c C s | j | jd | j| jB S )N� )r r r r )r! r r r � get_attrs$ s zWinTerm.get_attrsc C s. |d@ | _ |d? d@ | _|tjtjB @ | _d S )Nr r )r r r r r r )r! �valuer r r r ' s zWinTerm.set_attrsNc C s | j | j� | j| jd� d S )N)�attrs)r r �set_console)r! � on_stderrr r r � reset_all, s zWinTerm.reset_allFc C sL |d kr| j }|| _|r*| jtjO _n| jtj M _| j|d� d S )N)r( )r r r r r r' )r! �fore�lightr( r r r r* 0 s zWinTerm.forec C sL |d kr| j }|| _|r*| jtjO _n| jtj M _| j|d� d S )N)r( )r r r r r r' )r! �backr+ r( r r r r, ; s zWinTerm.backc C s$ |d kr| j }|| _| j|d� d S )N)r( )r r r' )r! �styler( r r r r- F s z WinTerm.stylec C s0 |d kr| j � }tj}|r tj}tj||� d S )N)r$ r r �STDERRZSetConsoleTextAttribute)r! r&