 
       if layer
         layer.feature.properties[attributeName] = attributeValue
+
+    setFeatureStyle: (feature) ->
+      levelStyle = {}
+
+      if this.options.multiLevels?
+        levelStyle = {fillColor: this.colorize(feature.properties.level)}
+
+      $.extend(true, {}, this.options.editStyle, levelStyle)
 
     findLayer: (feature_id) ->
       containerLayer = undefined

          catch
            this._setDefaultView()
      else if view is 'show'
        this.map.fitBounds this.reference.getLayers()[0].getBounds()
      else if view is 'edit'
         try
          this.map.fitBounds this.edition.getLayers()[0].getBounds()

        legend = this.controls.multiLevelLegend.getContainer()
        legend.innerHTML += this.buildLegend(this.edition)

      if @options.overlaySelector?
        selector = @layerSelector || new L.Control.Layers()
        selector.addOverlay(@ghost, @options.overlaySelector.ghostLayer) if @ghost? and @ghost.getLayers().length > 0
        selector.addOverlay(@reference, @options.overlaySelector.referenceLayer) if @reference? and @reference.getLayers().length > 0
        selector.addOverlay(@edition, @options.overlaySelector.editionLayer) if @edition? and @edition.getLayers().length > 0

    _saveUpdates: ->
      if this.edition?
        this.element.val JSON.stringify(this.edition.toGeoJSON())
      true

    update: ->
      this._saveUpdates()
      this._refreshControls()
      this.element.trigger "mapchange"

  $(document).ready ->
