Project

General

Profile

« Previous | Next » 

Revision a66ea40a

Added by Katja Luther over 4 years ago

ref #8737: add possibility to delete taxonnode wizard for only delete taxonnode

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/configurator/deleteConfigurator/DeleteTaxonConfiguratorComposite.java
8 8
*/
9 9
package eu.etaxonomy.taxeditor.ui.dialog.configurator.deleteConfigurator;
10 10

  
11
import org.eclipse.core.databinding.DataBindingContext;
11 12
import org.eclipse.core.databinding.beans.PojoProperties;
12 13
import org.eclipse.core.databinding.observable.value.IObservableValue;
13 14
import org.eclipse.jface.databinding.swt.WidgetProperties;
14 15
import org.eclipse.swt.SWT;
16
import org.eclipse.swt.layout.GridData;
15 17
import org.eclipse.swt.widgets.Button;
16 18
import org.eclipse.swt.widgets.Composite;
19
import org.eclipse.swt.widgets.Event;
20
import org.eclipse.swt.widgets.Listener;
17 21

  
18
import eu.etaxonomy.cdm.api.service.config.TaxonBaseDeletionConfigurator;
22
import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
23
import eu.etaxonomy.cdm.api.service.config.TaxonNodeDeletionConfigurator;
19 24

  
20 25
/**
21 26
 * @author k.luther
......
24 29
 */
25 30
public class DeleteTaxonConfiguratorComposite extends DeleteTaxonBaseConfiguratorComposite {
26 31

  
27
    private final Button btnDeleteSynonyms;
28
    private final Button btnDeleteMisappliedNamesAndInvalidDesignations;
29
    private final Button btnTaxonRelationships;
30
    private final Button btnConceptRelationships;
32
    private Button btnDeleteSynonyms;
33
    private Button btnDeleteMisappliedNamesAndInvalidDesignations;
34
    private Button btnTaxonRelationships;
35
    private Button btnConceptRelationships;
36

  
37
    private Button btnDeleteTaxon;
38

  
31 39
    /**
32 40
     * @param configurator
33 41
     * @param parent
34 42
     * @param style
35 43
     */
36
    public DeleteTaxonConfiguratorComposite(TaxonBaseDeletionConfigurator configurator, Composite parent, int style) {
44
    public DeleteTaxonConfiguratorComposite(TaxonDeletionConfigurator configurator, Composite parent, int style) {
37 45
        super(configurator, parent, style);
46
    }
47

  
48
    @Override
49
    protected void createContent(){
50
        btnDeleteTaxon = new Button(this, SWT.CHECK);
51
        btnDeleteTaxon.setText("Delete taxon if possible");
52
//        btnDeleteTaxon.setSelection(true);
53
        btnDeleteTaxon.addListener(SWT.Selection, new Listener() {
54
            @Override
55
         public void handleEvent(Event e) {
56
                Button b = (Button) e.widget;
57
                GridData data = (GridData)  btnDeleteTaxon.getLayoutData();
58
                data.exclude = b.getSelection();
59

  
60
                btnDeleteSynonyms.setEnabled(data.exclude);
61
                btnDeleteMisappliedNamesAndInvalidDesignations.setEnabled(data.exclude);
62
                btnTaxonRelationships.setEnabled(data.exclude);
63
                btnConceptRelationships.setEnabled(data.exclude);
64
                btnDeleteTaxonName.setEnabled(data.exclude);
65
                btnIgnoreHasBasionym.setEnabled(data.exclude);
66
                btnIgnoreHasReplacedSynonym.setEnabled(data.exclude);
67
                btnIgnoreIsBasionym.setEnabled(data.exclude);
68
                btnIgnoreIsReplacedSynonymFor.setEnabled(data.exclude);
69
                btnRemoveAllNameRelationships.setEnabled(data.exclude);
70
                btnRemoveAllTypeDesignations.setEnabled(data.exclude);
71

  
72
            }
73
        });
74

  
38 75
        btnDeleteSynonyms = new Button(this, SWT.CHECK);
76
        GridData gd_btnDeleteSynonyms = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
77
        gd_btnDeleteSynonyms.horizontalIndent = 10;
78
        btnDeleteSynonyms.setLayoutData(gd_btnDeleteSynonyms);
39 79
        btnDeleteSynonyms.setText("Delete synonyms if possible");
40 80
        btnDeleteSynonyms.setSelection(true);
41 81

  
42 82
        btnDeleteMisappliedNamesAndInvalidDesignations = new Button(this, SWT.CHECK);
83
        GridData gd_btnDeleteMisappliedNamesAndInvalidDesignations = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
84
        gd_btnDeleteMisappliedNamesAndInvalidDesignations.horizontalIndent = 10;
85
        btnDeleteMisappliedNamesAndInvalidDesignations.setLayoutData(gd_btnDeleteMisappliedNamesAndInvalidDesignations);
43 86
        btnDeleteMisappliedNamesAndInvalidDesignations.setText("Delete misapplied names and invalid designations if possible");
44 87
        btnDeleteMisappliedNamesAndInvalidDesignations.setSelection(true);
45 88

  
46 89

  
47 90
        btnTaxonRelationships = new Button(this, SWT.CHECK);
91
        GridData gd_btnTaxonRelationships = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
92
        gd_btnTaxonRelationships.horizontalIndent = 10;
93
        btnTaxonRelationships.setLayoutData(gd_btnTaxonRelationships);
48 94
        btnTaxonRelationships.setText("Delete taxon relations if possible");
49 95
        btnTaxonRelationships.setSelection(true);
50 96

  
51 97
        btnConceptRelationships = new Button(this, SWT.CHECK);
98
        GridData gd_btnConceptRelationships = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
99
        gd_btnConceptRelationships.horizontalIndent = 10;
100
        btnConceptRelationships.setLayoutData(gd_btnConceptRelationships);
52 101
        btnConceptRelationships.setText("Delete concept relations if possible");
53 102
        btnConceptRelationships.setSelection(true);
103
        super.createContent();
54 104
        initDataBindingsTaxon();
55 105
    }
56 106

  
57 107
    protected void initDataBindingsTaxon() {
108
        if (m_bindingContext == null){
109
            m_bindingContext = new DataBindingContext();
110
        }
111
        TaxonNodeDeletionConfigurator nodeConfig = ((TaxonDeletionConfigurator)configurator).getTaxonNodeConfig();
112
        if (nodeConfig == null){
113
            nodeConfig = new TaxonNodeDeletionConfigurator();
114
            ((TaxonDeletionConfigurator)configurator).setTaxonNodeConfig(nodeConfig);
115
        }
116
        IObservableValue observeSelectionBtnDeleteTaxonObserveWidget = WidgetProperties.selection().observe(btnDeleteTaxon);
117
        IObservableValue deleteTaxonConfiguratorObserveValue = PojoProperties.value("deleteTaxon").observe(nodeConfig);
118
        m_bindingContext.bindValue(observeSelectionBtnDeleteTaxonObserveWidget, deleteTaxonConfiguratorObserveValue, null, null);
58 119

  
59 120
        IObservableValue observeSelectionBtnDeleteSynonymsObserveWidget = WidgetProperties.selection().observe(btnDeleteSynonyms);
60 121
        IObservableValue deleteSynonymsConfiguratorObserveValue = PojoProperties.value("deleteSynonymsIfPossible").observe(configurator);

Also available in: Unified diff