
    OgJ	                       d dl mZ d dlmZmZ d dlmZmZmZ d dl	m
Z
 ddlmZmZ ddlmZ erd dlmZ d d	lmZ d
gZ ed ed       ed       ed      d      Z edd edd       i      Ze G d d
e             Zy)    )annotations)TYPE_CHECKINGOptional)DXFAttrDXFAttributesDefSubclass)const   )SubclassProcessor	DXFEntity)register_entity)DXFNamespace)AbstractTagWriter	TableHeadN      iJ  )namehandleownerAcDbSymbolTablecountF   )defaultc                  L     e Zd ZdZdZ eee      Z	 d	 	 	 d fdZ	ddZ
 xZS )r   zThe table head structure is only maintained for export and not for
    internal usage, ezdxf ignores an inconsistent table head at runtime.

    TABLEc                x    t         |   |      }|r'|j                  j                  d      |_        d|_        |S )Nr   r   )superload_dxf_attribs
base_classget_first_valuer   r   )self	processordxf	__class__s      Y/var/www/html/public_html/myphp/venv/lib/python3.12/site-packages/ezdxf/entities/table.pyr   zTableHead.load_dxf_attribs+   s;     g&y1 ++;;A>CHCI
    c                   | j                   j                  sJ d       |j                  t        j                  | j
                         |j                  d| j                   j                         |j                  t        j                  k\  r|j                  d| j                   j                         | j                  r| j                  j                  |       |j                  t        j                  | j                   j                         |j                  t        j                  t        j                         |j                  d| j                   j                          | j                   j                  dk(  r!|j                  t        j                  d       y y |j                  d| j                   j                          y )Nz?TABLE needs a handle, maybe loaded from DXF R12 without handle!r   r   r   DIMSTYLEAcDbDimStyleTable)r#   r   
write_tag2r	   STRUCTURE_MARKERDXFTYPEr   
dxfversionDXF2000has_extension_dictextension_dict
export_dxf
OWNER_CODEr   SUBCLASS_MARKERacdb_symbol_tabler   )r!   	tagwriters     r%   r1   zTableHead.export_dxf5   s0   xx 	
M	
 	U33T\\BQ.5==0  DHHOO4&&##..y9  !1!1488>>B  !6!68I8N8NO  TXX^^4xx}}
*$$U%:%:<OP +   TXX^^4r&   )N)r"   zOptional[SubclassProcessor]returnr   )r5   r   r6   None)__name__
__module____qualname____doc__r,   r   r   r4   
DXFATTRIBSr   r1   __classcell__)r$   s   @r%   r   r   !   s;    
 Gz+<=J 8<4	5r&   )
__future__r   typingr   r   ezdxf.lldxf.attributesr   r   r   ezdxf.lldxfr	   	dxfentityr   r   factoryr   ezdxf.entitiesr   ezdxf.lldxf.tagwriterr   __all__r   r4   r    r&   r%   <module>rH      s    # * F F  3 $+7-
!*
  Q'  %5	 %5 %5r&   