if ( elementHandle instanceof ExtendedItemHandle ) { if ( !ElementProcessorFactory.createProcessor( elementHandle ) .editElement( elementHandle ) ) { return false; } }
	protected boolean performInsert( Object model, SlotHandle slotHandle,			String type, String position, Map extendData ) throws Exception	{		DesignElementHandle elementHandle = createElement( slotHandle, type );		if ( extendData != null )		{			extendData.put( IRequestConstants.REQUEST_KEY_RESULT, elementHandle );		}		if ( elementHandle == null )		{			return false;		}		if ( position == InsertAction.CURRENT )		{			slotHandle.add( elementHandle );		}		else		{			int pos = DNDUtil.calculateNextPosition( model,					DNDUtil.handleValidateTargetCanContain( model,							elementHandle,							true ) );			if ( pos > 0 && position == InsertAction.ABOVE )			{				pos--;			}			if ( pos == -1 )			{				slotHandle.add( elementHandle );			}			else			{				slotHandle.add( elementHandle, pos );			}		}		return true;	}