Bug 146517 support extensible new report output formats
User can create new report emitters to support new report output formats. But right now, many part of the BIRT UI (designer, and report viewer), drill thru bookmark syntax, assume the report output format to be a fix list. Need to walk thru end to end how to add new report output format, and how user can create bookmark and drill thru links to a customer report output format.
UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/dialogs/HyperlinkBuilder.java
private static final String LABEL_LINKED_EXPRESSION = Messages.getString( "HyperlinkBuilder.Label.LinkedExpression" ); 
	private static final String LABEL_REPORT = Messages.getString( "HyperlinkBuilder.Label.Report" ); 
	private static final String LABEL_REPORT_PARAMETER = Messages.getString( "HyperlinkBuilder.Label.Parameters" ); 
	private static final String LABEL_FORMAT = Messages.getString( "HyperlinkBuilder.Label.Format" ); 
	private static final String RADIO_NONE = Messages.getString( "HyperlinkBuilder.Radio.None" ); 
	private static final String RADIO_URI = Messages.getString( "HyperlinkBuilder.Radio.Uri" ); 
	private static final String RADIO_BOOKMARK = Messages.getString( "HyperlinkBuilder.Radio.Bookmark" ); 
	private static final String RADIO_DRILLTHROUGH = Messages.getString( "HyperlinkBuilder.Radio.DrillThrough" ); 
	private static final String COLUMN_PARAMETER = Messages.getString( "HyperlinkBuilder.Column.Parameters" ); 
	private static final String COLUMN_VALUE = Messages.getString( "HyperlinkBuilder.Column.Values" ); 
	private static final String COLUMN_REQUIRED = Messages.getString( "HyperlinkBuilder.ParameterRequired" ); 
	private static final Image IMAGE_OPEN_FILE = ReportPlatformUIImages.getImage( IReportGraphicConstants.ICON_OPEN_FILE );
	private static final Image REQUIRED_ICON = ReportPlatformUIImages.getImage( IReportGraphicConstants.ICON_DEFAULT );
	private static final Image ERROR_ICON = ReportPlatformUIImages.getImage( ISharedImages.IMG_OBJS_ERROR_TSK );
	private static final String ERROR_MSG_REPORT_REQUIRED = Messages.getString( "HyperlinkBuilder.ErrorMessage.ReportReqired" ); 
	private static final String ERROR_MSG_INVALID_REPORT = Messages.getString( "HyperlinkBuilder.ErrorMessage.InvalidReport" ); 
	private static final String TOOLTIP_BROWSE_FILE = Messages.getString( "HyperlinkBuilder.BrowseForFile" ); 
	private static final String TOOLTIP_EXPRESSION = Messages.getString( "HyperlinkBuilder.OpenExpression" ); 
	private static final String REQUIED_MARK = "*"; 
	private static final IChoiceSet CHOICESET_TARGET = DesignEngine.getMetaDataDictionary( )
			.getChoiceSet( DesignChoiceConstants.CHOICE_TARGET_NAMES_TYPE );
	private static final IChoiceSet CHOICESET_FORMAT = DesignEngine.getMetaDataDictionary( )
			.getChoiceSet( DesignChoiceConstants.CHOICE_ACTION_FORMAT_TYPE );
	private static final ParamBinding dummyParameterBinding = StructureFactory.createParamBinding( );
	private ActionHandle inputHandle;
	private List dataSetList;
	private Composite displayArea;
	private String selectedType;
	
	private Button noneRadio, uriRadio, bookmarkRadio, drillRadio;