Bug 116706 Bad Class Cast in IDEReportEditor.java
So I'm trying to open a report with BIRT/Eclipse API using the BIRT 2.0 nightly build code (as of 11/16/2005). the file IDEReportEditor.java method private IFile getFile( IEditorInput input ) { return ( (ReportFileEditorInput) input ).getFile( ); } However, input can be ReportEditorInput which is also an IEditorInput (to support reports found outside projects and workspaces) which doesn't even have a getFile() method on it. This causes a deeply nested exception that causes the report desinger to not be able to show a report that might be physically located outside a workspace.
UI/org.eclipse.birt.report.designer.ui.rcp/src/org/eclipse/birt/report/designer/ui/internal/rcp/actions/OpenFileAction.java
IWorkbenchWindowActionDelegate,
		IWorkbenchAction
{
	private IWorkbenchWindow fWindow;
	private static final String[] filterExtensions = new String[]{
			"*.rptdesign;*.rptlibrary;*.rpttemplate"
	};
	public OpenFileAction( IWorkbenchWindow window )
	{
		init( window );
		setEnabled( true );
		setText( DesignerWorkbenchMessages.Workbench_openFile );
		setToolTipText( DesignerWorkbenchMessages.Action_openReport );
		setId( "org.eclipse.birt.report.designer.rcp.internal.ui.actions.OpenFileAction" ); 
	}
	/*
	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
	 */
	public void dispose( )
	{
		fWindow = null;
	}
	/*
	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
	 */
	public void init( IWorkbenchWindow window )
	{
		if ( window == null )
		{
			throw new IllegalArgumentException( );