builder = ElementBuilderFactory.getInstance( ).createBuilder(
if(! (copiedHandle instanceof DataItemHandle)) { builder = ElementBuilderFactory.getInstance( ).createBuilder(
	public void performDirectEdit( )	{		if ( getModel( ) instanceof TemplateElementHandle )		{			Object builder = null;			TemplateElementHandle handle = getTemplateModel( );			copiedHandle = handle.getDefaultElement( ).copy( ).getHandle(					handle.getModule( ) );			getCommandStack( )					.startTrans(							Messages									.getString( "PlaceHolderEditPart.Trans.TransferToElement" ) );//$NON-NLS-1$			if ( handle.getDefaultElement( ) instanceof LabelHandle )			{				builder = new LabelEditManager( this, TextCellEditor.class,						new LabelCellEditorLocator( (Figure) getFigure( ) ) );				( (LabelEditManager) builder ).setModel( (Object) copiedHandle );				( (LabelEditManager) builder ).show( );			}			else			{				builder = ElementBuilderFactory.getInstance( ).createBuilder(						copiedHandle );				if ( builder == null )				{					performTransfer( );					getCommandStack( ).commit( );					return;				}				if ( ( (Dialog) builder ).open( ) == Dialog.OK )				{					if ( builder instanceof ExpressionBuilder )					{						try						{							if ( copiedHandle instanceof TextDataHandle )							{								( (TextDataHandle) copiedHandle )										.setValueExpr( ( (ExpressionBuilder) builder )												.getResult( ) );							}							if ( copiedHandle instanceof DataItemHandle )							{								( (DataItemHandle) copiedHandle )										.setValueExpr( ( (ExpressionBuilder) builder )												.getResult( ) );							}						}						catch ( SemanticException e )						{							getCommandStack( ).rollback( );							return;						}					}					performTransfer( );					getCommandStack( ).commit( );					return;				}				else				{					getCommandStack( ).rollback( );					return;				}			}		}	}