package org.openjump.core.ui.plugin.tools; import com.vividsolutions.jump.I18N; import com.vividsolutions.jump.workbench.plugin.AbstractPlugIn; import com.vividsolutions.jump.workbench.plugin.PlugInContext; import com.vividsolutions.jump.workbench.ui.OptionsDialog; /** * Plugin for the AdvancedMeasureTool. * * @author Matthias Scholz <ms@jammerhund.de> * @version 0.1 */ public class AdvancedMeasurePlugin extends AbstractPlugIn { AdvancedMeasureTool advancedMeasureTool; @Override public void initialize(PlugInContext context) throws Exception { super.initialize(context); advancedMeasureTool = new AdvancedMeasureTool(context.getWorkbenchContext()); context.getWorkbenchContext().getWorkbench().getFrame().getToolBar().addCursorTool(advancedMeasureTool, advancedMeasureTool.getToolbarButton()); OptionsDialog.instance(context.getWorkbenchContext().getWorkbench()).addTab(I18N.get("org.openjump.core.ui.plugin.tools.AdvancedMeasurePlugin.OptionPanelTitle"), new AdvancedMeasureOptionsPanel(context.getWorkbenchContext())); } @Override public boolean execute(PlugInContext context) throws Exception { try { context.getLayerViewPanel().setCurrentCursorTool(advancedMeasureTool); return true; } catch (Exception e) { context.getWorkbenchFrame().warnUser("BIG PROBLEM :-("); context.getWorkbenchFrame().getOutputFrame().createNewDocument(); context.getWorkbenchFrame().getOutputFrame().addText("AdvancedMeasurePlugin Exception:" + e.toString()); return false; } } }