
    Dfe	                     x    d 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  ej                  e      ZddZy)zK
Utilities for processing SASS and images from default and custom palette.
    N)PACKAGE_PATHQRC_FILE_SUFFIX)compile_qrc_filecreate_imagescreate_palette_imagegenerate_qrc_file)
create_qssc                    | *t         j                  d       t        j                  d       | j                  *t         j                  d       t        j                  d       | j                  }t        d|        t        d|        t        |        t        d|        t        |        t        d	|        t        |        t        d
|        t        |        t        d|        t        ||        y)a.  Process palette class to create a new palette file/folders.

    It generates all files below, in this order:
        - Palette files (svg/.png) under docs/images/[palette_id]
        - Image files (.png) under [palette_id]/rc folder.
        - QRC file in [palette_id]/[palette_id]style.qrc (C++).
        - SCSS variables in [palette_id]/_variables.scss file.
        - QSS file in [palette_id]/[palette_id]style.qss.
        - Compiled QRC file in [palette_id]/[palette_id]style_rc.py

    TODO:
        - Must generalize to create custom palettes and folder paths.
        - Must create/copy all files under [palette_id], such as main.scss,
            __init__.py, palette.py.
        - Add option or avoid adding the palette under docs for custom palettes.

    Args:
        palette (Palette): Palette.
        compile_for (list, optional): Prefix used in resources.
            Defaults to 'qtpy'. Possible values are 'qtpy', 'pyqtgraph',
            'pyqt', 'pyqt5', 'pyqt6',
            'pyside', 'pyside2', 'pyside6',
            'qt', 'qt5', qt6, 'all'.
    NzDPlease pass a palette class in order to create its associated images   z$A QDarkStyle palette requires an ID!z-- PROCESSING THEME: z!-- GENERATING PALETTE IMAGE FOR: )palettez--- GENERATING IMAGE FILES (.svg > .png) FOR: z-- GENERATING QRC FILE FOR: z+-- GENERATING QSS FILE (.scss > .qss) FOR: z7-- CONVERTING RESOURCE FILE (. qrc > _rc.py/.rcc) FOR: )compile_forr   )_loggererrorsysexitIDprintr   r   r   r	   r   )r   r   id_s      ;/usr/lib/python3/dist-packages/qdarkstyle/utils/__init__.pyprocess_paletter      s    4  * 	+zz<=
**C	!#
'(
 
-cU
34)	9#
?@'"	(
./g&	7u
=>w	CC5
IJg>    )qtpy)__doc__loggingr   
qdarkstyler   r   qdarkstyle.utils.imagesr   r   r   r   qdarkstyle.utils.scssr	   	getLogger__name__r   r    r   r   <module>r!      s=   
  
 5N N ,
'

H
%6?r   