Mercurial > hg > de.mpg.mpiwg.itgroup.digilib.plugin
view src/de/mpg/mpiwg/itgroup/digilib/manipulator/extensions/ManipulatorExtension.java @ 9:e63a64652f4d
added comments
author | dwinter |
---|---|
date | Mon, 03 Jan 2011 16:53:48 +0100 |
parents | 83c58ea33792 |
children |
line wrap: on
line source
package de.mpg.mpiwg.itgroup.digilib.manipulator.extensions; import java.io.InputStream; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.widgets.Composite; import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImageController; import de.mpg.mpiwg.itgroup.digilib.manipulator.IDigilibImageManipulator; /** * Abstract class where all Digilib Manipulator extensions shoud be derived from * * @author dwinter * */ public abstract class ManipulatorExtension implements IDigilibImageManipulator { private String iconOff; private String iconOn; private String imagePath; private String keyword; /* (non-Javadoc) * @see de.mpg.mpiwg.itgroup.digilib.manipulator.IDigilibImageManipulator#getKeyword() */ public String getKeyword() { return keyword; } /* (non-Javadoc) * @see de.mpg.mpiwg.itgroup.digilib.manipulator.IDigilibImageManipulator#run(de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImageController) */ public void run(DigiImageController dc) {}; /** * Set path to icon. path is path with in classpath * @param ip */ public void setImagePath(String ip) { imagePath=ip; } /** * @return path to the current icon within the class path */ public String getImagePath() { return imagePath; } /** * @param keyword keyword which identifies the extension, used by * @see {@link de.mpg.mpiwg.itgroup.digilib.manipulator.DigilibImageManipulatorProvider}. * */ public void setKeyword(String keyword) { this.keyword = keyword; } /* (non-Javadoc) * @see de.mpg.mpiwg.itgroup.digilib.manipulator.IDigilibImageManipulator#createImage(org.eclipse.swt.widgets.Composite) */ public Image createImage(Composite parent) { InputStream is = getClass().getResourceAsStream(getImagePath()); Image img = new Image(parent.getDisplay(),is); return img; } /** * Toggle selection state of the navigation icon */ public void toggleIcon(){ if(imagePath.equals(iconOff)){ setImagePath(iconOn); } else { setImagePath(iconOff); } } /** * Set icon to off state. */ public void setOffIcon(){ setImagePath(iconOff); } /** * Setze die Pfade zu den Icons innerhalb des class path. * @param iconOff * @param iconOn */ public void setIconPaths(String iconOff, String iconOn) { this.iconOff=iconOff; this.iconOn=iconOn; } }