         else
           this.edition = L.GeoJSON.geometryToLayer(this.options.edit)
       else
-        this.edition = new L.GeoJSON()
+        this.edition = L.geoJson(this.options.edit, {
+          onEachFeature: (feature, layer) =>
+            $(this.element).trigger('mapeditor:feature_add', feature)
+
+            if feature.properties?
+              this.popupize(feature, layer)
+        })
 
       this.edition.setStyle this.options.editStyle
       this.edition.addTo this.map

        false

      widget.element.trigger "mapeditor:loaded"

    updateFeatureProperties: (feature_id, attributeName, attributeValue) ->
      layer = this.findLayer(feature_id)

      popup += "</div>"
      popup += "<div class='popup-content'>"
      popup += "<input type='text' value='#{feature.properties.name}'/>"

      if this.options.multiLevels?
        popup += "<select>"
        for level in [parseInt(this.options.multiLevels.minLevel)..parseInt(this.options.multiLevels.maxLevel)]
          selected = ""
          if level == parseInt(feature.properties.level)
            selected = "selected"

          popup += "<option value='#{level}' #{selected}>#{level}</option>"

        popup += "</select>"

      popup += "<input class='updateAttributesInPopup' type='button' value='ok'/>"
      popup += "</div>"

