Statistics
| Revision:

gvsig-scripting / org.gvsig.scripting / trunk / org.gvsig.scripting / org.gvsig.scripting.swing / org.gvsig.scripting.swing.impl / src / main / java / org / gvsig / scripting / swing / impl / composer / editors / FolderEditor.java @ 1066

History | View | Annotate | Download (2.45 KB)

1 702 jjdelcerro
package org.gvsig.scripting.swing.impl.composer.editors;
2 165 jobacas
3 630 jjdelcerro
import java.beans.PropertyChangeEvent;
4
import java.beans.PropertyChangeListener;
5 1066 jjdelcerro
import java.io.File;
6
import java.io.IOException;
7 639 jjdelcerro
import javax.swing.JComponent;
8 1066 jjdelcerro
import org.apache.commons.io.FileUtils;
9
import org.apache.commons.lang3.StringUtils;
10
import org.gvsig.scripting.ScriptingFolder;
11 165 jobacas
12 702 jjdelcerro
import org.gvsig.scripting.ScriptingUnit;
13 1066 jjdelcerro
import org.gvsig.scripting.swing.api.JEditor;
14 702 jjdelcerro
import org.gvsig.scripting.swing.impl.composer.ChangeListenerSupport;
15 1066 jjdelcerro
import org.gvsig.scripting.swing.impl.composer.JPropertiesFolder;
16
import org.gvsig.tools.ToolsLocator;
17
import org.gvsig.tools.i18n.I18nManager;
18 165 jobacas
19 1066 jjdelcerro
public class FolderEditor extends JPropertiesFolder implements JEditor {
20 165 jobacas
21 1066 jjdelcerro
    protected ScriptingFolder folder;
22 702 jjdelcerro
    protected final ChangeListenerSupport changeListeners;
23 165 jobacas
24 1066 jjdelcerro
    public FolderEditor(ScriptingFolder folder) {
25
        super(folder);
26
        this.folder = folder;
27 630 jjdelcerro
        this.changeListeners = new ChangeListenerSupport();
28 702 jjdelcerro
        initComponents();
29 1066 jjdelcerro
        this.set(folder);
30 630 jjdelcerro
    }
31 410 jjdelcerro
32 630 jjdelcerro
    @Override
33 1066 jjdelcerro
    public ScriptingFolder getUnit() {
34
        return this.folder;
35 630 jjdelcerro
    }
36
37 702 jjdelcerro
    private void initComponents() {
38 1066 jjdelcerro
        I18nManager i18n = ToolsLocator.getI18nManager();
39 702 jjdelcerro
40 1066 jjdelcerro
        this.addChangeListener(new PropertyChangeListener() {
41 630 jjdelcerro
            @Override
42
            public void propertyChange(PropertyChangeEvent evt) {
43 977 jjdelcerro
                fireChangeEvent(evt);
44 630 jjdelcerro
            }
45
        });
46 639 jjdelcerro
47 630 jjdelcerro
    }
48
49
    @Override
50
    public boolean isModified() {
51 1066 jjdelcerro
        return this.isChanged();
52 630 jjdelcerro
    }
53 639 jjdelcerro
54 630 jjdelcerro
    @Override
55
    public void save() {
56 1066 jjdelcerro
        this.fectch(folder);
57
        this.folder.save();
58 630 jjdelcerro
    }
59
60
    @Override
61 702 jjdelcerro
    public void addChangeListener(PropertyChangeListener listener) {
62
        this.changeListeners.addChangeListener(listener);
63 678 jjdelcerro
    }
64 977 jjdelcerro
65
    public void fireChangeEvent(String name, Object oldValue) {
66
        this.changeListeners.fireChange(name, oldValue);
67
    }
68
69
    public void fireChangeEvent(PropertyChangeEvent evt) {
70
        this.changeListeners.fireChange(evt);
71
    }
72 630 jjdelcerro
73 702 jjdelcerro
    @Override
74 1066 jjdelcerro
    public void set(ScriptingFolder unit) {
75
        this.folder = unit;
76
        super.set(this.folder);
77 630 jjdelcerro
    }
78 1066 jjdelcerro
79 639 jjdelcerro
    @Override
80 1066 jjdelcerro
    public void set(ScriptingUnit unit) {
81
        this.set((ScriptingFolder)unit);
82 702 jjdelcerro
    }
83
84
    @Override
85 1066 jjdelcerro
    public void fetch(ScriptingUnit unit) {
86
        ScriptingFolder theFolder = (ScriptingFolder) unit;
87
        super.fectch(theFolder);
88 702 jjdelcerro
    }
89
90
    @Override
91 639 jjdelcerro
    public JComponent asJComponent() {
92
        return this;
93
    }
94 647 jjdelcerro
95 410 jjdelcerro
}