/* This file is part of Green.
*
* Copyright (C) 2005 The Research Foundation of State University of New York
* All Rights Under Copyright Reserved, The Research Foundation of S.U.N.Y.
*
* Green is free software, licensed under the terms of the Eclipse
* Public License, version 1.0. The license is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
package edu.buffalo.cse.green.editor.view;
import static edu.buffalo.cse.green.preferences.PreferenceInitializer.P_FONT;
import org.eclipse.draw2d.Label;
import org.eclipse.draw2d.geometry.Dimension;
import org.eclipse.swt.graphics.Image;
import edu.buffalo.cse.green.PlugIn;
/**
* The parent class of all figures that correspond to <code>MemberPart</code>
* instances.
*
* @author bcmartin
*/
public class MemberFigure extends Label implements IIconHolder {
public MemberFigure() {
PlugIn.getFontPreference(P_FONT, false);
}
/**
* @see edu.buffalo.cse.green.editor.view.IIconHolder#shouldDisposeFont()
*/
public boolean shouldDisposeFont() {
return false;
}
/**
* @see org.eclipse.draw2d.Label#setIcon(org.eclipse.swt.graphics.Image)
*/
public void setIcon(Image icon) {
Image oldIcon = getIcon();
if (oldIcon != null) {
oldIcon.dispose();
}
super.setIcon(icon);
}
/**
* @see edu.buffalo.cse.green.editor.view.IIconHolder#getActualSize()
*/
public Dimension getActualSize() {
return getPreferredSize();
}
}