
    -e{                    2   d Z ddlmZ ddlZ ej        e          ZddlmZ ddl	m
Z
 ddlmZmZmZmZmZmZ ddlmZ d	d
lmZ dZ G d de          Ze
 G d de                      Ze
 G d de                      Ze
 G d de                      ZdS )z8 Base classes for the various kinds of renderer types.

    )annotationsN   )RenderLevel)abstract)BoolEnumInstanceNullableOverrideString)Model   )CoordinateMapping)DataRendererGuideRendererRendererRendererGroupc                  >     e Zd ZdZd fdZ edd          Z xZS )	r   z A collection of renderers.

    returnNonec                :     t                      j        |i | d S Nsuper__init__selfargskwargs	__class__s      ?lib/python3.11/site-packages/bokeh/models/renderers/renderer.pyr   zRendererGroup.__init__9   %    $)&)))))    Tz6
    Makes all groupped renderers visible or not.
    defaulthelpr   r   )__name__
__module____qualname____doc__r   r   visible__classcell__r    s   @r!   r   r   3   sZ         
* * * * * * d4 ' 	 	 	GGGGGr#   r   c                       e Zd ZdZd fdZ eed          Z edd	          Z	 e
 ee                    Z ed
d          Z ed
d          Z e
 ee                    Z edd	          Z xZS )r   z0An abstract base class for renderer types.

    r   r   c                :     t                      j        |i | d S r   r   r   s      r!   r   zRenderer.__init__K   r"   r#   z>
    Specifies the level in which to paint this renderer.
    )r&   Tz"
    Is the renderer visible.
    r$   r%   z
    A particular (named) x-range to use for computing screen locations when
    rendering glyphs on the plot. If unset, use the default x-range.
    z
    A particular (named) y-range to use for computing screen locations when
    rendering glyphs on the plot. If unset, use the default y-range.
    Fz
    Allows to propagate hover events to the parent renderer, frame or canvas.

    .. note::
        This property is experimental and may change at any point.
    r'   )r(   r)   r*   r+   r   r   r   levelr   r,   r
   r	   r   coordinatesr   x_range_namey_range_namer   grouppropagate_hoverr-   r.   s   @r!   r   r   D   s	        
* * * * * * D $ 	 	 	E d4 ' 	 	 	G (88$56677K6) + 	 	 	L
 6) + 	 	 	L
 HXXm,,--Ed5 0 	 	 	OOOOOr#   r   c                  <     e Zd ZdZd fdZ ed          Z xZS )r   zb An abstract base class for data renderer types (e.g. ``GlyphRenderer``, ``GraphRenderer``).

    r   r   c                :     t                      j        |i | d S r   r   r   s      r!   r   zDataRenderer.__init__r   r"   r#   glyphr%   r'   r(   r)   r*   r+   r   r   r1   r-   r.   s   @r!   r   r   k   sO         
* * * * * * HW%%%EEEEEr#   r   c                  <     e Zd ZdZd fdZ ed          Z xZS )r   zz A base class for all guide renderer types. ``GuideRenderer`` is
    not generally useful to instantiate on its own.

    r   r   c                :     t                      j        |i | d S r   r   r   s      r!   r   zGuideRenderer.__init__   r"   r#   guider:   r'   r;   r.   s   @r!   r   r   w   sO         * * * * * * HW%%%EEEEEr#   r   )r+   
__future__r   logging	getLoggerr(   log
core.enumsr   core.has_propsr   core.propertiesr   r   r	   r
   r   r   modelr   r2   r   __all__r   r   r   r    r#   r!   <module>rI      s    # " " " " " g!! & % % % % % & & & & & &                      + + + + + +	 	 	 	 	E 	 	 	" 
$	 $	 $	 $	 $	u $	 $	 
$	L 
	& 	& 	& 	& 	&8 	& 	& 
	& 

& 
& 
& 
& 
&H 
& 
& 

& 
& 
&r#   