Project

General

Profile

« Previous | Next » 

Revision 329832d3

Added by Patrick Plitzner over 8 years ago

Remove double-click support for opening specimen from the factual data
view

View differences:

eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java
11 11
package eu.etaxonomy.taxeditor.editor.view.descriptive;
12 12

  
13 13
import java.util.HashMap;
14
import java.util.HashSet;
15
import java.util.Iterator;
16 14
import java.util.Map;
17
import java.util.Set;
18
import java.util.UUID;
19 15

  
20 16
import org.eclipse.jface.action.Action;
21 17
import org.eclipse.jface.action.GroupMarker;
......
23 19
import org.eclipse.jface.action.IToolBarManager;
24 20
import org.eclipse.jface.action.MenuManager;
25 21
import org.eclipse.jface.resource.ImageDescriptor;
26
import org.eclipse.jface.viewers.DoubleClickEvent;
27
import org.eclipse.jface.viewers.IDoubleClickListener;
28 22
import org.eclipse.jface.viewers.ISelection;
29 23
import org.eclipse.jface.viewers.IStructuredSelection;
30 24
import org.eclipse.jface.viewers.ITreeContentProvider;
31 25
import org.eclipse.jface.viewers.StructuredSelection;
32 26
import org.eclipse.jface.viewers.TreeNode;
33
import org.eclipse.jface.viewers.TreeSelection;
34 27
import org.eclipse.jface.viewers.TreeViewer;
35 28
import org.eclipse.jface.viewers.Viewer;
36 29
import org.eclipse.swt.SWT;
......
43 36
import org.eclipse.swt.widgets.Tree;
44 37
import org.eclipse.ui.IWorkbenchActionConstants;
45 38
import org.eclipse.ui.IWorkbenchPart;
46
import org.eclipse.ui.PartInitException;
47 39

  
48 40
import eu.etaxonomy.cdm.model.common.CdmBase;
49 41
import eu.etaxonomy.cdm.model.description.DescriptionBase;
50 42
import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
51 43
import eu.etaxonomy.cdm.model.description.IDescribable;
52
import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
53 44
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
54 45
import eu.etaxonomy.cdm.model.taxon.Taxon;
55 46
import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
56 47
import eu.etaxonomy.taxeditor.editor.EditorUtil;
57 48
import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditor;
58 49
import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
59
import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateViewEditorInput;
60 50
import eu.etaxonomy.taxeditor.editor.view.media.MediaViewPart;
61 51
import eu.etaxonomy.taxeditor.model.AbstractUtility;
62 52
import eu.etaxonomy.taxeditor.model.FeatureNodeContainer;
......
65 55
import eu.etaxonomy.taxeditor.model.IPartContentHasFactualData;
66 56
import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData;
67 57
import eu.etaxonomy.taxeditor.model.ImageResources;
68
import eu.etaxonomy.taxeditor.model.MessagingUtils;
69 58
import eu.etaxonomy.taxeditor.store.CdmStore;
70 59
import eu.etaxonomy.taxeditor.view.AbstractCdmEditorViewPart;
71 60
import eu.etaxonomy.taxeditor.view.detail.DetailsViewPart;
72 61
import eu.etaxonomy.taxeditor.view.supplementaldata.SupplementalDataViewPart;
73 62

  
74 63
/**
75
 * <p>DescriptiveViewPart class.</p>
76
 *
77 64
 * @author n.hoffmann
78 65
 * @created Jun 9, 2010
79 66
 * @version 1.0
......
126 113

  
127 114
		createToolbar();
128 115

  
129
		// set initial input
130
//		if(getEditor() != null){
131
//			viewer.setInput(getEditor().getEditorInput());
132
//		}
133

  
134
		viewer.addDoubleClickListener(new IDoubleClickListener() {
135
            @Override
136
            public void doubleClick(DoubleClickEvent event) {
137
                //Open derivate editor when specimen description element is double clicked
138
                TreeSelection selection = (TreeSelection) viewer.getSelection();
139
                Iterator iterator = selection.iterator();
140
                Set<UUID> specimenUuids = new HashSet<UUID>();
141
                while(iterator.hasNext()){
142
                    Object next = iterator.next();
143
                    if(next instanceof IndividualsAssociation){
144
                        SpecimenOrObservationBase<?> specimen = ((IndividualsAssociation)next).getAssociatedSpecimenOrObservation();
145
                        if(specimen!=null){
146
                            specimenUuids.add(specimen.getUuid());
147
                        }
148
                    }
149
                }
150
                try {
151
                    if(!specimenUuids.isEmpty()){
152
                        EditorUtil.open(new DerivateViewEditorInput(specimenUuids));
153
                    }
154
                } catch (PartInitException e) {
155
                    MessagingUtils.error(DescriptiveViewPart.class, "Could not open Derivative Editor", e);
156
                }
157

  
158

  
159
                    //TODO: extend command to accept parameter to open editor
160
//                    String commandId = "eu.etaxonomy.taxeditor.editor.handler.openDerivateView";
161
//                    IHandlerService handlerService = (IHandlerService) AbstractUtility.getService(IHandlerService.class);
162
//                    try {
163
//                        handlerService.executeCommand(commandId, null);
164
//                    } catch (ExecutionException e) {
165
//                        MessagingUtils.error(DerivateSearchCompositeController.class, e);
166
//                    } catch (NotDefinedException e) {
167
//                        MessagingUtils.error(DerivateSearchCompositeController.class, e);
168
//                    } catch (NotEnabledException e) {
169
//                        MessagingUtils.error(DerivateSearchCompositeController.class, e);
170
//                    } catch (NotHandledException e) {
171
//                        MessagingUtils.error(DerivateSearchCompositeController.class, e);
172
//                    }
173

  
174
            }
175
        });
176 116
	}
177 117

  
178
	/* (non-Javadoc)
179
	 * @see eu.etaxonomy.taxeditor.model.AbstractCdmViewPart#getInitialSelection()
180
	 */
181 118
	/** {@inheritDoc} */
182 119
	@Override
183 120
	protected ISelection getInitialSelection() {
......
356 293
		return viewer;
357 294
	}
358 295

  
359
	/**
360
	 * <p>onComplete</p>
361
	 *
362
	 * @return a boolean.
363
	 */
364 296
	@Override
365 297
    public boolean onComplete() {
366 298
		return false;

Also available in: Unified diff