
    G@d)                        d dl Z d dlmZ d dlZd dlZd dlmZm	Z	 d dl
mZmZ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 d dlmZmZ d dlZ G d	 d
          Z e            ZddZddZ ddZ!d Z"d Z#d Z$ej%        Z%dS )    N)QBuffer
QByteArray)QColorQIconQImageQPainter)QStyleQWidget)CONF)get_image_path)is_text_file)QStylePaletteSpyderPalettec                   B    e Zd ZdZd ZddZddZddZd Zd	 Z	d
 Z
dS )IconManagerz!Class that manages all the icons.c                 !   t           j        | _        d dD             | _        dddddddd| _        dddd| _        i | _        t          j        	                    d	          rd
| _
        d| _        n-t          j        dk    rd| _
        d
| _        nd| _
        d| _        i ddddddddddddddddddddddddddd dd!dd"dd#d$i d%d$d&d$d'd(d)d*d+d*d,d*d-d.d/d0d1d0d2d3d4d5d6d7d8d9d:d;d<d=d>d=d?d@d@d=dA| _        t          j        t          j        t          j        t&                              dB          dCdD| _        i dEdFdG| j        igdHdIdG| j        igdJdKdG| j        igdLdMdG| j        igdNdOdGt           j        igdPdQdG| j        igdRdSdG| j        igdTdUdG| j        igdVdW| j        dXdYgdZd[dG| j        igd\d]dG| j        igd^d_dGt           j        igd`dadGt           j        igdbdcdG| j        igdddedG| j        igdfdgdG| j        igdhdidG| j        igi djdkdG| j        igdldmdG| j        igdndodG| j        igdpdqdG| j        igdrdsdG| j        igdtdudG| j        igdvdwdG| j        igdxdyt           j        dzdd{gd|dyt           j        dd}gd~dt           j        dd}gdddG| j        igddt           j        dd}gdddGt           j        igdddGt           j        igdddGt           j        igdddGt           j        igdddGt           j        igi ddadGt           j        igdd_dGt           j        igdddG| j        igdddt           j        t4          j        dgigdddt           j        t4          j        dgigdddt           j        t4          j        dgigdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddGt           j        igdddGt           j        igdddGt           j        igi dddGt           j        igdddGt           j        igdddG| j        igddddGt           j        idGt           j        igigddddGt           j        idGt           j        igigdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igddddGt           j        idGt           j         idGt           j!        igigdddG| j        igi dddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igddmdG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igi dddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igd ddG| j        igdddG| j        igdddG| j        igdddG| j        igdd	dG| j        igd
ddG| j        igdddG| j        igdddG| j        igi dddG| j        igdddG| j        igdddG| j        igdd| j        dXdYgdddG| j        igdddG| j        igdddGt           j        igdddGt           j        igdd dG| j        igd!d"dG| j        igd#d$dG| j        igd%ddG| j        igd&d'dG| j        igd(d)dG| j        igd*d+dG| j        igd,d-dG| j        igd.d/dG| j        igi d0dwdG| j        igd1d2dG| j        igd3d4dG| j        igd5d6dG| j        igd7d8dG| j        igd9dkdG| j        igd:didG| j        igdd;dG| j        igdd<dG| j        igdd=dG| j        igdd>dG| j        igd?d@dG| j        igdAdBdG| j        igdCdDdG| j        igdEdUdG| j        igddFdG| j        igddGdG| j        igi ddHdG| j        igddIdG| j        igd$dJdG| j        igd(dKdG| j        igd*dLdG| j        igd.dMdG| j        igd0dNdG| j        igd3dOdG| j        igd5dPdG| j        igd7dQdG| j        igd9dRdG| j        igd;dSdG| j        igd@dTdG| j        igd=dUdG| j        igdVdkdG| j        igdWddG| j        igdXdYdG| j        igi dZd[dG| j        igd\d]| j        d^dYgd_d$dG| j        igd`ddG| j        igdadbdG| j        igdcdddG| j        igdedfdG| j        igdgdht           j        | j
        d}gdidjt           j        | j
        d}gdkdldG| j        igdmdndG| j        igdodpdG| j        igdqdrdG| j        igdsdtdG| j        igdudvdG| j        igdwdxdG| j        igdydzdG| j        igi d{d|t           j        | j
        d}gdGd}t           j"        | j
        d}gd~dt           j"        | j
        d}gddt           j"        | j
        d}gdd}t           j"        | j
        d}gddt           j"        | j
        d}gdd| j        | j
        d}gddi| j        | j        d}gddt           j#        | j
        d}gddt           j$        | j
        d}gddt           j"        | j
        d}gddt           j"        | j
        d}gddt           j"        | j
        d}gddt           j"        | j
        d}gddt           j%        | j
        d}gddt           j%        | j
        d}gddt           j%        | j
        d}gi dd}t           j        | j
        d}gddt           j"        | j
        d}gddt           j        | j
        d}gddt           j        | j
        d}gddt           j$        | j
        d}gddt           j        | j
        d}gddt           j"        | j
        d}gdd|t           j"        | j
        d}gddt           j$        | j
        d}gddt           j&        | j
        d}gddt           j        | j
        d}gddt           j'        | j
        d}gddt           j'        | j
        d}gddt           j'        | j
        d}gddt           j&        | j        d}gddt           j&        | j        d}gddt           j        | j
        d}gi dd}t           j"        | j
        d}gddt           j'        | j
        d}gddt           j        | j        d}gddt           j        | j        d}gddyt           j(        | j        d}gdddG| j        igdddG| j        igddwdG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdddG| j        igdĐddG| j        igdƐddG| j        igdȐddG| j        igdɐddG| j        igi dʐddG| j        igdːddG| j        igd͐ddGt           j(        igdϐddG| j        igdАddGt           j(        igdҐddG| j        igddwdG| j        igdԐd/dG| j        igdՐd/dG| j        igdddGt           j        igdddGt           j        igdؐddG| j        igdڐddG| j        igdܐddG| j        igdސddG| j        igdddG| j        igdddG| j        igddG| j        igddG| j        igddG| j        igddG| j        igddG| j        igddG| j        igddG| j        igddG| j        igddG| j        igd	| _)        d S (  Nc                     i | ]}|d S )ArchiveFileIcon ).0xs     9lib/python3.11/site-packages/spyder/utils/icon_manager.py
<dictcomp>z(IconManager.__init__.<locals>.<dictcomp>   s'     7 7 71!. 7 7 7    )zipzx-tarzx-7z-compressedrarPowerpointFileIconWordFileIconExcelFileIconPDFIcon)zvnd.ms-powerpointz=vnd.openxmlformats-officedocument.presentationml.presentationmswordz;vnd.openxmlformats-officedocument.wordprocessingml.documentzvnd.ms-excelz5vnd.openxmlformats-officedocument.spreadsheetml.sheetpdf)z.xlsxz.docxz.pptxlinuxg      ?g?ntg?g?z.c	CFileIconz.hz.ccCppFileIconz.hhz.cppz.cxxz.c++z.hppz.hxxz.h++z.csCsharpFileIconz.asmxz.pyPythonFileIconz.py3z.pyxz.pywz.javaJavaFileIconz.javz.jz.jsJavascriptFileIconz.r	RFileIconz.rnwz.rmdz.swiftSwiftFileIconz.csvGridFileIconz.tsvz.batWindowsFileIconz.pslPowershellFileIconz.shDollarFileIconz.mdMarkdownFileIconz.jsonJsonFileIconz.htmlCodeFileIconz.cssz.ymlExclamationFileIcon)z.yamlz.xmlz../fontsF)	directoryloadedenvironment)zmdi.cube-outlinecolordrag_dock_widget)zmdi.drag-variantformat_letter_case)zmdi.format-letter-caseformat_letter_matches)zmdi.format-letter-matches
no_matches)zmdi.do-not-disturb
clear_text)zmdi.backspaceregex)z	mdi.regexlog)zmdi.file-document	configure)z
mdi.wrenchZ   )r8   rotatedbold)zmdi.format-bolditalic)zmdi.format-italic	run_small)zmdi.playstop)zmdi.stopkeyboard)zmdi.keyboard
eyedropper)zmdi.eyedroppertooloptions)zmdi.menufilenew)zmdi.filefileopen)zmdi.folder-openrevert)zmdi.undofilesave)zmdi.content-savesave_all)zmdi.content-save-all
filesaveas)zmdi.content-save-editprint)zmdi.printer	fileclose)z	mdi.closebreakpoint_transparent)zmdi.checkbox-blank-circleg      ?)r8   opacityscale_factorbreakpoint_big)r8   rT   breakpoint_cond_big)zmdi.help-circlebreakpoints)zmdi.dots-verticalarrow_debugger)zmdi.arrow-right-boldg      ?debug)zmdi.step-forward-2zarrow-step-over)zmdi.debug-step-overzarrow-continue)zmdi.fast-forwardzarrow-step-in)zmdi.debug-step-intozarrow-step-out)zmdi.debug-step-out
stop_debugrun	todo_list)zmdi.check-boldwng_list)z	mdi.alertoptions)r8   color_disabledprev_wng)zmdi.arrow-leftnext_wng)zmdi.arrow-rightprev_cursor)zmdi.hand-pointing-leftnext_cursor)zmdi.hand-pointing-rightcomment)zmdi.comment-text-outlineindent)zmdi.format-indent-increaseunindent)zmdi.format-indent-decreasetoggle_lowercase)zmdi.format-letter-case-lowertoggle_uppercase)zmdi.format-letter-case-uppergotoline)zmdi.format-line-spacingerror)zmdi.close-circlewarninginformation)zmdi.information-outlinehint)zmdi.lightbulbtodoipython_console)zmdi.consolepython)zspyder.python-logo-upzspyder.python-logo-down
pythonpathfindf)zmdi.file-findhistory)zmdi.historyhelplock)zmdi.lock	lock_open)zmdi.lock-openoutline_explorer)zmdi.file-treedictedit)zmdi.view-listprevious)zmdi.arrow-left-boldnextup)zmdi.arrow-up-boldspyder)zspyder.spyder-logo-backgroundzspyder.spyder-logo-webzspyder.spyder-logo-snakefind)zmdi.magnifyreplace)zmdi.find-replacereplace_next)zmdi6.arrow-right-bottomreplace_all)zmdi.file-replace-outlinereplace_selection)zph.rectangle-boldnumber_matches)zmdi.pound-box-outlineundoredo)zmdi.redorefresh)zmdi.refreshrestart)z
mdi.reloadeditcopy)zmdi.content-copyeditcut)zmdi.content-cut	editclear)z
mdi.delete	selectall)zmdi.select-allexit)z	mdi.poweradvanced)zmdi.package-variantbug)zmdi.bugwindow_nofullscreen)zmdi.arrow-collapse-allwindow_fullscreen)zmdi.arrow-expand-allMessageBoxWarningarredit)zmdi.table-edithome)zmdi.homeplot)zmdi.chart-linehist)zmdi.chart-histogramimshow)z	mdi.imageinsert)z	mdi.logininsert_above)zmdi.table-arrow-upinsert_below)zmdi.table-arrow-downrename)zmdi.rename-boxmove)zmdi.file-moveedit_add)zmdi.plus-boxcollapse_column)zmdi.arrow-collapse-horizontalcollapse_row)zmdi.arrow-collapse-verticaledit_remove)z	mdi.minus
browse_tab)zmdi.tabfilelist	newwindow)zmdi.window-maximizeclose_panel)zmdi.close-box-outline
fromcursor)zmdi.cursor-pointerfilter)z
mdi.filter
folder_new)zmdi.folder-plus
vcs_commit)zmdi.source-commit
vcs_browse)zmdi.source-repository
fileimport)zmdi.download
fileexport)z
mdi.uploadoptions_less)zmdi.minus-boxoptions_more	ArrowDown)zmdi.arrow-down-bold-circleArrowUp)zmdi.arrow-up-bold-circle	ArrowBack)zmdi.arrow-left-bold-circleArrowForward)zmdi.arrow-right-bold-circleDialogApplyButton)z	mdi.checkDialogCloseButtonDirClosedIcon)z
mdi.folderDialogHelpButton)zmdi.lifebuoy	VideoIcon)z	mdi.videoMessageBoxInformation)zmdi.informationDirOpenIconFileIcon)zmdi.file-excel)zmdi.file-word)zmdi.file-powerpoint)zmdi.file-pdfAudioFileIcon)zmdi.file-musicImageFileIcon)zmdi.file-imageVideoFileIcon)zmdi.file-videoTextFileIcon)zmdi.language-c)zmdi.language-cpp)zmdi.language-csharp)zmdi.language-python)zmdi.language-java)zmdi.language-javascript)zmdi.language-r)zmdi.language-swift)zmdi.grid)zmdi.windows)zmdi.powershell)zmdi.currency-usd)zmdi.markdown)zmdi.json)zmdi.exclamation)zmdi.xmlprojectarrowcollapse)zmdi.collapse-allexpand)zmdi.expand-allrestore)zmdi.subdirectory-arrow-righti  collapse_selectionexpand_selectioncopywop)zmdi.console-line	editpaste)zmdi.content-pasteedit)z
mdi.pencil
convention)zmdi.alpha-c-circlerefactor)zmdi.alpha-r-circle2uparrow)zmdi.arrow-collapse-up1uparrow)zmdi.arrow-up
2downarrow)zmdi.arrow-collapse-down
1downarrow)zmdi.arrow-downundock)zmdi.open-in-new
close_pane)zmdi.window-closetoolbar_ext_button)zmdi.dots-horizontalcompletions)zmdi.code-tags-checkkeyword)zmdi.alpha-k-box)zmdi.alpha-c-boxenum)zmdi.alpha-e-boxvalue)zmdi.alpha-v-boxconstantunit)zmdi.alpha-u-boxtext)zmdi.alphabetical-variantfilesnippet)zmdi.alpha-s-box	attribute)zmdi.alpha-a-box	reference)zmdi.alpha-r-boxvariablefieldproperty)zmdi.alpha-p-boxmodule)zmdi.alpha-m-box	namespace)zmdi.alpha-n-boxpackageclass	interface)zmdi.alpha-i-boxstringnumberboolean)zmdi.alpha-b-boxarrayobject)zmdi.alpha-o-boxkeynullenum_memberstructeventoperatortype_parameter)zmdi.alpha-t-boxprivate2)zmdi.eye-offprivate1methodconstructorfunction)zmdi.alpha-f-boxblockcomment)z	mdi.poundcell)zmdi.percentno_matchgithub)z
mdi.githubtour)zmdi.map-outlinez
tour.closez	tour.home)zmdi.skip-backwardztour.previous)zmdi.skip-previousz	tour.next)zmdi.skip-nextztour.end)zmdi.skip-forwardprofiler)zmdi.timer-outlinecondapackages)zmdi.archivezspyder.example)zmdi.eyezspyder.autopep8zspyder.memory_profilerzspyder.line_profilersymbol_find)zmdi.atzfolding.arrow_right_off)zmdi.menu-rightzfolding.arrow_right_onzfolding.arrow_down_off)zmdi.menu-downzfolding.arrow_down_onzlspserver.downzlspserver.readydependency_okdependency_warningdependency_errorbroken_image)zmdi.image-broken-variant	code_fork)zmdi.source-fork	statusbar)zmdi.dock-bottomplugins)z
mdi.puzzlezprint.fit_width)zmdi.arrow-expand-horizontalzprint.fit_page)zmdi.stretch-to-page-outline)zmdi.crop-portrait)zmdi.crop-landscape)zmdi.chevron-left)zmdi.chevron-right)zmdi.page-first)zmdi.page-last)zmdi.file-document-outline)z"mdi.file-document-multiple-outline)zmdi.ruler-square)	portrait	landscapeprevious_page	next_page
first_page	last_pagezprint.single_pagezprint.all_pageszprint.page_setup)*r   ICON_1MAIN_FG_COLOR	BIN_FILESDOCUMENT_FILESOFFICE_FILESICONS_BY_EXTENSIONsysplatform
startswithBIG_ATTR_FACTORSMALL_ATTR_FACTORosnameLANGUAGE_ICONSospjoindirnamerealpath__file__	_resourceCOLOR_WARN_2ICON_3COLOR_ERROR_1ICON_4ICON_2r   COLOR_TEXT_4GROUP_9PYTHON_LOGO_UPPYTHON_LOGO_DOWNSPYDER_LOGO_BACKGROUNDSPYDER_LOGO_WEBSPYDER_LOGO_SNAKEICON_5GROUP_11GROUP_12GROUP_5COLOR_ERROR_3COLOR_WARN_3GROUP_3_qtaargs)selfs    r   __init__zIconManager.__init__   s#   *17 7 96 7 7 7 "6+?$)7+#2
 
 %#)+ +
 #% <""7++ 	)#&D %(D""W__#&D %(D""#&D %(D"%
+%
+%
 =%
 =	%

 M%
 M%
 M%
 M%
 M%
 M%
 #%
 %%
 #%
 $%
 $%
  $!%
" ^#%
 %
$ N%%
& .'%
( ')%
* ++%
, K-%
. K/%
0 o1%
2 N3%
4 N5%
6 %7%
8 (9%
: #;%
< %=%
> ^?%
@ ^A%
B NC%
D )E%
 %
F +"I%
 %
 %
P CL2233ZA A
 
~
(=I[?\']~
(=I[?\']~
 !(CgtOaEb'c~
 $(FRVRdHe'f	~

 (?'=KeAf'g~
 (:WdFX<Y'Z~
 $BT8U'V~
 (>$J\@]'^~
 4CUbd9e9e'f~
 (<wHZ>['\~
 (>$J\@]'^~
 AU7V'W~
 A\7]'^~
 (9GTEW;X'Y~
 (;gtGY=Z'[~
  AS7T'U!~
" AS7T'U#~
 ~
$ (<wHZ>['\%~
& AS7T'U'~
( (=I[?\'])~
* (AGTM_C`'a+~
, (BWdN`Da'b-~
. (87DDV:W'X/~
0 $BT8U'V1~
2 %(FR_Rmz~  QT  IU  IU  (V3~
4 (FR_Rfx{H|H|'~5~
6 "(<H\nq>r>r't7~
8 (>$J\@]'^9~
: (A]MasvCwCw'x;~
< (?'=K_A`'a=~
> (@7ML`Ba'b?~
@ (=I]?^'_A~
B (@7ML`Ba'bC~
D (?'=K_A`'aE~
 ~
 ~
F AU7V'WG~
H AU7V'WI~
J (;gtGY=Z'[K~
L }Oi  ~K  ~X  FY  FY  EZ  9[  (\M~
N (;iTaTh  }J  }W  KX  KX  JY  >Z  ([O~
P (<yUbUi  ~K  ~X  LY  LY  KZ  ?[  (\Q~
R (CgtOaEb'cS~
T (DwPTPbFc'dU~
V (EQUQcGd'eW~
X (G'SWSeIf'gY~
Z (G'SWSeIf'g[~
\ (IGUYUgKh'i]~
^ (IGUYUgKh'i_~
` (DwPTPbFc'da~
b (=Id?e'fc~
d -B\8]'^e~
f (DwP]PeFf'gg~
 ~
 ~
h (:WmF[<\']i~
j (;g}G\=]'^k~
l (87DDV:W'Xm~
n (\_hls  vC  vR  lS  V]  _l  _}  U~  k  _@  (Ao~
p (\_hls  vC  vR  lS  V]  _l  _}  U~  k  _@  (Aq~
r (:WdFX<Y'Zs~
t (87DDV:W'Xu~
v (<wHZ>['\w~
x AS7T'Uy~
z (:WdFX<Y'Z{~
| (:WdFX<Y'Z}~
~ (:WdFX<Y'Z~
@ (@7DL^B_'`A~
B (AGTM_C`'aC~
D (>$J\@]'^E~
F (  DM  QX  Zg  Z~  P  BI  KX  Kh  Ai  ls  uB  uT  kU  OV  CW  (XG~
H (87DDV:W'XI~
 ~
 ~
J (=I[?\']K~
L (DwPTPbFc'dM~
N (EQUQcGd'eO~
P  (>$J\@]'^Q~
R (BWdN`Da'bS~
T AS7T'UU~
V AS7T'UW~
X (87DDV:W'XY~
Z '4CU9V'W[~
\ (=I[?\']]~
^ (<wHZ>['\_~
` '4CU9V'Wa~
b (;gtGY=Z'[c~
d $BT8U'Ve~
f (@7DL^B_'`g~
h w@R6S'Ti~
j "(CgtOaEb'ck~
 ~
 ~
l  (AGTM_C`'am~
n  $BT8U'Vo~
p (;gtGY=Z'[q~
r AS7T'Us~
t (;gtGY=Z'[u~
v (@7DL^B_'`w~
x $BT8U'Vy~
z $BT8U'V{~
| (?'4K]A^'_}~
~ (AGTM_C`'a~
@ (;gtGY=Z'[A~
B (:WdFX<Y'ZC~
D (9GTEW;X'YE~
F (JWVZVhLi'jG~
H (H7TXTfJg'hI~
J $BT8U'VK~
L w@R6S'TM~
 ~
 ~
N (:WdFX<Y'ZO~
P (@7DL^B_'`Q~
R (BWdN`Da'bS~
T (?4K]jlAmAm'nU~
V '4CU9V'WW~
X (<wHZ>['\Y~
Z (>-J^@_'`[~
\ (BWmNbDc'd]~
^ (9GTEW;X'Y_~
` '4CU9V'Wa~
b (:WdFX<Y'Zc~
d (9GTEW;X'Ye~
f (G'SWSeIf'gg~
h (EQUQcGd'ei~
j (G'SWSeIf'gk~
l (H7TXTfJg'hm~
n  $BT8U'Vo~
 ~
 ~
p  $BT8U'Vq~
r '4CU9V'Ws~
t (9GTEW;X'Yu~
v $BT8U'Vw~
x $(<wHZ>['\y~
z (<wHZ>['\{~
| AS7T'U}~
~ (;gtGY=Z'[~
@ (:WdFX<Y'ZA~
B !(@7DL^B_'`C~
D (9GTEW;X'YE~
F (;gtGY=Z'[G~
H (;gtGY=Z'[I~
J (;gtGY=Z'[K~
L (>$J\@]'^M~
N (;gtGY=Z'[O~
P (=I[?\']Q~
 ~
 ~
R (@7DL^B_'`S~
T (@7DL^B_'`U~
V (>$J\@]'^W~
X !(DwPTPbFc'dY~
Z (;gtGY=Z'[[~
\ (?'4K]A^'_]~
^ AS7T'U_~
` (87DDV:W'Xa~
b !(;gtGY=Z'[c~
d (=I[?\']e~
f (9GTEW;X'Yg~
h AS7T'Ui~
j "(<wHZ>['\k~
l AS7T(Um~
n (<wHZ>['\o~
p (AGTM_C`'aq~
r (=I[?\']s~
 ~
 ~
t (;gtGY=Z'[u~
v (IUYUgtwKxKx'yw~
x !(:WdFX<Y'Zy~
z (9GTEW;X'Y{~
| (=I[?\']}~
~ (>$J\@]'^~
@ '4CU9V'WA~
B (?=K_qu  rF  BG  BG  (HC~
D (?=K_qu  rF  BG  BG  (HE~
F (BWdN`Da'bG~
H (9GTEW;X'YI~
J (DwPTPbFc'dK~
L (;gtGY=Z'[M~
N (<wHZ>['\O~
P (=I[?\']Q~
R !(@7DL^B_'`S~
V (@7DL^B_'`W~
 ~
 ~
X (<H]os  pD  ?E  ?E  (FY~
Z (<H\nr  oC  ?D  ?D  (E[~
\ (<H\nr  oC  ?D  ?D  (E]~
^ (<H\nr  oC  ?D  ?D  (E_~
` (<H\nr  oC  ?D  ?D  (Ea~
b (<H\nr  oC  ?D  ?D  (Ec~
d (EQUQcuy  vJ  HK  HK  (Le~
f ASeie{7|7|'}g~
h (<H^pt  qE  ?F  ?F  (Gi~
j (<H^pt  qE  ?F  ?F  (Gk~
l (<H\nr  oC  ?D  ?D  (Em~
n (<H\nr  oC  ?D  ?D  (Eo~
p (<H\nr  oC  ?D  ?D  (Eq~
r (<H\nr  oC  ?D  ?D  (Es~
t (<H]os  pD  ?E  ?E  (Fu~
v (<H]os  pD  ?E  ?E  (Fw~
x (<H]os  pD  ?E  ?E  (Fy~
 ~
 ~
z (<H\nr  oC  ?D  ?D  (E{~
| (<H\nr  oC  ?D  ?D  (E}~
~ (<H]os  pD  ?E  ?E  (F~
@ (<H]os  pD  ?E  ?E  (FA~
B (<H^pt  qE  ?F  ?F  (GC~
D (<H]os  pD  ?E  ?E  (FE~
F (<H\nr  oC  ?D  ?D  (EG~
H (<H\nr  oC  ?D  ?D  (EI~
J (<H^pt  qE  ?F  ?F  (GK~
L (<Hcuy  vJ  ?K  ?K  (LM~
N (<H\nr  oC  ?D  ?D  (EO~
P (<Hbtx  uI  ?J  ?J  (KQ~
R (<Hbtx  uI  ?J  ?J  (KS~
T (<Hbtx  uI  ?J  ?J  (KU~
V (8MD_qu  rH  ;I  ;I  (JW~
X (8MD_qu  rH  ;I  ;I  (JY~
Z (<H\nr  oC  ?D  ?D  (E[~
 ~
 ~
\ (<H\nr  oC  ?D  ?D  (E]~
^ (<Hbtx  uI  ?J  ?J  (K_~
` -BVhlh~88  (Aa~
b (8=CXjn  kA  ;B  ;B  (Cc~
d (FR_Rgy}  zP  IQ  IQ  (Re~
f '4CU9V'Wg~
j (<wHZ>['\k~
l $BT8U'Vm~
n (>$J\@]'^o~
p (>$J\@]'^q~
r (:WdFX<Y'Zs~
t (=I[?\']u~
x (>$J\@]'^y~
z (87DDV:W'X{~
| w@R6S'T}~
~ w@R6S'T~
@ %w@R6S'TA~
 ~
 ~
B #w@R6S'TC~
D gt?Q5R'SE~
F &(;g}G\=]'^G~
H %(;gtGY=Z'[I~
J %(:WmF[<\']K~
L $(:WdFX<Y'ZM~
N $BT8U'VO~
P $BT8U'VQ~
R $BT8U'VS~
T !-B\8]'^U~
V -B]8^'_W~
X (EQUQcGd'eY~
\ (<wHZ>['\]~
^ (<wHZ>['\_~
b '4CU9V'Wc~
f (H7TXTfJg'hg~
h (H7TXTfJg'hi~
 ~
j )?$J\@]'^(?'4K]A^'_(=I[?\'](>$J\@]'^(;gtGY=Z'[(:WdFX<Y'Z(FRVRdHe'f(ORY[_[mQn'o(=I[?\']{~
 ~
 ~
r   Nc                    |                     d          sd|z   }t                                                                          t	          t
          |                    }||S t          |                    ||                    S )zGet standard platform icon.SP_)r  r
   stylestandardIcongetattrr	   r   pixmap)r0  r  sizeicons       r   get_std_iconzIconManager.get_std_icono  sp    u%% 	 4<Dyy  --gfd.C.CDD<KT400111r   Fc                    t          |          }t          |          }t                      }|r0dD ]+}|                    |                    ||                     ,|S |                    dd          }|                    |t          j                   t          ddd          }|                    dd          }	t          |	          }
|
                    t          j                   |
	                    |	
                                |           |
                                 |                    |	t          j                   |S )a  Return image inside a QIcon object.

        Parameters
        ----------
        name: str
            Image name or icon
        resample: bool
            If True, manually resample icon pixmaps for usual sizes
            (16, 24, 32, 48, 96, 128, 256). This is recommended for
            QMainWindow icons created from SVG images on non-Windows
            platforms due to a Qt bug. See spyder-ide/spyder#1314.
        )          0   `            rC     )r   r   	addPixmapr7  Normalr   r   setCompositionModeCompositionMode_SourceInfillRectrectendDisabled)r0  r  resample	icon_pathwrapping_iconr9  r8  normal_statedisabled_colordisabled_stateqps              r   get_iconzIconManager.get_icony  s1    #4((	 i(( ww 	; A A}33D$??@@@@K )//S99LNN<666 $Cc22N +11#s;;N.))B!!("CDDDKK++--~>>>FFHHHNN>5>:::Kr   c                    t          j        dd          }|dk    r	 | j        d         s-t          j        ddd| j        d         	           d
| j        d<   | j        |         \  }}|||d<   t          j        |i |S # t          $ r7 t          | 	                    |                    }||nt                      cY S w xY w|dk    r)| 	                    ||          }||nt                      S d S )N
appearance
icon_themezspyder 3r6   r|   z
spyder.ttfzspyder-charmap.jsonr5   )r5   TrT   zspyder 2rM  )
r   getr  qta	load_fontr/  r9  KeyErrorr   rT  )r0  r  rT   rM  themeargskwargsr9  s           r   r9  zIconManager.icon  s+   |44J=~h/ 4M(L:O*..*EG G G G/3DN8,#}T2f+-9F>*x0000 = = =T]]40011#/ttUWW<<<= j  ===99D+448 ! s   A!A? ?>C ?C c                    i }|                     | j                   |                     | j                   t          j        |          }t          j        |                                          \  }}t          j        |          \  }}t          j	        |          rd}||f| j
        v r| j
        ||f         S t          j	        |          r|                     d|          }n|                     d          }|| j        v r#|                     | j        |         |          }nN|| j        v r#|                     | j        |         |          }n"|dk    r|                     d          }n|dk    r|                     d          }nt          |          r|                     d|          }n|	 |                    d
          \  }	}
n# t           $ r d	}	Y nw xY w|	|                     d          }n}|	dk    r|                     d|          }n`|	dk    r|                     d|          }nC|	dk    r|                     d|          }n&|	dk    r |
|v r|                     ||
         |          }|| j
        ||f<   |S )z/Return the icon depending on the file extensionFolderr   binaryz.ipynbnotebookz.texfile_type_texr   N/audior   videor   imager   application)updater
  r  r  basenamesplitextlowermime
guess_typeisdirr  r9  r  r  r   split
ValueError)r0  fnamerT   application_iconsrk  __	extension	mime_typeicon_by_extension	file_typebin_names              r   get_icon_by_extension_or_typez)IconManager.get_icon_by_extension_or_type  s     000  !4555<&&X^^%5%566I11	29U 	! I|$(???*I|+DEE9U ,	K $		- F F $		( 3 3D---$(II%i0,%@ %@!!d111$(II'	2L%B %B!! (((,		*(=(=%%&(((,		/(B(B%%!%(( K(,		.,(O(O%%*
) /8ooc.B.B+	88% ) ) )$(			) (,0IIh,?,?))"g--,0II+\-; -;))"g--,0II+\-; -;))"g--,0II+\-; -;))"m33#'88804		 1( ;\1K 1K- >OL 9:  s   6G GGc                 N    |                      |          }t          |||          S )z Convert icon to base64 encoding.)r9  base64_from_icon_obj)r0  	icon_namewidthheighticon_objs        r   base64_from_iconzIconManager.base64_from_icon  s%    99Y''#HeV<<<r   c                 B   t          |                    ||                                                    }t                      }t	          |          }|                    |d           |                                                                                                S )z'Convert icon object to base64 encoding.PNG)	r   r7  toImager   r   savetoBase64datadecode)r0  r  r  r  rh  
byte_arraybuffers          r   r}  z IconManager.base64_from_icon_obj  s}    xuf55==??@@\\
$$

65!!!""$$))++22444r   NFNF)__name__
__module____qualname____doc__r1  r:  rT  r9  r{  r  r}  r   r   r   r   r      s        ++Q
 Q
 Q
f
2 2 2 21 1 1 1f9 9 9 9*?! ?! ?!B= = =
5 5 5 5 5r   r   c                 :    t                               | |          S )N)r8  )imar:  )r  r8  s     r   r:  r:    s    Dt,,,r   Fc                 :    t                               | |          S )NrX  )r  rT  )r  rM  s     r   rT  rT    s    <<x<000r   c                 <    t                               | ||          S )N)rT   rM  )r  r9  )r  rT   rM  s      r   r9  r9    s    88D|h8GGGr   c                 8    t                               | |          S r  )r  r{  )rs  rT   s     r   r{  r{  #  s    ,,ULAAAr   c                 :    t                               | ||          S r  )r  r  )r~  r  r  s      r   r  r  '  s    	5&999r   c                 :    t                               | ||          S r  )r  r}  )r  r  r  s      r   r}  r}  +  s    ##HeV<<<r   r  r  r  )&r  os.pathpathr  	mimetypesrn  r  qtpy.QtCorer   r   
qtpy.QtGuir   r   r   r   qtpy.QtWidgetsr	   r
   spyder.config.managerr   spyder.utils.image_path_managerr   spyder.utils.encodingr   spyder.utils.paletter   r   	qtawesomerZ  r   r  r:  rT  r9  r{  r  r}  r	  r   r   r   <module>r     s   
			           



 , + + + + + + + 6 6 6 6 6 6 6 6 6 6 6 6 * * * * * * * * ' & & & & & : : : : : : . . . . . . = = = = = = = =    s5 s5 s5 s5 s5 s5 s5 s5l kmm- - - -1 1 1 1H H H HB B B: : := = = !r   