
    g                         d dl Z ddlmZmZ ddlmZmZ ddlmZm	Z	m
Z
  G d dee      Zej                   G d d	e             Zy)
    N   )cairoFigureCanvasCairo)
_BackendQTFigureCanvasQT)QT_APIQtCoreQtGuic                   $     e Zd Z fdZd Z xZS )FigureCanvasQTCairoc                     t        | j                  j                  d      rJ| j                  j                  | j                  _        | j                  j                  | j                         t        |           y )Nctx)hasattr	_renderergcfiguredpidrawsuper)self	__class__s    `/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/matplotlib/backends/backend_qtcairo.pyr   zFigureCanvasQTCairo.draw	   sJ    4>>$$e,!%DNNKKT^^,    c                    t        | j                  | j                         z        }t        | j                  | j                         z        }||f| j                  j                         k7  rt        j                  t        j                  ||      }| j                  j                  t        j                  |             | j                  j                  | j                  _        | j                  j                  | j                         | j                  j                  j                  j!                         j#                         }t$        dk(  r!ddlm} t        |j+                  |            }n|}t-        j.                  |||t,        j.                  j0                  j2                        }t$        dk(  r@t4        j6                  dk  r-dt8        j:                  j=                  t?        |            _         |jC                  | j                         t-        jD                  |       }	|	jG                  |jI                                |	jK                  dd|       | jM                  |	       |	jO                          y )NPyQt6r   )sipPySide2)      r   )(intdevice_pixel_ratiowidthheightr   get_canvas_width_heightr   ImageSurfaceFORMAT_ARGB32set_contextContextr   r   r   r   r   
get_targetget_datar   r   r   voidptrr
   QImageFormatFormat_ARGB32_Premultipliedr	   __version_info__ctypesc_longfrom_addressidvaluesetDevicePixelRatioQPainter	eraseRectrect	drawImage_draw_rect_callbackend)
r   eventr"   r#   surfacebufr   ptrqimagepainters
             r   
paintEventzFigureCanvasQTCairo.paintEvent   s   D++djjl:;T,,t{{}<=6?dnnDDFF(()<)<eVLGNN&&u}}W'=>!%DNNKKT^^,nn##..099;W!ckk#&'CCLL;;=
 Y6#:#:W#D89FMM&&r#w/5""4#:#:;..&%**,'!Q'  )r   )__name__
__module____qualname__r   rB   __classcell__)r   s   @r   r   r      s    r   r   c                       e Zd ZeZy)_BackendQTCairoN)rC   rD   rE   r   FigureCanvas r   r   rH   rH   ,   s    &Lr   rH   )r0   backend_cairor   r   
backend_qtr   r   	qt_compatr   r	   r
   r   exportrH   rJ   r   r   <module>rO      sE     3 2 , ,!+^ !H 'j ' 'r   