Bug 209599 Enable getSize() in IReportItemPresentation and IReportItemGeneration
Currently, engines IReportItemPresentation and IReportItemGeneration.getSize() are not invoked by any classes. However, in some cases, such as cross tab integration, chart should set the dimension to output an image with specified size. The rule is, if ExtendedItems dimension property is undefined, engine will use getSize() to get the dimension of ExtendedItem. If user sets ExtendedItems dimension property, engine will get the dimension. Additionally, when chart is dropped into cross tab, the dimension property should be unset, so chart dimension can be resized correctly by internal computation.
engine/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/presentation/LocalizedContentVisitor.java
/*******************************************************************************
 * Copyright (c) 2004, 2007 Actuate Corporation.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *  Actuate Corporation  - initial API and implementation
 *******************************************************************************/
package org.eclipse.birt.report.engine.presentation;
import java.io.BufferedInputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.lang.ref.SoftReference;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Locale;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.eclipse.birt.core.exception.BirtException;