
    
8d                         d Z ddlmZ ddlmZ ddlmZ dZedz   Ze e	ddd	
          z  Z
dZedz   Ze e	ddd
          z  ZdZe e	ddd	
          z  ZdZd Zd Zd Zd ZddZdS )zK Style utilities, templates, and defaults for syntax highlighting widgets.
    )
rgb_to_hls)get_style_by_name)Tokena      QPlainTextEdit, QTextEdit {
        background-color: %(bgcolor)s;
        background-clip: padding;
        color: %(fgcolor)s;
        selection-background-color: %(select)s;
    }
    .inverted {
        background-color: %(fgcolor)s;
        color: %(bgcolor)s;
    }
    .error { color: red; }
    .in-prompt-number { font-weight: bold; }
    .out-prompt-number { font-weight: bold; }
zD    .in-prompt { color: navy; }
    .out-prompt { color: darkred; }
whiteblackz#ccc)bgcolorfgcolorselectdefaultzo    .in-prompt,
    .in-prompt-number { color: lime; }
    .out-prompt,
    .out-prompt-number { color: red; }
z#555monokaibwc                    |                      d          r
| dd         } t          |           dk    rd                    d | D                       } t          |           dk    rdS 	 t          | dd	         d
          }t          | d	d         d
          }t          | dd         d
          }|||fS # t          $ r Y dS w xY w)z)Convert a hex color to rgb integer tuple.#   N    c                     g | ]}|d z  S )    ).0cs     0lib/python3.11/site-packages/qtconsole/styles.py
<listcomp>zhex_to_rgb.<locals>.<listcomp>>   s    ,,,1,,,       Fr         )
startswithlenjoinint
ValueError)colorrgbs       r   
hex_to_rgbr'   9   s     abb	
5zzQ,,e,,,--
5zzQubqb	"ac
2abb	" 1u    uus   (AB5 5
CCc                 N    t          |           }|rt          | d         dk     S dS )z]Check whether a color is 'dark'.

    Currently, this is simply whether the luminance is <50%r      F)r'   r   )r#   rgbs     r   
dark_colorr+   J   s3     U

C
 3"S((ur   c                 D    t          t          |           j                  S )zUGuess whether the background of the style with name 'stylename'
    counts as 'dark'.)r+   r   background_color)	stylenames    r   
dark_styler/   T   s     '	22CDDDr   c                    t          |           }|                    t          j                  d         pd}t	          |          dv r'	 t          |d           d|z   }n# t          $ r Y nw xY wt          |j        |j	        |          S )zPConstruct the keys to be used building the base stylesheet
    from a templatee.r#   r   )r   r   r   r   )r   r
   r	   )
r   style_for_tokenr   Textr   r!   	TypeErrordictr-   highlight_color)r.   styler	   s      r   
get_colorsr7   Y   s     i((E##EJ//8>BG
7||u	" 'kGG  	 	 	D	
 (&   s   	A 
A,+A,lightbgc                     |                                 }|dk    rt          t          |           z  S |dk    rt          t          |           z  S |dk    rt          S t          d|z            )z;Use one of the base templates, and set bg/fg/select colors.r8   linuxnocolorzNo such color scheme: %s)lowerdefault_light_style_templater7   default_dark_style_templatedefault_bw_style_sheetKeyError)namecolorss     r   sheet_from_templaterC   m   sn    \\^^Fy+Jt,<,<<<	*:d+;+;;;			%%1&8999r   N)r8   )__doc__colorsysr   pygments.stylesr   pygments.tokenr   default_templater=   r4   default_light_style_sheetdefault_light_syntax_styler>   default_dark_style_sheetdefault_dark_syntax_styler?   default_bw_syntax_styler'   r+   r/   r7   rC   r   r   r   <module>rN      sc           - - - - - -             "  0 3    9:A :A :A A &  / 2   7tt8A 8A 8A A %  *$$+A +A +A A    "  E E E
  (
: 
: 
: 
: 
: 
:r   