U e5d}�@sHddlmZdZdZdZdZdZdZdZd Z d Z d Z d Z d Z dZdZdZdZdZGdd�de�Zd5dd�Zd6dd�Zd7dd�Zd8dd�Zd9dd�Zd:dd �Zd;d!d"�Zd�)�Dialog�error�infoZquestionZwarningZabortretryignore�okZokcancelZ retrycancelZyesnoZ yesnocancel�abortZretry�ignoreZcancelZyesZnoc@seZdZdZdZdS)�Messagez A message boxZ tk_messageBoxN)�__name__� __module__� __qualname__�__doc__Zcommand�r r �*/usr/lib64/python3.8/tkinter/messagebox.pyr9srNcKsl|rd|kr||d<|r(d|kr(||d<|r4||d<|r@||d<tf|���}t|t�rd|r`tStSt|�S)NZicon�type�title�message)rZshow� isinstance�bool�YES�NO�str)rrZ_iconZ_type�options�resr r r�_showCs   rcKst||ttf|�S)zShow an info message)r�INFO�OK�rrrr r r�showinfoRsrcKst||ttf|�S)zShow a warning message)r�WARNINGrrr r r� showwarningWsrcKst||ttf|�S)zShow an error message)r�ERRORrrr r r� showerror\sr!cKst||ttf|�S)zAsk a question)r�QUESTION�YESNOrr r r� askquestionasr$cKst||ttf|�}|tkS)z@Ask if operation should proceed; return true if the answer is ok)rr"�OKCANCELr�rrr�sr r r� askokcancelfsr(cKst||ttf|�}|tkS)z0Ask a question; return true if the answer is yes)rr"r#rr&r r r�askyesnolsr)cKs.t||ttf|�}t|�}|tkr&dS|tkS)zDAsk a question; return true if the answer is yes, None if cancelled.N)rr"� YESNOCANCELr�CANCELrr&r r r�askyesnocancelrs r,cKst||ttf|�}|tkS)zDAsk if operation should be retried; return true if the answer is yes)rr� RETRYCANCEL�RETRYr&r r r�askretrycancel|sr/�__main__ZSpamzEgg Informationz Egg Warningz Egg Alertz Question?ZproceedzProceed?zyes/nozGot it?z yes/no/cancelzWant it?z try againz Try again?)NNNN)NN)NN)NN)NN)NN)NN)NN)NN)Ztkinter.commondialogrr rr"rZABORTRETRYIGNORErr%r-r#r*ZABORTr.ZIGNOREr+rrrrrrr!r$r(r)r,r/r �printr r r r�sH