Bug 182000 Cross tab layout behavior
In the current approach of cross tab layout view, the arrow is associated with the first data item in the cell. - User cannot delete measure and level data items which have arrow with them. -Wenbin has concerns with the approach, as this will make the UI very restrictive. - Also user may want to delete data item and just show image in a cross tab cell. We had a discussion with Bang, and he has revised the mockups for the layout - The idea is that the arrow is associated with the cross tab cell and not data item. Let us know if there are any issues with supporting this.
xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/internal/ui/editors/model/CrosstabHandleAdapter.java
import org.eclipse.birt.report.item.crosstab.core.de.CrosstabCellHandle;
import org.eclipse.birt.report.item.crosstab.core.de.CrosstabReportItemHandle;
import org.eclipse.birt.report.item.crosstab.core.de.DimensionViewHandle;
import org.eclipse.birt.report.item.crosstab.core.de.LevelViewHandle;
import org.eclipse.birt.report.item.crosstab.core.de.MeasureViewHandle;
import org.eclipse.birt.report.model.api.DesignElementHandle;
import org.eclipse.birt.report.model.api.DimensionHandle;
import org.eclipse.birt.report.model.api.ExtendedItemHandle;
import org.eclipse.birt.report.model.api.activity.SemanticException;
import org.eclipse.birt.report.model.api.elements.DesignChoiceConstants;
import org.eclipse.birt.report.model.api.extension.ExtendedElementException;
import org.eclipse.birt.report.model.api.metadata.DimensionValue;
/**
 * The adapter for the crosstab.
 */
public class CrosstabHandleAdapter extends BaseCrosstabAdapter
{
	private static final String COLUMNAREA_COLUMN = "columnarea_column";
	private static final String COLUMNAREA_ROW = "columnarea_row";
	private static final String ROWAREA_COLUMN = "rowarea_column";
	private static final String ROWAREA_ROW = "rowarea_row";
	public static final String DEFAULT_WIDTH = "100.0"
			+ DesignChoiceConstants.UNITS_PERCENTAGE;
	public static final String LEFT_CONNER = "left_conner";
	private ICrosstabCellAdapterFactory factory = createCrosstabCellAdapterFactory( );
	private int columnAndMeasureColumnNumber = -1;
	private List oldModelList = new ArrayList( );
	/**
	 * Record the infomation of the model structure.
	 */