code: function ( DragEvent ) { 
  		if ( _Pins.readOnly ) {
  			DragEvent.stopPropagation ( );
  			return;
  		}
  		
  		var SelectedElement = DragEvent.target;
  		while ( SelectedElement && SelectedElement.className && ( -1 === SelectedElement.className.indexOf ('PinControl-Pin' ) ) ) {
  			SelectedElement = SelectedElement.parentNode;
  		}
  		var DroppedPinRange;
  		if ( SelectedElement && SelectedElement.className && ( -1 !== SelectedElement.className.indexOf ('PinControl-Pin' ) ) ) {
  			DroppedPinRange =  SelectedElement.dataset.pinRange;
  			if (  ( DragEvent.clientY - SelectedElement.getBoundingClientRect().top ) < ( SelectedElement.getBoundingClientRect().bottom - DragEvent.clientY ) ) {
  				_Pins.order ( _DraggedPinRange, DroppedPinRange, false );
  			}
  			else {
  				_Pins.order ( _DraggedPinRange, DroppedPinRange, true );
  			}
  		}
  		DragEvent.stopPropagation ( );
  	}
docs: /*
  
  --- _onDrop( DragEvent ) ---
  
  drop event handler
  
  This event reorder the pins collection when the user drop a pin