15111e7117517e738617b0fb5090fea729e984e0
[taxeditor.git] / eclipseprojects / eu.etaxonomy.taxeditor / src / eu / etaxonomy / taxeditor / actions / name / RemoveConceptAction.java
1 /**
2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
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.
8 */
9
10 package eu.etaxonomy.taxeditor.actions.name;
11
12 import org.apache.log4j.Logger;
13 import org.eclipse.core.commands.operations.IUndoableOperation;
14 import org.eclipse.jface.action.Action;
15 import org.eclipse.jface.resource.ImageDescriptor;
16
17 import eu.etaxonomy.cdm.model.taxon.Taxon;
18 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
19 import eu.etaxonomy.taxeditor.ITaxEditorConstants;
20 import eu.etaxonomy.taxeditor.TaxEditorPlugin;
21 import eu.etaxonomy.taxeditor.controller.EditorController;
22 import eu.etaxonomy.taxeditor.controller.GlobalController;
23 import eu.etaxonomy.taxeditor.operations.name.RemoveConceptRelationOperation;
24
25 /**
26 * @author n.hoffmann
27 * @created 03.02.2009
28 * @version 1.0
29 */
30 public class RemoveConceptAction extends Action {
31 private static final Logger logger = Logger
32 .getLogger(RemoveConceptAction.class);
33
34 private static String text = "Remove concept relation from taxon"; //$NON-NLS-1$
35 private static ImageDescriptor image = TaxEditorPlugin.getDefault()
36 .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);
37
38 private TaxonRelationshipType relationshipType;
39
40 private Taxon relatedTaxon;
41
42 private Taxon taxon;
43
44 private RemoveConceptAction(){
45 super(text, image);
46 }
47
48 public RemoveConceptAction(Taxon taxon, Taxon relatedTaxon,
49 TaxonRelationshipType relationshipType) {
50 this();
51 this.taxon = taxon;
52 this.relatedTaxon = relatedTaxon;
53 this.relationshipType = relationshipType;
54 }
55
56 public void run() {
57 IUndoableOperation operation = new RemoveConceptRelationOperation
58 (this.getText(), EditorController.getUndoContext(taxon), taxon, relatedTaxon, relationshipType);
59
60 GlobalController.executeOperation(operation);
61 }
62
63
64 }