3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
11 package eu
.etaxonomy
.taxeditor
.bulkeditor
.command
;
13 import java
.util
.ArrayList
;
14 import java
.util
.HashMap
;
15 import java
.util
.List
;
18 import org
.apache
.log4j
.Logger
;
19 import org
.eclipse
.jface
.action
.IContributionItem
;
20 import org
.eclipse
.swt
.SWT
;
21 import org
.eclipse
.ui
.PlatformUI
;
22 import org
.eclipse
.ui
.actions
.CompoundContributionItem
;
23 import org
.eclipse
.ui
.menus
.CommandContributionItem
;
24 import org
.eclipse
.ui
.menus
.CommandContributionItemParameter
;
26 import eu
.etaxonomy
.taxeditor
.bulkeditor
.IBulkEditorConstants
;
29 * <p>OpenBulkEditorContributionItem class.</p>
35 public class OpenBulkEditorContributionItem
extends CompoundContributionItem
{
36 private static final Logger logger
= Logger
37 .getLogger(OpenBulkEditorContributionItem
.class);
40 * <p>Constructor for OpenBulkEditorContributionItem.</p>
42 public OpenBulkEditorContributionItem() {
46 * <p>Constructor for OpenBulkEditorContributionItem.</p>
48 * @param id a {@link java.lang.String} object.
50 public OpenBulkEditorContributionItem(String id
) {
55 * @see org.eclipse.ui.actions.CompoundContributionItem#getContributionItems()
59 protected IContributionItem
[] getContributionItems() {
61 List
<IContributionItem
> contributionItems
= new ArrayList
<IContributionItem
>();
63 Map inputTypeValues
= (new BulkEditorInputTypeValues()).getParameterValues();
64 for (Object key
: inputTypeValues
.keySet()) {
65 contributionItems
.add(createContributionItem(
66 (String
) key
, (String
) inputTypeValues
.get(key
)));
69 return (IContributionItem
[])contributionItems
.
70 toArray(new IContributionItem
[contributionItems
.size()]);
78 private IContributionItem
createContributionItem(String label
, String inputType
) {
79 CommandContributionItemParameter parameter
=
80 new CommandContributionItemParameter(
81 PlatformUI
.getWorkbench().getActiveWorkbenchWindow(),
82 null, IBulkEditorConstants
.DYNAMIC_OPEN_MENU_ID
, SWT
.NONE
);
84 parameter
.label
= label
;
86 Map parameters
= new HashMap();
87 parameters
.put(IBulkEditorConstants
.INPUT_TYPE_PARAMETER_ID
, inputType
);
88 parameter
.parameters
= parameters
;
90 return new CommandContributionItem(parameter
);