
    Og%                    z    d dl mZ d dlmZmZ d dlmZmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZmZ  G d d	e      Zy
)    )annotations)IterableIterator)
DXFGraphic	DXFEntity)const)AbstractTagWriter)SupportsVirtualEntities)default_copyCopyNotSupportedc                  V     e Zd ZdZd	 fdZd Zd
dZddZddZe	fddZ
ddZ xZS )DXFGraphicProxyzFDO NOT USE THIS WRAPPER AS REAL DXF ENTITY OUTSIDE THE DRAWING ADD-ON!c                \    t         |           || _        | j                  |      | _        y N)super__init__entity_setup_dxf_namespacedxf)selfr   	__class__s     b/var/www/html/public_html/myphp/venv/lib/python3.12/site-packages/ezdxf/addons/drawing/gfxproxy.pyr   zDXFGraphicProxy.__init__   s'    ,,V4    c                    |j                   j                  |       }| j                  j                         D ])  \  }}|j	                  |      r|j                  ||       + |S r   )r   copyDEFAULT_ATTRIBSitemshasattrset)r   r   r   kvs        r   r   z$DXFGraphicProxy._setup_dxf_namespace   sU    jjood#((..0 	DAq;;q>1	 
r   c                6    | j                   j                         S r   )r   dxftyper   s    r   r#   zDXFGraphicProxy.dxftype   s    {{""$$r   c                    t        | j                  t              r| j                  j                         S t	        | j                  d      r| j                  j                         S t        g       S )z0Implements the SupportsVirtualEntities protocol.virtual_entities)
isinstancer   r
   __virtual_entities__r   r&   iterr$   s    r   r(   z$DXFGraphicProxy.__virtual_entities__    sO    dkk#:;;;33554;; 23;;//11Bxr   c                "    | j                         S r   )r(   r$   s    r   r&   z DXFGraphicProxy.virtual_entities(   s    ((**r   c                    t        d      )Nz+Copying of DXFGraphicProxy() not supported.)r   )r   copy_strategys     r   r   zDXFGraphicProxy.copy+   s    !LNNr   c                     y)NF )r   	tagwriters     r   preprocess_exportz!DXFGraphicProxy.preprocess_export.   s    r   )r   r   )returnstr)r1   zIterator[DXFGraphic])r1   zIterable[DXFGraphic])r1   r   )r/   r	   r1   bool)__name__
__module____qualname____doc__r   r   r#   r(   r&   r   r   r0   __classcell__)r   s   @r   r   r      s/    P5
%+ ". Or   r   N)
__future__r   typingr   r   ezdxf.entitiesr   r   ezdxf.lldxfr   ezdxf.lldxf.tagwriterr	   ezdxf.protocolsr
   ezdxf.entities.copyr   r   r   r.   r   r   <module>r@      s(    # % 0  3 3 >$j $r   