Ë
    JæÂeb  ã                   ó’   — d Z ddlmZ ddlmZmZ ddl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mZ dd	lmZmZ  G d
„ de«      Zy)z
Pythonpath manager plugin.
é    )ÚSignal)ÚPluginsÚSpyderPluginV2)Úon_plugin_availableÚon_plugin_teardown©Ú_)ÚApplicationActions)ÚApplicationMenusÚToolsMenuSections)ÚApplicationToolbarsÚMainToolbarSections)ÚPythonpathActionsÚPythonpathContainerc                   óø  — e Zd ZdZdZej                  ej                  gZej                  gZ
eZeZdZdZ eee«      Z	 ed„ «       Zd„ Zd„ Zd„ Z eej                  ¬«      d	„ «       Z eej                  ¬«      d
„ «       Z eej                  ¬«      d„ «       Z eej                  ¬«      d„ «       Z eej                  ¬«      d„ «       Z eej                  ¬«      d„ «       Zd„ Z d„ Z!e"d„ «       Z#d„ Z$d„ Z%y)ÚPythonpathManagerz$
    Pythonpath manager plugin.
    Úpythonpath_managerFc                  ó   — t        d«      S )NzPYTHONPATH managerr   © ó    úB/usr/lib/python3/dist-packages/spyder/plugins/pythonpath/plugin.pyÚget_namezPythonpathManager.get_nameA   s   € äÐ%Ó&Ð&r   c                 ó   — t        d«      S )Nz=Manager of additional locations to search for Python modules.r   ©Úselfs    r   Úget_descriptionz!PythonpathManager.get_descriptionE   s   € Üð ó ð 	r   c                 ó$   — | j                  d«      S )NÚpython)Úcreate_iconr   s    r   Úget_iconzPythonpathManager.get_iconI   s   € Ø×Ñ Ó)Ð)r   c                 ón   — | j                  «       }|j                  j                  | j                  «       y ©N)Úget_containerÚsig_pythonpath_changedÚconnect)r   Ú	containers     r   Úon_initializezPythonpathManager.on_initializeL   s*   € Ø×&Ñ&Ó(ˆ	Ø×(Ñ(×0Ñ0°×1LÑ1LÕMr   )Úpluginc                 ó  — | j                  «       }| j                  t        j                  «      }|j	                  |j
                  t        j                  t        j                  t        j                  t        j                  ¬«       y )N)Úmenu_idÚsectionÚbeforeÚbefore_section)r#   Ú
get_pluginr   ÚMainMenuÚadd_item_to_application_menuÚpath_manager_actionr   ÚToolsr   r
   ÚSpyderUserEnvVariablesÚExternal)r   r&   Ú	main_menus      r   Úon_main_menu_availablez(PythonpathManager.on_main_menu_availableP   sd   € à×&Ñ&Ó(ˆ	Ø—O‘O¤G×$4Ñ$4Ó5ˆ	à×.Ñ.Ø×)Ñ)Ü$×*Ñ*Ü%×+Ñ+Ü%×<Ñ<Ü,×5Ñ5ð 	/õ 	
r   c                 óÖ   — | j                  t        j                  «      }|j                  j	                  | j
                  «       |j                  j	                  | j                  «       y r"   )r.   r   ÚProjectsÚsig_project_loadedr%   Ú_on_project_loadedÚsig_project_closedÚ_on_project_closed©r   Úprojectss     r   Úon_projects_availablez'PythonpathManager.on_projects_available]   sJ   € à—?‘?¤7×#3Ñ#3Ó4ˆØ×#Ñ#×+Ñ+¨D×,CÑ,CÔDØ×#Ñ#×+Ñ+¨D×,CÑ,CÕDr   c                 óÖ   — | j                  «       }| j                  t        j                  «      }|j	                  |j
                  t        j                  t        j                  ¬«       y )N)Ú
toolbar_idr+   )
r#   r.   r   ÚToolbarÚadd_item_to_application_toolbarr1   r   ÚMainr   ÚApplicationSection)r   r&   Útoolbars      r   Úon_toolbar_availablez&PythonpathManager.on_toolbar_availablec   sP   € à×&Ñ&Ó(ˆ	Ø—/‘/¤'§/¡/Ó2ˆØ×/Ñ/Ø×)Ñ)Ü*×/Ñ/Ü'×:Ñ:ð 	0õ 	
r   c                 ó    — | j                  t        j                  «      }|j                  t        j
                  t        j                  ¬«       y )N)r*   )r.   r   r/   Ú!remove_item_from_application_menur   ÚManagerr   r2   )r   r5   s     r   Úon_main_menu_teardownz'PythonpathManager.on_main_menu_teardownm   s;   € à—O‘O¤G×$4Ñ$4Ó5ˆ	Ø×3Ñ3Ü×%Ñ%Ü$×*Ñ*ð 	4õ 	
r   c                 óÖ   — | j                  t        j                  «      }|j                  j	                  | j
                  «       |j                  j	                  | j                  «       y r"   )r.   r   r8   r9   Ú
disconnectr:   r;   r<   r=   s     r   Úon_projects_teardownz&PythonpathManager.on_projects_teardownu   sJ   € à—?‘?¤7×#3Ñ#3Ó4ˆØ×#Ñ#×.Ñ.¨t×/FÑ/FÔGØ×#Ñ#×.Ñ.¨t×/FÑ/FÕGr   c                 ó    — | j                  t        j                  «      }|j                  t        j
                  t        j                  ¬«       y )N)rA   )r.   r   rB   Ú$remove_item_from_application_toolbarr   rJ   r   rD   )r   rF   s     r   Úon_toolbar_teardownz%PythonpathManager.on_toolbar_teardown{   s9   € à—/‘/¤'§/¡/Ó2ˆØ×4Ñ4Ü×%Ñ%Ü*×/Ñ/ð 	5õ 	
r   c                 ó>   — | j                  «       j                  «       S )z1Get Pythonpath paths handled by Spyder as a list.)r#   Úget_spyder_pythonpathr   s    r   rS   z'PythonpathManager.get_spyder_pythonpath„   s   € à×!Ñ!Ó#×9Ñ9Ó;Ð;r   c                 ó@   — | j                  «       j                  «        y)zShow Path manager dialog.N)r#   Úshow_path_managerr   s    r   rU   z#PythonpathManager.show_path_managerˆ   s   € à×ÑÓ×.Ñ.Õ0r   c                 ó6   — | j                  «       j                  S r"   )r#   Úpath_manager_dialogr   s    r   rW   z%PythonpathManager.path_manager_dialogŒ   s   € à×!Ñ!Ó#×7Ñ7Ð7r   c                 óB   — | j                  «       j                  |«       y r"   ©r#   Úupdate_active_project_path©r   Úpaths     r   r:   z$PythonpathManager._on_project_loaded‘   ó   € Ø×ÑÓ×7Ñ7¸Õ=r   c                 óB   — | j                  «       j                  d «       y r"   rY   r[   s     r   r<   z$PythonpathManager._on_project_closed”   r]   r   N)&Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚNAMEr   rB   r/   ÚREQUIRESr8   ÚOPTIONALr   ÚCONTAINER_CLASSÚCONF_SECTIONÚ	CONF_FILEÚCAN_BE_DISABLEDr   Úobjectr$   Ústaticmethodr   r   r    r'   r   r6   r?   rG   r   rK   rN   rQ   rS   rU   ÚpropertyrW   r:   r<   r   r   r   r   r      s\  „ ñð  €DØ—‘ ×!1Ñ!1Ð2€HØ× Ñ Ð!€HØ)€OØ€LØ€IØ€Oá# F¨FÓ3Ððð4 ñ'ó ð'òò*òNñ  × 0Ñ 0Ô1ñ

ó 2ð

ñ  × 0Ñ 0Ô1ñEó 2ðEñ
  §¡Ô0ñ
ó 1ð
ñ ˜w×/Ñ/Ô0ñ
ó 1ð
ñ ˜w×/Ñ/Ô0ñHó 1ðHñ
 ˜wŸ™Ô/ñ
ó 0ð
ò<ò1ð ñ8ó ð8ò>ó>r   r   N)rb   Úqtpy.QtCorer   Úspyder.api.pluginsr   r   Ú)spyder.api.plugin_registration.decoratorsr   r   Úspyder.api.translationsr	   Úspyder.plugins.application.apir
   Úspyder.plugins.mainmenu.apir   r   Úspyder.plugins.toolbar.apir   r   Ú#spyder.plugins.pythonpath.containerr   r   r   r   r   r   ú<module>ru      s6   ðñõ ç 6÷-å %Ý =ß Kß O÷,ô|>˜õ |>r   