o
    Ó·6iM  ã                   @   s^   d Z ddlmZ ddlmZmZ dZG dd„ dejƒZG dd„ dej	ƒZ
G d	d
„ d
ejƒZdS )z&
Model fields for working with trees.
é    )Úmodels)ÚTreeNodeChoiceFieldÚTreeNodeMultipleChoiceField)ÚTreeForeignKeyÚTreeManyToManyFieldÚTreeOneToOneFieldc                       s    e Zd ZdZ‡ fdd„Z‡  ZS )r   zå
    Extends the foreign key, but uses mptt's ``TreeNodeChoiceField`` as
    the default form field.

    This is useful if you are creating models that need automatically
    generated ModelForms to use the correct widgets.
    c                    s   |  dt¡ tƒ jdi |¤ŽS )z4
        Use MPTT's ``TreeNodeChoiceField``
        Ú
form_classN© ©Ú
setdefaultr   ÚsuperÚ	formfield©ÚselfÚkwargs©Ú	__class__r	   úP/var/www/hoanhtaovolam_webdjango/env/lib/python3.10/site-packages/mptt/fields.pyr      s   zTreeForeignKey.formfield)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__classcell__r	   r	   r   r   r      s    r   c                       ó   e Zd Z‡ fdd„Z‡  ZS )r   c                    ó   |  dt¡ tƒ jdi |¤ŽS ©Nr   r	   r
   r   r   r	   r   r      ó   zTreeOneToOneField.formfield©r   r   r   r   r   r	   r	   r   r   r      ó    r   c                       r   )r   c                    r   r   )r   r   r   r   r   r   r	   r   r   %   r   zTreeManyToManyField.formfieldr   r	   r	   r   r   r   $   r   r   N)r   Ú	django.dbr   Ú
mptt.formsr   r   Ú__all__Ú
ForeignKeyr   ÚOneToOneFieldr   ÚManyToManyFieldr   r	   r	   r	   r   Ú<module>   s    