Bug 180426 In library, do not allowed the dataset drag in to the row and column area of cross tab[1102]
Description: In library do not allowed the dataset drag in to the row and column area of cross tab[1102] Build number: 2.2.0.v20070402-0630 Steps to reproduce: Try to drag a dataset in data explorer into the row area and column area in x-tab. The plus icon show the operation is allowed, But after the insertion, error occurs. Expected result: The dataset is not allowed to insert into the row and column area Error log: java.lang.ClassCastException: org.eclipse.birt.report.item.crosstab.internal.ui.editors.model.VirtualCrosstabCellAdapter at org.eclipse.birt.report.designer.core.commands.CreateCommand.execute(CreateCommand.java:102) at org.eclipse.birt.report.designer.internal.ui.command.WrapperCommandStack.execute(WrapperCommandStack.java:86) at org.eclipse.gef.dnd.AbstractTransferDropTargetListener.handleDrop(AbstractTransferDropTargetListener.java:314) at org.eclipse.gef.dnd.TemplateTransferDropTargetListener.handleDrop(TemplateTransferDropTargetListener.java:101) at org.eclipse.birt.report.designer.internal.ui.palette.ReportTemplateTransferDropTargetListener.handleDrop(ReportTemplateTransferDropTargetListener.java:230) at org.eclipse.gef.dnd.AbstractTransferDropTargetListener.drop(AbstractTransferDropTargetListener.java:171) at org.eclipse.jface.util.DelegatingDropAdapter$3.run(DelegatingDropAdapter.java:211)
UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/palette/ReportTemplateTransferDropTargetListener.java
Object[] dragObjs;
			if ( dragSource instanceof Object[] )
			{
				dragObjs = (Object[]) dragSource;
			}
			else
			{
				dragObjs = new Object[]{
					dragSource
				};
			}
			if ( dragObjs.length == 0 )
			{
				return false;
			}
			for ( int i = 0; i < dragObjs.length; i++ )
			{
				if ( dragObjs[i] instanceof EmbeddedImageHandle
						&& !( ( (EmbeddedImageHandle) dragObjs[i] ).getElementHandle( )
								.getRoot( ) instanceof LibraryHandle ) )
				{
					return true;
				}
				else
				{
					return false;
				}
			}
		}
		return false;