Project

General

Profile

Download (3.08 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2018 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
package eu.etaxonomy.taxeditor.preference.wizard;
10

    
11
import java.util.ArrayList;
12
import java.util.List;
13

    
14
import org.eclipse.jface.wizard.IWizardPage;
15
import org.eclipse.jface.wizard.Wizard;
16

    
17
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
18
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
19
import eu.etaxonomy.cdm.model.metadata.CdmPreference;
20
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
21
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
22
import eu.etaxonomy.taxeditor.l10n.Messages;
23
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
24
import eu.etaxonomy.taxeditor.store.CdmStore;
25

    
26
/**
27
 * @author k.luther
28
 * @since 05.10.2018
29
 *
30
 */
31
public class AvailableDistributionPerAreaStatusWizard extends Wizard implements IConversationEnabled{
32
    private ConversationHolder conversation;
33
    private final AvailableDistributionPerAreaStatusPage aPage;
34
    List<CdmPreference> prefs;
35

    
36
    public AvailableDistributionPerAreaStatusWizard() {
37
        setWindowTitle(Messages.AvailableDistributionStatusWizard_WIZARD_TITLE);
38
        // TODO if preferenceStore has elements checked load elements in wizard
39
        prefs = PreferencesUtil.getPreferencesFromDB(PreferencePredicate.AvailableDistributionPerAreaStatus);
40
        if (prefs == null) {
41
            prefs = new ArrayList();
42
        }
43
        aPage = new AvailableDistributionPerAreaStatusPage(Messages.AvailableDistributionStatusWizard_PAGE_TITLE, prefs, false);
44

    
45
    }
46

    
47
    @Override
48
    public void addPages() {
49
        addPage(aPage);
50
    }
51

    
52
    @Override
53
    public IWizardPage getPage(String pageName) {
54

    
55
        return aPage;
56
    }
57

    
58
    @Override
59
    public int getPageCount() {
60
       return 1;
61
    }
62

    
63
    @Override
64
    public IWizardPage[] getPages() {
65
        IWizardPage[] pages = new IWizardPage[1];
66
        pages [0] = aPage;
67
        return pages;
68
    }
69

    
70
    @Override
71
    public String getWindowTitle() {
72

    
73
        return Messages.AvailableDistributionStatusWizard_WINDOW_TITLE;
74
    }
75

    
76
    @Override
77
    public boolean performCancel() {
78
        // TODO Auto-generated method stub
79
        return true;
80
    }
81

    
82
    @Override
83
    public boolean performFinish() {
84
        aPage.refreshActualPrefernce();
85
        PreferencesUtil.setPreferencesToDB(aPage.perAreaPreferences);
86
        PreferencesUtil.setPreferenceToDB(aPage.pref);
87
       // PreferencesUtil.setBooleanValue(PreferencesUtil.createOverridePreferenceString(PreferencePredicate.AvailableDistributionStatus.getKey()), aPage.override);
88
        PreferencesUtil.firePreferencesChanged(this.getClass());
89
        return true;
90
    }
91

    
92
    @Override
93
    public void update(CdmDataChangeMap changeEvents) {
94

    
95
    }
96

    
97
    @Override
98
    public ConversationHolder getConversationHolder() {
99
        if (conversation == null) {
100
            conversation = CdmStore.createConversation();
101
        }
102
        return conversation;
103
    }
104

    
105
}
(7-7/16)