3 υ_@s@ddlmZGdddeZGdddeZGdddeZdS) )win32c@s,eZdZdZdZdZdZdZdZdZ dZ d S) WinColorrN) __name__ __module__ __qualname__ZBLACKZBLUEZGREENZCYANZREDZMAGENTAZYELLOWZGREYrr/usr/lib/python3.6/winterm.pyrsrc@seZdZdZdZdZdS)WinStylerN)r r r ZNORMALBRIGHTBRIGHT_BACKGROUNDrrrrrsrc@seZdZddZddZddZd dd Zd!d d Zd"d dZd#ddZ d$ddZ ddZ d%ddZ d&ddZ d'ddZd(ddZddZdS))WinTermcCs>tjtjj|_|j|j|j|_|j|_ |j |_ d|_ dS)Nr) rGetConsoleScreenBufferInfoSTDOUTZ wAttributes_default set_attrs_fore _default_fore_back _default_back_style_default_style_light)selfrrr__init__s  zWinTerm.__init__cCs|j|jd|j|jBS)N)rrrr )r!rrr get_attrs$szWinTerm.get_attrscCs.|d@|_|d?d@|_|tjtjB@|_dS)Nr r)rrrrrr)r!valuerrrr's zWinTerm.set_attrsNcCs|j|j|j|jddS)N)attrs)rr set_console)r! on_stderrrrr reset_all,s zWinTerm.reset_allFcCsL|dkr|j}||_|r*|jtjO_n|jtjM_|j|ddS)N)r()rrr rrr')r!forelightr(rrrr*0sz WinTerm.forecCsL|dkr|j}||_|r*|jtjO_n|jtjM_|j|ddS)N)r()rrr rrr')r!backr+r(rrrr,;sz WinTerm.backcCs$|dkr|j}||_|j|ddS)N)r()rrr')r!styler(rrrr-Fsz WinTerm.stylecCs0|dkr|j}tj}|r tj}tj||dS)N)r$rrSTDERRZSetConsoleTextAttribute)r!r&r(handlerrrr'Ls zWinTerm.set_consolecCs,tj|j}|jd7_|jd7_|S)Nr)rrdwCursorPositionXY)r!r/positionrrr get_positionTs zWinTerm.get_positioncCs,|dkr dStj}|rtj}tj||dS)N)rrr.SetConsoleCursorPosition)r!r3r(r/rrrset_cursor_position\s zWinTerm.set_cursor_positioncCsBtj}|rtj}|j|}|j||j|f}tj||dddS)NF)Zadjust)rrr.r4r2r1r5)r!xyr(r/r3Zadjusted_positionrrr cursor_adjustfs  zWinTerm.cursor_adjustrc Cstj}|rtj}tj|}|jj|jj}|jj|jj|jj}|dkrX|j}||}|dkrrtjdd}|}n|dkrtjdd}|}tj |d||tj ||j |||dkrtj |ddS)Nrrr )rr) rrr.rdwSizer1r2r0COORDFillConsoleOutputCharacterFillConsoleOutputAttributer$r5) r!moder(r/csbiZcells_in_screenZcells_before_cursor from_coordcells_to_eraserrr erase_screenns&   zWinTerm.erase_screencCstj}|rtj}tj|}|dkr8|j}|jj|jj}|dkrZtjd|jj}|jj}n |dkrztjd|jj}|jj}tj |d||tj ||j ||dS)Nrrrr:) rrr.rr0r;r1r<r2r=r>r$)r!r?r(r/r@rArBrrr erase_lines  zWinTerm.erase_linecCstj|dS)N)rZSetConsoleTitle)r!titlerrr set_titleszWinTerm.set_title)N)NFF)NFF)NF)NF)NF)F)rF)rF)r r r r"r$rr)r*r,r-r'r4r6r9rCrDrFrrrrrs       rN)robjectrrrrrrrs