
    Dh                     P    S SK Jr  S SKJrJr  S SKJr  S SKJr   " S S\\5      r	g)    )MacroElement)
JSCSSMixinleaflet_method)Template)remove_emptyc                   ,  ^  \ rS rSrSr\" S5      rS/rS/rSU 4S jjr	\
S 5       r\
S 5       r\
S	 5       r\
S
 5       r\
S 5       r\
S 5       r\
S 5       r\
S 5       r\
S 5       r\
S 5       r\
S 5       r\
S 5       r\
S 5       r\
S 5       rSrU =r$ )GeoMan   z
An Open Source Leaflet Plugin for editing polygons

Examples
--------
>>> m = folium.Map()
>>> Geoman().add_to(m)

For more info please check
https://github.com/geoman-io/leaflet-geoman/

a]  
        {% macro script(this, kwargs) %}
            /* ensure the name is usable */
            var {{this.get_name()}} = {{this._parent.get_name()}}.pm;
            {%- if this.feature_group  %}
                var drawnItems_{{ this.get_name() }} =
                    {{ this.feature_group.get_name() }};
            {%- else %}
                // FeatureGroup is to store editable layers.
                var drawnItems_{{ this.get_name() }} =
                    new L.featureGroup().addTo(
                        {{ this._parent.get_name() }}
                    );
            {%- endif %}
            /* The global variable below is needed to prevent streamlit-folium
               from barfing :-(
            */
            var drawnItems = drawnItems_{{ this.get_name() }};

            {{this.get_name()}}.addControls(
                {{this.options|tojavascript}}
            )
            drawnItems_{{ this.get_name() }}.eachLayer(function(layer){
                L.PM.reInitLayer(layer);
                {%- for event, handler in this.on.items()   %}
                layer.on(
                    "{{event}}",
                    {{handler}}
                );
                {%- endfor %}
            });

            {{ this._parent.get_name() }}.on("pm:create", function(e) {
                var layer = e.layer,
                    type = e.layerType;

                {%- for event, handler in this.on.items()   %}
                layer.on(
                    "{{event}}",
                    {{handler}}
                );
                {%- endfor %}
            });

        {% endmacro %}
        )leaflet_geoman_jszNhttps://unpkg.com/@geoman-io/leaflet-geoman-free@latest/dist/leaflet-geoman.js)leaflet_geoman_csszOhttps://unpkg.com/@geoman-io/leaflet-geoman-free@latest/dist/leaflet-geoman.cssc                    > [         TU ]  5         SU l        X l        U=(       d    0 U l        [        SSU0UD6U l        g )Nr	   position )super__init___namefeature_grouponr   options)selfr   r   r   kwargs	__class__s        hC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\folium/plugins/geoman.pyr   GeoMan.__init__T   s:    
*(#@X@@    c                     g Nr   )r   r   s     r   set_global_optionsGeoMan.set_global_options[       r   c                    g r   r   )r   shaper   s      r   enable_drawGeoMan.enable_draw_   r    r   c                     g r   r   r   s    r   disable_drawGeoMan.disable_drawc   r    r   c                    g r   r   )r   options_modifierr   s      r   set_path_optionsGeoMan.set_path_optionsg   r    r   c                     g r   r   )r   r   s     r   enable_global_edit_modeGeoMan.enable_global_edit_modek   r    r   c                     g r   r   r&   s    r   disable_global_edit_modeGeoMan.disable_global_edit_modeo   r    r   c                     g r   r   r&   s    r   enable_global_drag_modeGeoMan.enable_global_drag_modes   r    r   c                     g r   r   r&   s    r   disable_global_drag_modeGeoMan.disable_global_drag_modew   r    r   c                     g r   r   r&   s    r   enable_global_removal_mode!GeoMan.enable_global_removal_mode{   r    r   c                     g r   r   r&   s    r   disable_global_removal_mode"GeoMan.disable_global_removal_mode   r    r   c                     g r   r   r&   s    r   enable_global_cut_modeGeoMan.enable_global_cut_mode   r    r   c                     g r   r   r&   s    r   disable_global_cut_modeGeoMan.disable_global_cut_mode   r    r   c                     g r   r   r&   s    r   enable_global_rotation_mode"GeoMan.enable_global_rotation_mode   r    r   c                     g r   r   r&   s    r   disable_global_rotation_mode#GeoMan.disable_global_rotation_mode   r    r   )r   r   r   r   )topleftNN)__name__
__module____qualname____firstlineno____doc__r   	_template
default_jsdefault_cssr   r   r   r#   r'   r+   r.   r1   r4   r7   r:   r=   r@   rC   rF   rI   __static_attributes____classcell__)r   s   @r   r	   r	      sP    -	/Id	
J	
KA                            r   r	   N)
branca.elementr   folium.elementsr   r   folium.templater   folium.utilitiesr   r	   r   r   r   <module>rZ      s!    ' 6 $ )IZ Ir   