template = handle.createTemplateElement( null );
template = handle.createTemplateElement( ReportPlugin.getDefault( ) .getCustomName( ReportDesignConstants.TEMPLATE_REPORT_ITEM ) );
	private boolean performCreatePlaceHolder( ReportElementHandle handle )	{		boolean bIsNameExist = false;		TemplateElementHandle template = null;		String name = null;		String desc = null;		do		{			try			{				if ( template == null )				{					template = handle.createTemplateElement( null );				}				if ( name == null )				{					name = template.getName( );					name = ( name == null ) ? "" : name; //$NON-NLS-1$									}				if ( desc == null )				{					desc = template.getDescription( );					desc = ( desc == null ) ? "" : desc; //$NON-NLS-1$				}				TemplateReportItemPropertiesDialog dialog = new TemplateReportItemPropertiesDialog( template.getDefaultElement( )						.getDefn( )						.getDisplayName( ),						name,						desc );				if ( dialog.open( ) == Window.OK )				{					name = (String) dialog.getName( ).trim( );					desc = (String) dialog.getResult( );					bIsNameExist = checkNameExist( template.getElement( ), name );					if ( bIsNameExist == false )					{						template.setDescription( desc );						template.setName( name );					}					else					{						ExceptionHandler.openErrorMessageBox( Messages.getString( "performCreatePlaceHolder.errorMessage.title" ), //$NON-NLS-1$								Messages.getString( "performCreatePlaceHolder.errorMessage.content" ) ); //$NON-NLS-1$					}				}				else				{					return false;				}			}			catch ( SemanticException e )			{				ExceptionHandler.handle( e );				return false;			}		} while ( bIsNameExist == true );		return true;	}