code: function(visible) {
          // sharing a map container, opacity has to be set per layer
          var opacity = this.opacity == null ? 1 : this.opacity;
          OpenLayers.Layer.EventPane.prototype.setVisibility.apply(this, arguments);
          this.setOpacity(opacity);
      }
docs: APIMethod: setVisibility
  Set the visibility flag for the layer and hide/show & redraw
  accordingly. Fire event unless otherwise specified
  
  Note that visibility is no longer simply whether or not the layer's
  style.display is set to "block". Now we store a 'visibility' state
  property on the layer class, this allows us to remember whether or
  not we *desire* for a layer to be visible. In the case where the
  map's resolution is out of the layer's range, this desire may be
  subverted.
  
  Parameters:
  visible - {Boolean} Display the layer (if in range)