o
    ä¸Gfî  ã                   @   sp   d dl ZddlmZ ddlmZmZ ddlmZmZmZ d dl	Z	G dd„ dej
ejƒZejG d	d
„ d
eƒƒZdS )é    Né   )Úcbooké   )Úbackend_aggÚbackend_gtk4)ÚGLibÚGtkÚ_BackendGTK4c                   @   s   e Zd Zdd„ ZdS )ÚFigureCanvasGTK4Aggc           
      C   s²   | j rt | j ¡ d| _ |  ¡  | j}|  ¡ }t |  ¡ ||j	|j
|j|j¡ t t |  ¡  ¡ ¡¡}|j\}}}tj | ¡ jtj||¡}	|	 ||¡ | |	dd¡ | ¡  dS )Nr   F)Z_idle_draw_idr   Zsource_removeZdrawZdevice_pixel_ratioZget_allocationr   Zrender_backgroundZget_style_contextÚxÚyÚwidthÚheightr   Z._unmultiplied_rgba8888_to_premultiplied_argb32ÚnpZasarrayZget_rendererZbuffer_rgbaÚshapeÚcairoZImageSurfaceZcreate_for_dataZravelÚdataZFORMAT_ARGB32Zset_device_scaleZset_source_surfaceZpaint)
ÚselfZwidgetÚctxZscaleZ
allocationÚbufr   r   Ú_Zimage© r   úClib/python3.10/site-packages/matplotlib/backends/backend_gtk4agg.pyÚon_draw_event   s,   ýÿÿz!FigureCanvasGTK4Agg.on_draw_eventN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r
   
   s    r
   c                   @   s   e Zd ZeZdS )Ú_BackendGTK4AggN)r   r   r   r
   ZFigureCanvasr   r   r   r   r   '   s    r   )Znumpyr   Ú r   r   r   r   r   r	   r   ZFigureCanvasAggZFigureCanvasGTK4r
   Zexportr   r   r   r   r   Ú<module>   s    ÿ