
    G@dA                         d Z ddlZddlmZ ddlmZmZmZmZm	Z	 ddl
mZ ddlmZ ddlmZmZ ddlmZ  G d	 d
e          ZdS )zShortcut configuration page.    N)PYQT5)QHBoxLayoutQLabelQMessageBoxQPushButtonQVBoxLayout)PluginConfigPage)_)ShortcutFinderShortcutsTable)imac                   ,    e Zd ZdZd Zd ZddZd ZdS )	ShortcutsConfigPageTc                 @    t           t          j                   _        t	           j         j        j                   _        t          t          d                     _	        t          t          d                     _        t          t          d                     _         j         j        _         j                             j                                                    j                                          j        j                            t          d                      j                            d           t'                      }t)                      }|                     j                   |                     j	                   |                     j                   |                     j                   |                    |           |                     j                                        |                                 j         j                                         j         j                    j        j        j                            d	 fd	            j        j                             j                   d S )
N)
text_colorzSearch: zReset to default valueszHere you can browse the list of all available shortcuts in Spyder. You can also customize them by double-clicking on any entry in this table.z(Search for a shortcut in the table aboveT c                 0                         ||          S N)has_been_modified)i1i2rolesoptsectselfs        Alib/python3.11/site-packages/spyder/plugins/shortcuts/confpage.py<lambda>z0ShortcutsConfigPage.setup_page.<locals>.<lambda>?   s    43I3Ic4 4     )r   r   )r   r   MAIN_FG_COLORtabler   	set_regexfinderr   r
   label_finderr   	reset_btn	top_labelset_shortcut_datapluginget_shortcut_dataload_shortcutssetPlaceholderTextsetWordWrapr   r   	addWidget	addLayout	setLayoutsetTabOrderproxy_modeldataChangedconnectclickedreset_to_default)r   hlayoutvlayouts   `  r   
setup_pagezShortcutsConfigPage.setup_page   sD   #DS5FGGG
$TZ1EFF"1Z==11$Q'@%A%ABB % & &' ' !K

$$T[%B%B%D%DEEE
!!###
,,899	; 	; 	;""4((( ----$.)))$+,,,$+&&&$*%%%'"""$.)))wT[111dn555 	
*22    	 	 	 	&&t'<=====r   c                 8    | j                                          d S r   )r    check_shortcuts)r   s    r   check_settingsz"ShortcutsConfigPage.check_settingsC   s    
""$$$$$r   Fc                    |sZt          j        | t          d          t          d          t           j        t           j        z            }|t           j        k    rdS | j                                         | j                                         | j        	                                 | 
                                 |                     d           dS )z?Reset to default values of the shortcuts making a confirmation.zShortcuts resetz'Do you want to reset to default values?NF)r   warningr
   YesNor'   reset_shortcutsapply_shortcutsr    r)   load_from_confset_modified)r   forceresets      r   r4   z$ShortcutsConfigPage.reset_to_defaultF   s     		'#$$;<<+.0	 E &&##%%%##%%%
!!###%     r   c                     | j                                          | j                                         | j                            |           d S r   )r    save_shortcutsr'   r@   
apply_conf)r   optionss     r   apply_settingsz"ShortcutsConfigPage.apply_settingsY   sF    
!!#####%%%w'''''r   N)F)__name__
__module____qualname__APPLY_CONF_PAGE_SETTINGSr7   r:   r4   rI    r   r   r   r      s\        #%> %> %>N% % %! ! ! !&( ( ( ( (r   r   )__doc__reqtpyr   qtpy.QtWidgetsr   r   r   r   r   spyder.api.preferencesr	   spyder.api.translationsr
   &spyder.plugins.shortcuts.widgets.tabler   r   spyder.utils.icon_managerr   r   rN   r   r   <module>rW      s   # " 
			      ) ) ) ) ) ) ) ) ) ) ) ) ) ) 4 3 3 3 3 3 % % % % % %D D D D D D D D ) ) ) ) ) )C( C( C( C( C(* C( C( C( C( C(r   