python (3.11.7)
    e:                        d Z ddlZddlZddlZddlZddlmZmZ ddl	m
Z
mZmZm
Z
mZmZ ddlmZmZmZmZmZ ddl	mZ ddlmZ ddlmZ  G d	 d
e
          Z G d de          Z G d
 de          Z G d de          Z G d de          Z G d de          Z e!dk    r)ddl"m#Z#  e#ddd           ddl$m%Z%  e%eee            dS dS )a|  
Dialogs that query users and verify the answer before accepting.
Query is the generic base class for a popup dialog.
The user must either enter a valid answer or close the dialog.
Entries are validated when <Return> is entered or [Ok] is clicked.
Entries are ignored when [Cancel] or [X] are clicked.
The 'return value' is .result set to either a valid answer or None.
Subclass SectionName gets a name for a new config file section.
Configdialog uses it for new highlight theme and keybinding set names.
Subclass ModuleName gets a name for File => Open Module.
Subclass HelpSource gets menu item and path for additions to Help menu.
    N)
executableplatform)Toplevel	StringVar
BooleanVarWES)FrameButtonEntryLabelCheckbutton)
filedialog)Font)
_setup_dialogc                   `     e Zd ZdZdi ddddZddZd Zdd
Zd ZddZ	dd
Z
 fdZ xZS )QueryzoBase class for getting verified answer from a user.
    For this base class, accept any non-blank string.
     Ftext0
used_names_htest_utestc                   || _         || _        || _        || _        t	          j        | |           |                                  |                     |           |                     |           |s| 	                                 t          |            | j        dk    r|                     d| j
                   |                     d| j
                   |                     d| j
                   |                     d| j                   |                     d| j                   |                                  |                                  |                     d|                                |                                dz  |                                 dz  z
  z   |                                |s/|                                dz  |                                 dz  z
  nd	z   fz             |                     d
d
           |sC|                                  | j                                         |                                  dS dS )
a  Create modal popup, return when destroyed.
        Additional subclass init must be done before this unless
        _utest=True is passed to suppress wait_window().
        title - string, title of popup dialog
        message - string, informational message to display
        text0 - initial value for entry
        used_names - names already in use
        _htest - bool, change box location when running htest
        _utest - bool, leave window hidden and not modal
        aquaz<Command-.>z<Key-Escape>WM_DELETE_WINDOWz<Key-Return>z
<KP_Enter>z+%d+%d      F)heightwidthN)parentmessager   r   r   __init__withdrawtitle	transientgrab_setr   _windowingsystembindcancelprotocolokcreate_widgetsupdate_idletasksgeometrywinfo_rootxwinfo_widthwinfo_reqwidthwinfo_rootywinfo_heightwinfo_reqheight	resizable	deiconifyentry	focus_setwait_window)selfr"