Project

General

Profile

« Previous | Next » 

Revision e331654f

Added by Patrick Plitzner almost 10 years ago

  • only allow dragging in DerivateView when view is not dirty
    • added missing methods to transient services
    • exposed dto package in cdmlib project
    • some renaming

View differences:

eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateDragListener.java
11 11

  
12 12
import org.eclipse.jface.util.LocalSelectionTransfer;
13 13
import org.eclipse.jface.viewers.ISelection;
14
import org.eclipse.jface.viewers.Viewer;
15 14
import org.eclipse.swt.dnd.DragSourceAdapter;
16 15
import org.eclipse.swt.dnd.DragSourceEvent;
17 16

  
18 17
import eu.etaxonomy.taxeditor.editor.EditorUtil;
18
import eu.etaxonomy.taxeditor.model.AbstractUtility;
19 19

  
20 20
/**
21 21
 * @author pplitzner
......
24 24
 */
25 25
public class DerivateDragListener extends DragSourceAdapter{
26 26

  
27
    private final Viewer viewer;
27
    private final DerivateView derivateView;
28 28

  
29 29
    /**
30
     * @param viewer
30
     * @param derivateView
31 31
     */
32
    public DerivateDragListener(Viewer viewer) {
33
        this.viewer = viewer;
32
    public DerivateDragListener(DerivateView derivateView) {
33
        this.derivateView = derivateView;
34 34
    }
35 35

  
36 36
    /* (non-Javadoc)
......
39 39
    @Override
40 40
    public void dragSetData(DragSourceEvent event) {
41 41
        if (LocalSelectionTransfer.getTransfer().isSupportedType(event.dataType)) {
42
            LocalSelectionTransfer.getTransfer().setSelection(viewer.getSelection());
42
            LocalSelectionTransfer.getTransfer().setSelection(derivateView.getViewer().getSelection());
43 43
        }
44 44
    }
45 45

  
......
48 48
     */
49 49
    @Override
50 50
    public void dragStart(DragSourceEvent event) {
51
        ISelection selection = viewer.getSelection();
51
        if(derivateView.isDirty()){
52
            event.doit = false;
53
            AbstractUtility.warningDialog("View has unsaved changes", this, "You need to save before performing this action");
54
            return;
55
        }
56
        ISelection selection = derivateView.getViewer().getSelection();
52 57
        if(EditorUtil.getTreeNodeOfSelection(selection)!=null){
53 58
            event.doit = true;
54 59
        }

Also available in: Unified diff