/* ******************************************************************************
* Copyright (c) 2006-2012 XMind Ltd. and others.
*
* This file is a part of XMind 3. XMind releases 3 and
* above are dual-licensed under the Eclipse Public License (EPL),
* which is available at http://www.eclipse.org/legal/epl-v10.html
* and the GNU Lesser General Public License (LGPL),
* which is available at http://www.gnu.org/licenses/lgpl.html
* See http://www.xmind.net/license.html for details.
*
* Contributors:
* XMind Ltd. - initial API and implementation
*******************************************************************************/
package org.xmind.ui.mindmap;
/**
*
* @author Frank Shaka
* @deprecated Use {@link MindMapImageExporter} instead
*/
public class MindMapImageExtractor {
// private static final int DEFAULT_MARGIN = 15;
//
// private Display display;
//
// private Composite parent;
//
// private ISheet sheet;
//
// private ITopic centralTopic;
//
// private Properties properties;
//
// private Image image;
//
// private Integer margin = null;
//
// private Point origin;
//
// private int resizeStrategy = ResizeConstants.RESIZE_NONE;
//
// private int widthHint = -1;
//
// private int heightHint = -1;
//
// public MindMapImageExtractor(Composite parent, ISheet sheet,
// ITopic centralTopic) {
// this(parent.getDisplay(), parent, sheet, centralTopic);
// }
//
// public MindMapImageExtractor(Display display, ISheet sheet,
// ITopic centralTopic) {
// this(display, null, sheet, centralTopic);
// }
//
// private MindMapImageExtractor(Display display, Composite parent,
// ISheet sheet, ITopic centralTopic) {
// this.display = display;
// this.parent = parent;
// this.sheet = sheet;
// this.centralTopic = centralTopic;
// setProperty(IMindMapViewer.VIEWER_CENTERED, Boolean.TRUE);
// setProperty(IMindMapViewer.VIEWER_CORNERED, Boolean.TRUE);
// setProperty(IMindMapViewer.VIEWER_MARGIN,
// Integer.valueOf(DEFAULT_MARGIN));
// }
//
// public void setProperty(String key, Object value) {
// if (properties == null)
// properties = new Properties();
// properties.set(key, value);
// }
//
// public Object getProperty(String key) {
// return properties == null ? null : properties.get(key);
// }
//
// /**
// * Get the extracted image. If no image exists, a new one will be created.
// *
// * @return the extracted image, or <code>null</code> if error occurred
// */
// public Image getImage() {
// if (image == null) {
//// display.syncExec(new Runnable() {
//// public void run() {
// image = createImage();
//// }
//// });
// }
// return image;
// }
//
// /**
// * Get the extracted image. If no image exists, a new one will be created.
// *
// * @return the extracted image
// * @throws SWTError
// * if error occurs
// */
// public Image getImage2() throws SWTError {
// if (image == null) {
//// display.syncExec(new Runnable() {
//// public void run() {
// image = createImage2();
//// }
//// });
// }
// return image;
// }
//
// public void setMargin(Integer margin) {
// this.margin = margin;
// }
//
// public void setResizeStrategy(int resizeStrategy, int widthHint,
// int heightHint) {
// this.resizeStrategy = resizeStrategy;
// this.widthHint = widthHint;
// this.heightHint = heightHint;
// }
//
// public int getResizeStrategy() {
// return resizeStrategy;
// }
//
// public int getWidthHint() {
// return widthHint;
// }
//
// public int getHeightHint() {
// return heightHint;
// }
//
// private Image createImage() {
// try {
// return createImage2();
// } catch (Throwable e) {
// Logger.log(e);
// return null;
// }
// }
//
// private Image createImage2() {
// final MindMapExportContentProvider provider;
// if (parent != null) {
// provider = new MindMapExportContentProvider(parent, sheet,
// centralTopic);
// } else {
// provider = new MindMapExportContentProvider(display, sheet,
// centralTopic);
// }
// provider.setProperties(properties);
// provider.setMargin(margin);
// provider.setResizeStrategy(resizeStrategy, widthHint, heightHint);
// Image image;
// try {
// image = FigureImageDescriptor.createFromFigure(
// provider.getContents(), provider).createImage(false,
// display);
// origin = provider.getOrigin();
// } finally {
// display.asyncExec(new Runnable() {
// public void run() {
// provider.dispose();
// }
// });
// }
// return image;
// }
//
// public Point getOrigin() {
// return origin;
// }
//
// public void dispose() {
// if (image != null) {
// image.dispose();
// image = null;
// }
// }
}