o )1_ @sdZdZzddlZddlmZeejZddlmZWneefy1dZddZ ddZ YdSwdd lm Z m Z m Z mZejZGd d d e ZejjZejge_eje_ejjZejeege_eje_ejj Zejejge_eje_ejjZejege_eje_ejj Z!eje ejeeejge!_eje!_ejj"Z#ejejejeeejge#_eje#_ejj$Z%ej&ge%_eje%_d d Z'ddZ efddZddZ dddZddZ(ddZ"ddZ)dS)iiN) LibraryLoader)wintypescGdSN_rr0/usr/lib/python3/dist-packages/colorama/win32.pyr cGrrrrrrr r r )byref Structurec_charPOINTERc@s>eZdZdZdefdefdejfdejfdefgZddZ d S) CONSOLE_SCREEN_BUFFER_INFOzstruct in wincon.h.dwSizedwCursorPosition wAttributessrWindowdwMaximumWindowSizec CsHd|jj|jj|jj|jj|j|jj|jj|jj|jj |j j|j jf S)Nz"(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)) rYXrrrTopLeftBottomRightr)selfrrr __str__s   z"CONSOLE_SCREEN_BUFFER_INFO.__str__N) __name__ __module__ __qualname____doc__COORDrWORD SMALL_RECT_fields_rrrrr rs rcCst}t|t|}t|Sr)r_GetConsoleScreenBufferInfor bool)handlecsbisuccessrrr _winapi_test\s r+cCstddttttfDS)Ncss|]}t|VqdSr)r+).0hrrr cszwinapi_test..)any _GetStdHandleSTDOUTSTDERRrrrr winapi_testbsr3cCs t|}t}t|t|}|Sr)r0rr&r ) stream_idr(r)r*rrr GetConsoleScreenBufferInfofs r5cCst|}t||Sr)r0_SetConsoleTextAttribute)r4attrsr(rrr SetConsoleTextAttributems r8TcCsvt|}|jdks|jdkrdSt|jd|jd}|r2ttj}|j|j7_|j|j7_t|}t ||S)Nr) r"rrr5r1rrrr0_SetConsoleCursorPosition)r4positionadjustadjusted_positionsrr(rrr SetConsoleCursorPositionqs  r?cCsBt|}t|}t|}td}t||||t|}|jS)Nr)r0rencoderDWORD_FillConsoleOutputCharacterAr value)r4charlengthstartr( num_writtenr*rrr FillConsoleOutputCharacters   rHcCs:t|}t|}t|}td}t||||t|S)za FillConsoleOutputAttribute( hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten )r)r0rr#rA_FillConsoleOutputAttributer )r4attrrErFr( attributerGrrr FillConsoleOutputAttributes   rLcCst|Sr)_SetConsoleTitleW)titlerrr SetConsoleTitlesrO)T)*r1r2ctypesrWinDLLwindllrAttributeError ImportErrorr8r3r r rr_COORDr"rkernel32 GetStdHandler0rAargtypesHANDLErestyper5r&BOOLr6r#r?r:FillConsoleOutputCharacterArBrLrISetConsoleTitleWrMLPCWSTRr+rHrOrrrr s|