2 * Copyright (C) 2015 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
9 package eu
.etaxonomy
.taxeditor
.molecular
.handler
;
12 import org
.eclipse
.core
.commands
.AbstractHandler
;
13 import org
.eclipse
.core
.commands
.ExecutionEvent
;
14 import org
.eclipse
.core
.commands
.ExecutionException
;
16 import eu
.etaxonomy
.taxeditor
.model
.AbstractUtility
;
17 import eu
.etaxonomy
.taxeditor
.molecular
.editor
.e4
.AlignmentEditorE4
;
23 * Abstract implementation for all handlers triggering actions in an active instance of
24 * {@link AlignmentEditorE4}.
29 public abstract class AbstractAlignmentEditorHandler
extends AbstractHandler
{
30 public static AlignmentEditorE4
getActiveAlignmentEditor() {
31 Object activeEditor
= AbstractUtility
.getActiveEditor();
32 if (activeEditor
instanceof AlignmentEditorE4
) {
33 return (AlignmentEditorE4
)activeEditor
;
42 public Object
execute(ExecutionEvent event
) throws ExecutionException
{
43 AlignmentEditorE4 editor
= getActiveAlignmentEditor();
45 doExecute(event
, editor
);
51 protected abstract void doExecute(ExecutionEvent event
, AlignmentEditorE4 editor
) throws ExecutionException
;