o
    tBh                     @   sn   d dl mZ ddlmZmZ ddlmZmZ G dd dejZG dd dej	ej
ZejG d	d
 d
eZdS )    )nullcontext   )backend_cairobackend_gtk4)Gtk_BackendGTK4c                   @   s   e Zd Zdd ZdS )RendererGTK4Cairoc                 C   s   t || j_d S N)r   _to_contextgcctx)selfr    r   |/var/www/html/riverr-enterprise-integrations-main/venv/lib/python3.10/site-packages/matplotlib/backends/backend_gtk4cairo.pyset_context   s   zRendererGTK4Cairo.set_contextN)__name__
__module____qualname__r   r   r   r   r   r      s    r   c                       s(   e Zd ZdZ fddZdd Z  ZS )FigureCanvasGTK4CairoTc                    s   t  | t| jj| _d S r	   )super__init__r   figuredpi	_renderer)r   r   	__class__r   r   r      s   zFigureCanvasGTK4Cairo.__init__c              	   C   s   | j r| j  nt J | j| | j}|d| d|  |  }t	| 
 ||j|j|j|j | j|j| |j|  | jj| j_| j| j W d    d S 1 sXw   Y  d S )Nr   )toolbar_wait_cursor_for_draw_cmr   r   r   device_pixel_ratioscaleget_allocationr   render_backgroundget_style_contextxywidthheightset_width_heightr   r   draw)r   widgetr   r   
allocationr   r   r   on_draw_event   s$   "z#FigureCanvasGTK4Cairo.on_draw_event)r   r   r   _context_is_scaledr   r+   __classcell__r   r   r   r   r      s    r   c                   @   s   e Zd ZeZdS )_BackendGTK4CairoN)r   r   r   r   FigureCanvasr   r   r   r   r.   &   s    r.   N)
contextlibr    r   r   r   r   RendererCairor   FigureCanvasGTK4FigureCanvasCairor   exportr.   r   r   r   r   <module>   s    