Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.plugin / org.gvsig.app / org.gvsig.app.mainplugin / src / main / java / org / gvsig / app / gui / preferencespage / dal / DALPage.java @ 43983

History | View | Annotate | Download (3.45 KB)

1
package org.gvsig.app.gui.preferencespage.dal;
2

    
3
import javax.swing.ImageIcon;
4
import javax.swing.JPanel;
5
import org.apache.commons.lang3.StringUtils;
6
import org.gvsig.andami.IconThemeHelper;
7
import org.gvsig.andami.preferences.IPreference;
8
import org.gvsig.andami.preferences.StoreException;
9
import org.gvsig.expressionevaluator.ExpressionEvaluatorLocator;
10
import org.gvsig.fmap.dal.DALLocator;
11
import org.gvsig.fmap.dal.DataManager;
12
import org.gvsig.tools.ToolsLocator;
13
import org.gvsig.tools.evaluator.EvaluatorFactory;
14
import org.gvsig.tools.evaluator.sqljep.SQLJEPEvaluatorFactory;
15
import org.gvsig.tools.i18n.I18nManager;
16
import org.gvsig.tools.swing.api.ListElement;
17
import org.gvsig.tools.swing.api.ToolsSwingLocator;
18
import org.gvsig.tools.swing.api.ToolsSwingManager;
19

    
20

    
21
public class DALPage extends DALView implements IPreference {
22

    
23
    //
24
    // The class DALView can extend from AbstractPreferencePage, not JPanel,
25
    // if recreate it from the GUI builder change te class declaration to:
26
    //    public abstract class DALView extends AbstractPreferencePage
27

    
28
    private ImageIcon icon;
29
    private static final long serialVersionUID = -1592454009494400591L;
30
    public static String id = DALPage.class.getName();
31

    
32
    public DALPage() {
33
        setParentID("org.gvsig.coreplugin.preferences.general.GeneralPage");
34
        icon = IconThemeHelper.getImageIcon("dal-preferences");
35
        initComponents();
36
    }
37

    
38
    @Override
39
    public boolean isResizeable() {
40
        return true;
41
    }
42
    
43
    private void initComponents() {
44
        EvaluatorFactory factory;
45
        
46
        factory = new SQLJEPEvaluatorFactory();
47
        this.cboDALEvaluator.addItem(new ListElement<>(factory.getName(), factory));
48
        factory = DALLocator.getDataManager().createEvaluatorFactory();
49
        this.cboDALEvaluator.addItem(new ListElement<>(factory.getName(), factory));
50
        this.cboDALEvaluator.setSelectedIndex(0);
51
        
52
        this.translateAll();
53
    }
54

    
55
    private void translateAll() {
56
        ToolsSwingManager manager = ToolsSwingLocator.getToolsSwingManager();
57

    
58
        manager.translate(lblDALEvaluator);
59
    }
60
    
61
    @Override
62
    public void storeValues() throws StoreException {
63
        ListElement<EvaluatorFactory> n = (ListElement<EvaluatorFactory>) this.cboDALEvaluator.getSelectedItem();
64
        if( n!=null ) {
65
            DataManager dataManager = DALLocator.getDataManager();
66
            dataManager.registerDefaultEvaluator(n.getValue());
67
        }
68
        String s = this.txtAccuracy.getText();
69
        if( !StringUtils.isEmpty(s) ) {
70
            try {
71
                double accuracy = Double.parseDouble(s);
72
                ExpressionEvaluatorLocator.getManager().setAccuracy(accuracy);
73
            } catch(Exception ex) {
74
                throw new StoreException("Incorrect accuracy value.");
75
            }
76
        }
77
    }
78

    
79
    @Override
80
    public void setChangesApplied() {
81
    }
82

    
83
    @Override
84
    public String getID() {
85
        return id;
86
    }
87

    
88
    @Override
89
    public String getTitle() {
90
        I18nManager i18nManager = ToolsLocator.getI18nManager();
91
        return i18nManager.getTranslation("_Data_access_services");
92
    }
93

    
94
    @Override
95
    public JPanel getPanel() {
96
        return this;
97
    }
98

    
99
    @Override
100
    public void initializeValues() {
101
    }
102

    
103
    @Override
104
    public void initializeDefaults() {
105
    }
106

    
107
    @Override
108
    public ImageIcon getIcon() {
109
        return this.icon;
110
    }
111

    
112
    @Override
113
    public boolean isValueChanged() {
114
        return true;
115
    }
116
   
117
}