
    %
i@j                        d dl Z d dlZd dlZd dlZd dlZddlmZ dZd dlmZ d Z	e	rd dl
Z
d dlZd Znd Z G d d	          Z G d
 d          Z G d de          Zd dlmZmZ dZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#d Z$d!Z%d"Z&d#Z'd$Z(eeeee%gZ)ed%eej*        fed&eej+        fed'eej,        fed(eej-        fed)eej.        feeeej/        feeeej0        feeeej1        fe%d*d+ej2        fed,eej3        fed-eej4        fe d.eej5        fe!d*eej6        fe"d*eej7        fgZ8e#d*d/ej9        fe$d*d0ej$        fe&d* ej:        ej;                  ej&        fe'd*eej'        fe(d d d1d ef ej<        d2d2d2          d3fgZ=d4Z> G d5 d6e          Z?d7@                                ejA        fd8@                                ejB        fd9@                                ejC        fd:@                                ejD        fd;@                                ejE        fd<@                                ejF        fd=@                                ejG        fd>@                                ejH        fd?@                                ejI        fd@@                                ejJ        fdA@                                ejK        fgZL G dB dCe          ZM G dD dEeM          ZNdS )F    N   )scintillaconij  )CLR_INVALIDc                      t          j        d                    t          t          |                     dz              d S )N 
)
win32tracewritejoinmapstrargss    C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\pythonwin/pywin/scintilla/formatter.pytracer      s2    #c4..11D899999    c                      d S N r   s    r   <lambda>r      s    $ r   c                   4    e Zd ZdZefdZd Zd Zd Zd Z	dS )StylezRepresents a single formatc                     || _         |x| _        | _        t          |t                    r|| _        d | _        n|| _        d | _        d | _        d S r   )name
backgrounddefault_background
isinstancer   aliasedformatstylenum)selfr   r   r   s       r   __init__zStyle.__init__"   sU    	 5?>$1fc"" 	 !DLDKK DKDLr   c                 2    t          | j                  dk    S N   )lenr   r!   s    r   IsBasedOnDefaultzStyle.IsBasedOnDefault/   s    4;1$$r   c                     |                                  rdS | j        d         |d         k    o| j        d         |d         k    }|r|                                  |S )Nr         )r(   r   ForceAgainstDefault)r!   defaultFormat
bIsDefaults      r   NormalizeAgainstDefaultzStyle.NormalizeAgainstDefault4   sk      "" 	1KNmA..U4;q>]STEU3U 	  	'$$&&&r   c                 .    | j         d d         | _         d S r$   )r   r'   s    r   r,   zStyle.ForceAgainstDefault>   s    k"1"or   c                    t          | j                  dk    r| j        |dd          z   }n| j        }t          j        t          j        z  t          j        z  t          j        z  t          j        z  t          j        z  }|f|dd          z   S )Nr%   r   )	r&   r   win32conCFM_BOLDCFM_CHARSET	CFM_COLORCFM_FACE
CFM_ITALICCFM_SIZE)r!   r-   fmtflagss       r   GetCompleteFormatzStyle.GetCompleteFormatA   s    t{q  +abb 11CC+C"# !   !	"
   	 x#abb'!!r   N)
__name__
__module____qualname____doc__r   r"   r(   r/   r,   r;   r   r   r   r   r      sm        $$0;    % % %
  & & &" " " " "r   r   c                   f    e Zd Zd ZddZd Zd Zd Zd Zd Z	d	 Z
d
 ZddZd Zd Zd Zd ZdS )FormatterBasec                     || _         d| _        d| _        d| _        i | _        i | _        |                                  d S )N)  r      r   r   r   1   zCourier New)rC   r   rD   r   r   r   rE   Arialr   )	scintillabaseFormatFixedbaseFormatProp	bUseFixedstylesstyles_by_id	SetStylesr!   rG   s     r   r"   zFormatterBase.__init__U   sE    "OHr   Nc                     t           r   NotImplementedErrorr!   parents     r   HookFormatterzFormatterBase.HookFormatter^       !!r   c                     	 | j         | j                            |                   }n# t          $ r Y d S w xY w|j        | j        v r|S d S r   )rL   rG   SCIGetStyleAtKeyErrorr   string_style_names)r!   posstyles      r   GetStringStylezFormatterBase.GetStringStyleb   sd    	%dn&B&B3&G&GHEE 	 	 	44	 :000Lts   %( 
66c                     |
J d            |j         
J d            || j        vs
J d            ||_         || j        |j        <   || j        |<   d S )NzWe must have a style number!Style has already been registeredWe are reusing a style number!)r    rK   r   rL   r!   r[   r    s      r   RegisterStylezFormatterBase.RegisterStylel   sr    ##%B###~%%'J%%%t{***,L***!"'EJ&+(###r   c                     t           r   rP   r'   s    r   rM   zFormatterBase.SetStylest   rU   r   c                     dS )Nz!Sample Text for the Format Dialogr   r'   s    r   GetSampleTextzFormatterBase.GetSampleTextw   s    22r   c                 ,    | j         r| j        S | j        S r   )rJ   rH   rI   r'   s    r   GetDefaultFormatzFormatterBase.GetDefaultFormatz   s    > 	(''""r   c                 
   |j         t          k    r/|j        }| j                            t
          j        d|           d S |j        
J d            | j        }|j        }|j        | j	        |j                 }|j
        }|                                r|                                 }n|}|                    ||d                    |                    ||d         |d                    |d         dz  r|                    |d           n|                    |d           |d         dz  r|                    |d           n|                    |d           |                    |t%          |d         d	z                       |                    |d           |j        }|t(          k    r| j	        t*                   j        }|t(          k    rt-          j        t0          j                  }|                    ||           d S )
NTzUnregistered style.   r*   r%   r   r   r+      )r   STYLE_SELECTIONr   rG   SendScintillar   SCI_SETSELBACKr    r   rK   r   r(   rf   SCIStyleSetForeSCIStyleSetFontSCIStyleSetBoldSCIStyleSetItalicSCIStyleSetSizeintSCIStyleSetEOLFilledr   STYLE_DEFAULTwin32apiGetSysColorr2   COLOR_WINDOWSCIStyleSetBack)r!   r[   clrrG   r    f
baseFormatbgs           r   _ReformatStylezFormatterBase._ReformatStyle   s   
 :(("CN(()DdCPPP F~))+@)))N	>=$K.EL!!## 	..00JJJ!!(AaD111!!(JqM:a=IIIQ4!8 	3%%h2222%%h222Q4!8 	5''!4444''!444!!(C
10B,C,CDDD&&x333 ]+6B%h&;<<B!!(B/////r   c                     | j         |         S r   )rL   )r!   r    s     r   GetStyleByNumzFormatterBase.GetStyleByNum   s     **r   r   c                    |r|                                   |                                 }t          d|          }t          j        |_        |                     |           | j                                        D ]3}|j	        |
                    |           |                     |           4| j                                         d S )Ndefault)LoadPreferencesrf   r   r   rt   r    r}   rK   valuesr   r/   rG   InvalidateRect)r!   bReloadr{   defaultStyler[   s        r   ApplyFormattingStylesz#FormatterBase.ApplyFormattingStyles   s     	#  """**,,
Y
33 , :L)))['')) 	' 	'E}$--j999&&&&%%'''''r   c                    t          |                     dt          | j                                      | _        t          |                     dt          | j                                      | _        t          |                     dd                    | _        | j                                        D ]}|                     |j	        t          |j
                            }	 t          |          |_
        n#  t          d|j	                   Y nxY wt          |                     |j	        dz   |j                            |_        d S )NBase Format FixedBase Format Proportional	Use Fixedr   zError loading style data for background)evalLoadPreferencer   rH   rI   rr   rJ   rK   r   r   r   printr   r   )r!   r[   news      r   r   zFormatterBase.LoadPreferences   s>   # 3S9M5N5NOO 
  
 # :C@S<T<TUU
 
 T00a@@AA['')) 	 	E%%ej#el2C2CDDCB#CyyB4ejAAAAA"##J.0H    E	 	s   &C;;Dc                 .    t          j        d||          S NFormat)win32uiGetProfileVal)r!   r   r   s      r   r   zFormatterBase.LoadPreference   s    $XtW===r   c                    |                      dt          | j                             |                      dt          | j                             |                      d| j                   | j                                        D ][}|j        R|                      |j        t          |j	                             |j        dz   }|                      ||j
                   \d S )Nr   r   r   r   )SavePreferencer   rH   rI   rJ   rK   r   r   r   r   r   )r!   r[   bg_names      r   SavePreferenceszFormatterBase.SavePreferences   s    /T5I1J1JKKK6D<O8P8PQQQK888['')) 	? 	?E}$##EJEL0A0ABBB*}4##GU-=>>>		? 	?r   c                 2    t          j        d||           d S r   )r   WriteProfileVal)r!   r   values      r   r   zFormatterBase.SavePreference   s    $66666r   r   )r   )r<   r=   r>   r"   rT   r\   ra   rM   rd   rf   r}   r   r   r   r   r   r   r   r   r   rA   rA   T   s          " " " "  , , ," " "3 3 3# # #00 00 00d+ + +( ( ( (  ,> > >? ? ?7 7 7 7 7r   rA   c                   D    e Zd Zd ZddZd Zd ZddZd Zdd
Z	d Z
dS )	Formatterc                 f    d| _         d| _        d| _        t                              | |           d S Nr   )bCompleteWhileIdlebHaveIdleHandlernextstylenumrA   r"   rN   s     r   r"   zFormatter.__init__   s6    "# !tY/////r   Nc                     || j                                         }|                    | j        t          j                   d S r   )rG   	GetParent
HookNotifyOnStyleNeededr   SCN_STYLENEEDEDrR   s     r   rT   zFormatter.HookFormatter   s<    >^--//F$,l.JKKKKKr   c                     | j                             |          }| j                             t          j                  }| j                             |          }| j                             |          }|                     ||j                   d S r   )	rG   SCIUnpackNotifyMessagerk   r   SCI_GETENDSTYLEDLineFromChar	LineIndexColorizeposition)r!   stdextranotifyendStyledCharlineEndStyled	endStyleds          r   r   zFormatter.OnStyleNeeded   sw    66u==44\5RSS33MBBN,,];;	 	i11111r   c                 n    |dz  }| j         |         j        }||k     r|| j        |<   |dz  }||k     d S d S Nr   )rK   r    style_buffer)r!   startend	styleNamer    s        r   ColorSegzFormatter.ColorSeg  sL    q;y)2ckk'/De$QJE ckkkkkkr   c                 p    || j         }| xj         dz  c_         t                              | ||           d S r   )r   rA   ra   r`   s      r   ra   zFormatter.RegisterStyle  sB    (H"##D%:::::r   c                      t          d          )NzYou must override this method)RuntimeErrorr!   r   
styleStarts      r   ColorizeStringzFormatter.ColorizeString  s    :;;;r   r   c                 t   | j         }|                    ||d          }|dk    r3|                    |dz
            }|                     |          j        }nd }|                    |d           t          j        ddt          |          z            | _        | 	                    ||           |
                    | j                   d | _        | j        rY| j        sT|dk    rP||                                k     r:d| _        t          j                                        | j                   d S d S d S d S d S )	NF)decoder   r      b)r   r   )rG   GetTextRangerW   r   r   SCIStartStylingarrayr&   r   r   SCISetStylingExr   r   GetTextLengthr   GetAppAddIdleHandlerDoMoreColoring)r!   r   r   rG   	stringValr    r   s          r   r   zFormatter.Colorize  sZ   N	
 **5#e*DD	199 ..uqy99H++H55:JJJ!!%,,,!KTC	NN-BCCIz222!!$"3444  #	A)	A r		i--////$%D!N++D,?@@@@@	A 	A 	A 	A 	//r   c                    	 | j         }|                                }|                    |          }|                    |          }|                    |dz             }|                                }|dk     r|}||k    }	|                     ||           n# t          j        t          f$ r d}	Y nw xY w|	r-d| _	        t          j
                                        |           |	 S )Nr   r   )rG   SCIGetEndStyledr   r   r   r   r   errorAttributeErrorr   r   DeleteIdleHandler)
r!   handlercountrG   r   lineStartStyledr   r   textlenfinisheds
             r   r   zFormatter.DoMoreColoring<  s    	I!1133I'44Y??O''88E%%o&9::C--//GQwwg~HMM%%%%%~. 	 	 	HHH	  	8$%D!N..w777|s   BB B32B3r   r   r   )r<   r=   r>   r"   rT   r   r   ra   r   r   r   r   r   r   r   r      s        0 0 0L L L L
2 2 2"  ; ; ; ;< < <A A A A>    r   r   )	iskeywordkwlist?_0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzz@._0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzz%^&*()-+=|{}[]:;<>,/?!.~
WhitespaceCommentzComment BlocksNumberStringz	SQ Stringz
TQS Stringz
TQD StringKeywordClassMethodOperator
IdentifierzBrace/Paren - matchingzBrace/Paren - unmatchedzString with no terminatorzLine numberszIndent guide	Selection)r   r   rD   r   退 )r   r+   rD   r   i   )r   r+   rD   r   r   )r   r   rD   r     )r   r   rD   r   退  )r   r   rD   r   r   r   )r   r   rD   r   i   )r   r   rD   r   i   )r   r   rD   r   r   i i rD      i?B z# Some Python
class Sample(Super):
  def Fn(self):
	self.v = 1024
dest = 'dest.html'
x = func(a + 1)|)
s = "I forget...
## A large
## comment blockc                   6    e Zd ZeZd Zd Zd Zd Zd Z	d Z
dS )PythonSourceFormatterc                     t           S r   PythonSampleCoder'   s    r   rd   z#PythonSourceFormatter.GetSampleText      r   c                     d S r   r   r'   s    r   
LoadStylesz PythonSourceFormatter.LoadStyles  s    r   c                     t           D ]+\  }}}}|                     t          |||                     ,t          D ],\  }}}}|                     t          |||          |           -d S r   PYTHON_STYLESra   r   SPECIAL_STYLES)r!   r   r   r|   ignoresc_ids         r   rM   zPythonSourceFormatter.SetStyles  s    (5 	8 	8$D&"fuT62667777'5 	? 	?#D&"euT6266>>>>	? 	?r   c                    |||dz                                 d          }t          }|dk    rt          }n@|dk    rt          }n2|d         t          j        v rt          }nt          |          rt          }| 	                    |||           |S )Nr   latin-1classdefr   )
r   STYLE_IDENTIFIERSTYLE_CLASSSTYLE_METHODstringdigitsSTYLE_NUMBERr   STYLE_KEYWORDr   )r!   cdocr   r   prevWordwordattrs          r   ClassifyWordz"PythonSourceFormatter.ClassifyWord  s    EC!GO$++I66wDDDD!W%%DDt__ 	! DeS$'''r   c                 B    |t           }|                     |d|          S r   )rt   ColorizePythonCoder   s      r   r   z$PythonSourceFormatter.ColorizeString  s%    &J&&sAz:::r   c                 
   t          |          }||k    rd S d}|}dx}x}}	|||dz                                d          x}
}|x}}||k     r|}d}|dz   |k     r#||dz   |dz                                d          }d}
|dz   |k     r#||dz   |dz                                d          }
|t          k    r|t          v r*|                     ||dz
  t                     t
          }|}n'|dk    r8|                     ||dz
  t                     |dk    rt          }nt          }|}n|dk    re|                     ||dz
  t                     |}t          }|dk    r.|
dk    r(|dz  }t          }d}d}d}|dz   |k     r||dz            }nt          }n~|d	k    re|                     ||dz
  t                     |}t          }|d	k    r.|
d	k    r(|dz  }t          }d}d}d}|dz   |k     r||dz            }nt          }n|t          v r@|                     ||dz
  t                     |                     ||t                     |dz   }n|t
          k    r|t          vr|                     |||dz
  |          }t          }|}|dk    r|dk    r	t          }n{t          }nr|dk    r=|dk    r.|
dk    r(|dz  }t          }d}d}d}|dz   |k     r||dz            }n8t          }n/|d	k    r=|d	k    r.|
d	k    r(|dz  }t          }d}d}d}|dz   |k     r||dz            }nt          }n|t          v r!|                     ||t                     |dz   }n|t          k    s|t          k    r1|d
k    s|dk    r#|                     ||dz
  |           t          }|}ny|t          k    rg|dk    r1|dk    s|d	k    s|dk    r|dz  }|}d}|dz   |k     r||dz            }n7|dk    r(|                     ||t                     t          }|dz   }n|t          k    re|dk    r0|dk    s|d	k    s|dk    r|dz  }|}d}|dz   |k     r||dz            }n|d	k    r(|                     ||t                     t          }|dz   }n|t          k    rA|d	k    r:|d	k    r4|d	k    r.|	dk    r(|                     ||t                     t          }|dz   }nK|t          k    r@|dk    r:|dk    r4|dk    r.|	dk    r(|                     ||t                     t          }|dz   }|}	|}|}|dz  }||k     ||k     rD|t
          k    r|                     |||dz
  |           d S |                     ||dz
  |           d S d S )N r   r   r   r+      #"'r   \)r&   r   rt   
wordstartsr   r  STYLE_COMMENT_BLOCKSTYLE_COMMENTSTYLE_TQDSTRINGSTYLE_STRINGSTYLE_TQSSTRINGSTYLE_SQSTRING	operatorsSTYLE_OPERATOR	wordcharsr
  )r!   r  	charStartr   	lengthDocr  statechPrevchPrev2chPrev3chNext2chNextstartSegichs                  r   r  z(PythonSourceFormatter.ColorizePythonCode  sl   II		!!F%(((7	IM 9:AA)LLL&  1)mmBF1uy  a!ea!em,33I>>G1uy  q1uq1u}-44Y??%%##MM(AE=AAA)E HH3YYMM(AE=AAA}} 3 - HH3YYMM(AE=AAA H)E}}CQ / !$!$q59,,%)!a%[F ,3YYMM(AE=AAA H)E}}CQ / !$!$q59,,%)!a%[F .9__MM(AE=AAAMM!Q777 1uH-''Y&&#00xQQQH)E HSyy!S==$7EE$1EEs!S==W^^FA$3E!$B%(F%(F 1uy00)-a!e$0EEs!S==W^^FA$3E!$B%(F%(F 1uy00)-a!e$2EEyh>BBB#$q5-''54G+G+G::tMM(AE5999)E H,&&::}}#4Q#!$q59,,%)!a%[F3YYMM(A|<<<)E 1uH.((::}}#4Q#!$q59,,%)!a%[F3YYMM(A~>>>)E 1uH/))9937c>>gQUooMM(A???)E 1uH((#IIcMMsNNtOOh?;;;%q5GGFFAM )mmN i%%!!$)a-JJJJJh	Au=====	  r   N)r<   r=   r>   STRING_STYLESrY   rd   r   rM   r
  r   r  r   r   r   r   r     sy        &       ? ? ?  ; ; ;
U> U> U> U> U>r   r   z.py .pys .pywz.html .htm .asp .shtmlz@c .cc .cpp .cxx .h .hh .hpp .hxx .idl .odl .php3 .phtml .inc .jsz.vbs .frm .ctl .clsz.pl .pm .cgi .podz".sql .spec .body .sps .spb .sf .spz	.tex .styz	.xml .xulz.errz.makz	.bat .cmdc                   ,    e Zd Zd ZddZd	dZd	dZdS )
BuiltinSourceFormatterc                 J    || _         t                              | |           d S r   )extrA   r"   )r!   rG   r.  s      r   r"   zBuiltinSourceFormatter.__init__  s%    tY/////r   r   r   c                 R    | j                             t          j        ||           d S r   )rG   rk   r   SCI_COLOURISE)r!   r   r   s      r   r   zBuiltinSourceFormatter.Colorize  s%    $$\%?LLLLLr   Nc                     |j         
J d            || j        }| xj        dz  c_        | j                            |          
J d            ||_         || j        |j        <   || j        |<   d S )Nr^   r   r_   )r    r   rK   getr   rL   r`   s      r   ra   z$BuiltinSourceFormatter.RegisterStyle  s    ~%%'J%%%(H"{x((002R000!"'EJ&+(###r   c                     | j         }t          D ]\  }}| j        |v r|} nt          j        }|                    t          j        |           d                    t                    }|	                    |           d S )Nr   )
rG   source_formatter_extensionsr.  r   SCLEX_PYTHONrk   SCI_SETLEXERr   r   SCISetKeywords)r!   rS   scexts	formatterformatter_usekeywordss          r   rT   z$BuiltinSourceFormatter.HookFormatter  s    ^: 	6 	6OD)x4 )   )5M
2MBBB88F##
(#####r   r   r   )r<   r=   r>   r"   r   ra   rT   r   r   r   r,  r,    sc        0 0 0M M M M, , , ,
$ 
$ 
$ 
$ 
$ 
$r   r,  c                   4    e Zd Zej        ZeZddZd Z	d Z
dS )BuiltinPythonSourceFormatter.pyc                 >    t                               | ||           d S r   )r,  r"   )r!   r8  r.  s      r   r"   z%BuiltinPythonSourceFormatter.__init__  s     ''b#66666r   c                     t           D ],\  }}}}|                     t          |||          |           -t          D ],\  }}}}|                     t          |||          |           -d S r   r   )r!   r   r   r|   r   s        r   rM   z&BuiltinPythonSourceFormatter.SetStyles  s    '4 	? 	?#D&"euT6266>>>>'5 	? 	?#D&"euT6266>>>>	? 	?r   c                     t           S r   r   r'   s    r   rd   z*BuiltinPythonSourceFormatter.GetSampleText  r   r   N)r?  )r<   r=   r>   r   r5  sci_lexer_namer*  rY   r"   rM   rd   r   r   r   r>  r>    sT        !.N&7 7 7 7? ? ?         r   r>  )Or   r  ru   r2   r   r  r   WM_KICKIDLEr   	debuggingr	   win32traceutilr   r   rA   r   keywordr   r   r  r  r  rt   r  r  r  r  r  r  r  r  r   r  r  r   STYLE_BRACESTYLE_BRACEBADSTYLE_STRINGEOLSTYLE_LINENUMBERSTYLE_INDENTGUIDErj   r*  SCE_P_DEFAULTSCE_P_COMMENTLINESCE_P_COMMENTBLOCKSCE_P_NUMBERSCE_P_STRINGSCE_P_CHARACTERSCE_P_TRIPLESCE_P_TRIPLEDOUBLESCE_P_STRINGEOL
SCE_P_WORDSCE_P_CLASSNAMESCE_P_DEFNAMESCE_P_OPERATORSCE_P_IDENTIFIERr   STYLE_BRACELIGHTrv   COLOR_3DFACERGBr   r   r   splitr5  
SCLEX_HTML	SCLEX_CPPSCLEX_VB
SCLEX_PERL	SCLEX_SQLSCLEX_LATEX	SCLEX_XMLSCLEX_ERRORLISTSCLEX_MAKEFILESCLEX_BATCHr4  r,  r>  r   r   r   <module>ri     s               !          	  : : : : E0" 0" 0" 0" 0" 0" 0" 0"jT7 T7 T7 T7 T7 T7 T7 T7tb b b b b b b bL & % % % % % % %N
N	&	&  &*-! "   ,k<;UV &	 	 '	 +[,:ST+[,:ST\;0LMlK1JKlK1PQ.,:VW,k<;RS*K9UV+[,:TU #	 	 %	;#P *Hl6ST-x9TU X233%	 	 &	 		
AsA{#T4&&	!0	 w> w> w> w> w>I w> w> w>x l78##%%|'>?JPPRR   ""L$9:  ,"9:)//11<3IJ,23,01\\^^\12\\^^\01,23 $$ $ $ $ $] $ $ $@         #9          r   