
    'j.                        d dl 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 ddlmZmZ d d	lmZmZ erd d
lmZ d dlmZ d dlmZ ej         G d de
                      ZdS )    )annotations)TYPE_CHECKINGOptional)const   )factory)
DXFGraphic)SubclassProcessor)default_copyCopyNotSupported)BoundingBoxVec3)DXFNamespace)AbstractTagWriter)Tagsc                  j     e Zd ZdZej        Zd fdZefddZ		 dd fd
Z
d fdZddZddZ xZS )	OLE2Frame	OLE2FRAMEreturnNonec                V    t                                                       d | _        d S N)super__init__acdb_ole2frame)self	__class__s    Q/DATA/AppData/hermes/venv/lib/python3.11/site-packages/ezdxf/entities/oleframe.pyr   zOLE2Frame.__init__   s'    .2    c                L    t          d|                                  d          )NzCopying of z not supported.)r   dxftype)r   copy_strategys     r   copyzOLE2Frame.copy   s$    LT\\^^LLLMMMr   N	processorOptional[SubclassProcessor]r   c                    t                                          |          }|r|                    d          | _        |S )N   )r   load_dxf_attribssubclass_by_indexr   )r   r$   dxfr   s      r   r(   zOLE2Frame.load_dxf_attribs   s@     gg&&y11 	A"+"="=a"@"@D
r   	tagwriterr   c                    t                                          |           | j        |                    | j                   dS dS )z7Export entity specific data as DXF tags. (internal API)N)r   export_entityr   
write_tags)r   r+   r   s     r   r-   zOLE2Frame.export_entity&   sK     	i(((*  !455555 +*r   r   c                    | j         e| j                             dd           }| j                             dd           }|-|+t          t          |          t          |          g          S t                      S )N
      )r   get_first_valuer   r   )r   v10v11s      r   bboxzOLE2Frame.bbox.   sm    *%55b$??C%55b$??C3?"DIItCyy#9:::}}r   bytesc                \    | j         $d                    d | j         D                       S dS )Nr   c              3  ,   K   | ]\  }}|d k    |V  dS )i6  N ).0codevalues      r   	<genexpr>z(OLE2Frame.binary_data.<locals>.<genexpr>8   s+      XXkdEDTWKKEKKKKXXr   )r   join)r   s    r   binary_datazOLE2Frame.binary_data6   s4    *88XXT5HXXXXXXsr   )r   r   )r   r   r   )r$   r%   r   r   )r+   r   r   r   )r   r   )r   r6   )__name__
__module____qualname__DXFTYPEr   DXF2000MIN_DXF_VERSION_FOR_EXPORTr   r   r#   r(   r-   r5   r?   __classcell__)r   s   @r   r   r      s        G!&3 3 3 3 3 3 ". N N N N N 8<      6 6 6 6 6 6          r   r   N)
__future__r   typingr   r   ezdxf.lldxfr    r   dxfgfxr	   	dxfentityr
   r#   r   r   
ezdxf.mathr   r   ezdxf.entitiesr   ezdxf.lldxf.tagwriterr   ezdxf.lldxf.tagsr   register_entityr   r9   r   r   <module>rR      s+   # " " " " " * * * * * * * *                   ( ( ( ( ( ( 0 0 0 0 0 0 0 0 ( ( ( ( ( ( ( ( &++++++777777%%%%%% 	& & & & &
 & & & & &r   